Blog — Scheme API
Write package definitions in a breeze
24 novembre 2023
More than 28,000 packages are available in Guix today, not counting third-party channels. That’s a lot—the 5th largest GNU/Linux distro ! But it’s nothing if the one…
Parameterized Packages for GNU Guix
9 juin 2023
Hello Guix! I'm Sarthak and I'll be working on implementing Parameterized Packages for GNU Guix as a Google Summer of Code intern under the guidance of Pjotr Prins…
Dissecting Guix, Part 3: G-Expressions
19 avril 2023
Welcome back to Dissecting Guix ! Last time, we discussed monads , the functional programming idiom used by Guix to thread a store connection through a series of store-related…
Building Toolchains with Guix
15 mars 2023
In order to deploy embedded software using Guix we first need to teach Guix how to cross-compile it. Since Guix builds everything from source, this means we must teach…
Dissecting Guix, Part 2: The Store Monad
20 février 2023
Hello again! In the last post , we briefly mentioned the with-store and run-with-store macros. Today, we'll be looking at those in further…
Dissecting Guix, Part 1: Derivations
4 janvier 2023
To a new user, Guix's functional architecture can seem quite alien, and possibly offputting. With a combination of extensive #guix -querying, determined manual-reading, and plenty of source-perusing, they…
Keeping one’s home tidy
21 mars 2022
How much effort to recreate your work environment when you switch to a new machine? What would it take to roll back to your previous environment once you’ve noticed…
The Big Change
15 décembre 2021
Making cross-cutting changes over a large code base is difficult, but it's occasionally necessary if we are to keep the code base tidy and malleable. With almost 800K source…
Taming the ‘stat’ storm with a loader cache
2 août 2021
It was one of these days where some of us on IRC were rehashing that old problem—that application startup in Guix causes a “ stat storm”—and lamenting…
Reproducible data processing pipelines
11 juin 2021
Last week, we at Guix-HPC published videos of a workshop on reproducible software environments we organized on-line. The videos are well worth watching—especially if you’re into reproducible…
Getting bytes to disk more quickly
26 mars 2021
Let’s face it: functional package managers like Guix provide unequaled support for reproducibility and transactional upgrades, but the price to pay is that users often spend a fair amount of…
Securing updates
1 juillet 2020
Software deployment tools like Guix are in a key position when it comes to securing the “software supply chain”—taking source code fresh from repositories and providing users with ready-to-use binaries.…
GNU Shepherd user services
17 mai 2020
One of the things which sets Guix apart from other GNU/Linux distributions is that it uses GNU Shepherd instead of the now ubiquitous systemd. A side effect of…
Grafts, continued
6 mai 2020
Guix includes a mechanism called grafts that allows us to provide users with security updates in a timely fashion, even for core packages deep down in the…
Guile 3 & Guix
24 janvier 2020
Version 3.0 of GNU Guile, an implementation of the Scheme programming language , was released just last week . This is a major milestone for Guile, which gets compiler improvements and…
Spreading the news
12 novembre 2019
Like most free software projects, Guix has no shortage of communication channels: there’s this blog , the NEWS file for release notes, a bunch of …
Managing Servers with GNU Guix: A Tutorial
4 novembre 2019
The outcome of this year's GSoC is a Guile-based programming interface named guix deploy for automatically creating, upgrading, and changing the configurations of machines running the Guix System.…
Towards Guix for DevOps
12 juillet 2019
Hey, there! I'm Jakob, a Google Summer of Code intern and new contributor to Guix. Since May, I've been working on a DevOps automation tool for the Guix System, which…
Substitutes are now available as lzip
17 juin 2019
For a long time, our build farm at ci.guix.gnu.org has been delivering substitutes (pre-built binaries) compressed with gzip. Gzip was never the best choice in terms of compression…
Connecting reproducible deployment to a long-term source code archive
29 mars 2019
GNU Guix can be used as a “package manager” to install and upgrade software packages as is familiar to GNU/Linux users, or as an environment manager, but it can also provision…
A packaging tutorial for Guix
10 octobre 2018
Introduction GNU Guix stands out as the hackable package manager, mostly because it uses GNU Guile , a powerful high-level programming language, one of the…
Multi-dimensional transactions and rollbacks, oh my!
24 juillet 2018
One of the highlights of version 0.15.0 was the overhaul of guix pull , the command that updates Guix and its package collection. In Debian terms,…
Customize GuixSD: Use Stock SSH Agent Everywhere!
26 mai 2018
I frequently use SSH. Since I don't like typing my password all the time, I use an SSH agent. Originally I used the GNOME Keyring as my SSH…
Guix at the 2014 GNU Hackers Meeting
11 octobre 2014
The Guix talk of this summer's GNU Hackers Meeting is now available (get the slides ). DOWNLOAD VIDEO (WebM, 60 minutes) …
Guix at the European Lisp Symposium
21 mai 2013
A paper presenting the design of Guix's Scheme API and packaging language has been accepted for the 2013 European Lisp Symposium (ELS) . ELS…