After several months of development, GNU Guix team released version 1.3 in which improvements are offered to the user experience using manifest handling to install and / or remove multiple packages, an option to check the latest software components, additional enhancements to the development tool and numerous performance optimizations.
For those of you unfamiliar with GNU Guix, I can tell you that this is a transactional package manager and an advanced distribution of the GNU system.
Guix can be used on top of any OS that uses the Hurd or Linux kernel, or it can be used as a standalone OS distribution for i686, x86_64, ARMv7, AArch64, and POWER9 machines. In addition to the standard package management features, Guix supports transactional updates and rollbacks, unprivileged package management, per-user profiles, and garbage collection.
Main novelties of Guix 1.3
This new version of GNU Guix 1.3 has as its main novelty the initial support of POWER9 which is now available as a technology preview. The team notes that there are not many POWER9 binary substitutes available yet, due to the limited capacity of POWER9.
Also in this new version we will be able to find a lot of new packages, Since about 3.100 were updated and of the best known we can find in Guix 1.3 (in the distribution) GNU libc 2.31, GCC 10.3, Xfce 4.16.0, Linux-libre 5.11.15, LibreOffice 18.104.22.168 and Emacs 27.2, to name a few.
On the other hand, many of the package changes are mentioned one of them stands out with the new OCaml bootstrap, the OCaml package is now completely built from source via camlboot. The package updates also include Cuirass 1.0, as the service catalog also saw new additions such as wireguard, syncthing, ipfs, a simplified and more convenient service for Cuirass and more.
On the part of the administrator of packages it stands out that the ability to use declarative implementation mode is provided, in which instead of a series of commands »
guix install" Y "
guix remove«, A command« g
uix package --manifest=manifest.scm»With the definition in the manifest of all the applications to be installed. By doing this, you are installing exactly the packages listed.
This facilitates the transition from the classical "imperative" model, where the guix install as needed, toward the more formal declarative model.
For developers, guix import comes with a new recursive Go importer, which can create package definitions or templates for complete sets of Go packages.
The command guix import crate, for Rust packages, now respects "semantic version control" when used recursively. The guix update command now includes "sourceforge" updaters, for code hosted on SourceForge, and generic-html which, as the name suggests, is a generic update that works by scanning the home pages of the package. According to the team, this greatly improves the coverage of the guix update.
Another advantage is that the qcow2 format is now compressed, which eliminates the need to manually compress the images by post-processing them with xz or another compressor, in addition to entering the search path GUIX_EXTENSIONS_PATH Guix should allow Guix extensions, like Plaster WorkflowLanguage, have your Guile modules automatically discovered, thus simplifying your implementations.
Download Guix 1.3
For those interested in testing the package manager or distribution, you can check the details installation and / or find the images for download, In the following link.
Finally, it is mentioned that the new version of the distribution comes with ISO-9660 installation images, a virtual machine image and with tarballs to install the package manager in any GNU / Linux distribution, either from source code or binaries.
It is also mentioned that existing Guix users can upgrade by running: