GNU Guix: GNU Guix 1.5.0 released
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 Simplified 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.
Source: Planet GNU