We are pleased to announce the release of GNUÂ Guix version 1.5.0!
The release comes with ISO-9660 installation images, virtual machine
images, and with tarballs to install the package manager on top of your
GNU/Linux distro, either from source or from binaries—check out the
download page. Guix users can
update by running guix pull.
It’s been 3 years since the previous
release.
That’s a lot of time, reflecting both the fact that, as a rolling
release, users continuously get new features and update by running
guix pull; but it also shows a lack of processes, something that we
had to address before another release could be made.
During that time, Guix received about 71,338 commits by 744 people, which include many new features; the project also got a new decision-making process, migrated to Codeberg and started a fundraising campaign. That’s just the surface among so many great changes, so keep reading!
Illustration by Luis Felipe, published under CC-BY-SAÂ 4.0.
This post provides highlights for all the hard work that went into this release. There’s a lot to talk about so make yourself comfortable, relax, and enjoy.
Guix ecosystem
To start with, the Guix ecosystem has seen many exciting developments to the way we collaborate and make decisions!
Firstly, the project adopted with unanimity a new consensus-based decision making process. This process fills a need to be able to gather consensus on significant changes to the project, something that was getting very complicated with the growing number of contributors to the project.
Now, the process provides a clear framework for any contributor to propose and implement important changes. These can be submitted as Guix Consensus Documents (GCDs), each GCD goes through the multiple steps of consensus decision making before being accepted or withdrawn.
Secondly, using this process, the project was able to collectively migrate to Codeberg. This means that all repositories, and bug trackers are now at the same place on Codeberg and that contributions are now made with pull requests instead of patch series.
Thirdly, a new release process was adopted to bring an annual release cycle to Guix. This release is the first to follow this process, with hopefully many others to come!
Lastly, a “Planet� website for Guix is now available at https://planet.guix.gnu.org. It aggregates blogs from various Guix hackers and contributors to bring you the latest and greatest in Guix news.
Stronger distribution
Three years is a long time for free and open source software! Enough time for 12,525 new packages and 29,932 package updates to the Guix repository. Here are the best highlights:
To start, KDE Plasma 6.5 is now available with the new
plasma-desktop-service-type!

Continuing on desktops; GNOME has been updated from version 42 to 46
and now uses Wayland by default. The gnome-desktop-service-type was
made more modular to better customize the default set of GNOME
applications.
Guix System is now using version 1.0 of the GNUÂ Shepherd, which now supports timed services, kexec reboot and has new services for system logs and log rotation which are now used by Guix System instead of Rottlog and syslogd.
There are around 40 new system services to choose from, including Forgejo Runner, RabbitMQ, iwd, and dhcpcd to name a few.
setuid-programs has been replaced with privileged-programs in
operating-system definitions to support giving specific Linux
capabilities. Additonally, the nss-certs package is now included in
%base-packages.
More than 12,500 packages were added, keeping Guix in the top-ten biggest distributions according to Repology! Among the many noteworthy updates, we now have GCC 15.2.0, Emacs 30.2, Icecat and Librewolf 140, LLVM 21.1.8 and Linux-libre 6.17.12.
Team activity
In the last release, we introduced structured cooperation using
teams.
There are now 50 teams distributing the many aspects of the
distribution. We have per-language teams like python, rust and
zig ensuring updates for packages and build systems as well as
thematic teams like electronics, hpc and bioinformatics working
on specific application domains. Here are what some of these teams
have been up to:
The HPC team published their annual activity report 2024, showing the exciting developments of Guix in High-Performance Computing.
The electronics team is maintaining free software based Electronic Design Automation (EDA) packages to cover the needs of professionals and hobbyists in the domain with tools such as KiCad, LibrePCB, Xschem, Qucs-S and Ringdove EDA, as well as Verilog, SystemVerilog and VHDL compilers and a toolchain for programmable designs on GateMate FPGAs. They are also collaborating with the Free Silicon Foundation (F-Si) to push free software in the EDA space!
The science team has been able to add a myriad of Astronomy related packages, accompanied by the Python team bringing the move to the new pyproject.toml-based build system as well as the NumPy 2 update.
Finally, the rust team created a new packaging model to efficiently package rust crates, and was able to migrate the Rust collection, 150+ packages with 3,600+ libraries, in just under two weeks; making the Rust packaging process much easier for everyone.
Full source bootstraps
Full-source bootstraps of the Zig and Mono compilers are now available, and the existing bootstrap of Guix has been reduced once again!
Full-source bootstraps are Guix’s solution to the trusting trust problem: compilers are usually compiled by themselves, so how can you build a compiler without trusting an existing binary? Read these posts to learn more about this fascinating problem:
- The Full-Source Bootstrap: Building from source all the way down
- Zig reproduced without binaries
- Restoring Zig bootstrap chain in Guix (in Traditional Chinese)
- Adding a fully bootstrapped Mono
Improved CLI
The guix graph command has new backends for GraphML and
CycloneDXÂ JSON, meaning Guix can now be used to generate complete
Software Bill of Material
(SBOM) down
to the first bootstrap binary!
guix shell containers have been improved with a --nesting
option to use Guix within the container and a --emulate-fhs option
that can be used to run software expecting a Filesystem Hierarchy
Standard (FHS) compliant filesystem.
The guix pack command also received new backends to create RPM
packages and AppImages that can be used to publish your Guix packages
to non-Guix
users.
Lastly, a new guix locate
command
is now available to find which packages provide a given file.
Security improvements
It is now possible to run the Guix daemon without root privileges, reducing the impact of privilege escalation vulnerabilities.
This “rootless� mode is now the default when installing Guix 1.5.0 on
distros other than Guix System; on Guix System, it currently has to be
explicitly enabled by setting (privileged? #f) in
guix-configuration. Existing
installation on distros other than Guix System can also be migrated
to
“rootless�.
This is possible thanks to the user namespaces. It might be possible that on your system, the user namespaces are not allowed for guix due to the lack of an AppArmor profile. Because of that, we’ve also included AppArmor profiles that are installed by default on foreign systems.
Finally, the Guix daemon received security fixes for CVE-2024-27297, CVE-2024-52867, CVE-2025-46415, CVE-2025-46416 and CVE-2025-59378.
Widened architecture support
Release tarballs are now available for the RISC-V 64-bit architecture (riscv64-linux).
The x86_64 architecture saw some development as well, with the experimental support of the GNUÂ Hurd kernel (x86_64-gnu), aiming to be another significant step in the adoption and development of the Hurd. Overall support for the Hurd was greatly improved, it is now an option in the installer, childhurds can be automatically created with a system service and it can even run on a Thinkpad X60!
Fundraising campaign
Surprisingly, making a completely free software distribution does not come for free! The Guix project needs your help to pay the infrastructure costs of build farms, web servers and QA tools that are essential to making this release happen.
If you appreciate all of the work that is done to bring you this one-of-a-kind distro: please donate to the Guix Foundation!
Acknowledgments
For the release, thanks to all the release team members: Rutherther, Rodion Goritskov, Efraim Flashner, and Noé Lopez. Thanks as well to the release helpers: Andreas Enge, Mothacehe, Dariqq and Ludovic Courtès.
For creating the release process, thanks to Steve George.
For their Guix contributions, thanks to the 744 wonderful people who
contributed and whose names we don’t list here (it would be a bit
long).
They can be listed with git log --oneline v1.4.0..v1.5.0 --format="%an" | sort -u. Every commit counts and is always
appreciated �
About GNU Guix
GNU Guix is a transactional package manager and an advanced distribution of the GNU system that respects user freedom. Guix can be used on top of any system running the Hurd or the Linux kernel, or it can be used as a standalone operating system distribution for i686, x86_64, ARMv7, AArch64, RISC-V and POWER9 machines.
In addition to standard package management features, Guix supports transactional upgrades and roll-backs, unprivileged package management, per-user profiles, and garbage collection. When used as a standalone GNU/Linux distribution, Guix offers a declarative, stateless approach to operating system configuration management. Guix is highly customizable and hackable through Guile programming interfaces and extensions to the Scheme language.
23 January, 2026 02:00PM by Noé Lopez



