linux update GuixSD 0.16.0

GNU Guix and GuixSD 0.16.0 released

Linux Updates

LINUX UPDATE - We are pleased to announce the new release of GNU Guix and GuixSD 0.16.0 This release is (hopefully!) the last one before 1.0—we have been closing most key items for 1.0 over the last few months.


The release comes with GuixSD ISO-9660 installation images, a virtual machine image of GuixSD, and with tarballs to install the package manager on top of your GNU/Linux distro, either from source or from binaries. Guix users can update by running guix pull.

It’s been 5 months since the previous release, during which 95 people contributed code and packages. Here are the highlights.

  • The default substitute URL has been changed to This is backed by a more powerful build farm with terabytes of storage kindly donated by the Bioinformatics platform of the Berlin Institute of Medical Systems Biology (BIMSB) at the Max Delbrück Center (MDC). The build farm front-end runs Cuirass, our continuous integration tool that was partly developed during two GSoC internships.
  • guix pull now lists new and upgraded packages, and it has a --profile option that allows you to keep several Guix revisions in parallel. Related to that, the new guix describe command displays information about the Guix revision you are using.
  • guix pull now supports channels. In a nutshell, you can specify in ~/.config/guix/channels.scm the channels from which guix pullwill fetch Guix as well as, optionally, third-party package repositories. Again guix describe displays all the channels in use and guix describe -f channels produces a “pinned channel” specification that can be use as the channels.scm file of guix pull.
  • Using the new inferior mechanism, you can now interact with a different revision of Guix and even compose packages coming from different revisions of Guix!
  • The output of the command-line tools has been noticeably improved: important events are colorized, guix package and guix systemno longer display build logs, and guix build colorized build logs (in a way that is similar to what Emacs-Guix does.)
  • There are new package transformation options--with-branch and --with-commit allow you to obtain a package variant straight from its Git repository.
  • Guix had reproducible builds and now it has “reproducible source code downloads”: when a package refers to a Git repository that has disappeared (which is unfortunately not uncommon!), the checkout can be fetched from Software Heritage. That makes Guix one of the first distros to be backed by a long-term archive. See this issue for more info.
  • Our Rust packages are now fully bootstrapped from source, starting from mrustc, a Rust compiler written in C++. This is a victory on this instance of “yogurt software”, and Guix is probably the first distro to achieve this. More on that in a future post!
  • On GuixSD, guix system reconfigure will now always load replacements of system services. That way, when you deem appropriate, you can run herd restart SERVICE to start the upgraded service.
  • As usual, 985 packages were added and 1,945 were upgraded, notably the GNU C Library now at version 2.28 (which, incidentally, allowed us to get rid of our Hurd-specific glibc variant, at last!). Today Guix provides 8,715 packages.
  • The manual is now partially translated into German. The French translation is now 90% complete. You can help translate the manual into your native language by joining the Translation Project.

Pffew, quite a long list already! The release announcement lists additional noteworthy changes and bug fixes you may be interested in.


About GNU Guix

GNU Guix is a transactional package manager for the GNU system. The Guix System Distribution or GuixSD is an advanced distribution of the GNU system that relies on GNU Guix and respects the user's freedom.

In addition to standard package management features, Guix supports transactional upgrades and roll-backs, unprivileged package management, per-user profiles, and garbage collection. Guix uses low-level mechanisms from the Nix package manager, except that packages are defined as native Guile modules, using extensions to the Scheme language. GuixSD offers a declarative approach to operating system configuration management, and is highly customizable and hackable.

GuixSD can be used on an i686, x86_64, ARMv7, and AArch64 machines. It is also possible to use Guix on top of an already installed GNU/Linux system, including on mips64el and aarch64.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.