Brussels / 2 & 3 February 2019


GNU Guix’s take on a new approach to software distribution

As GNU Guix reaches 1.0, this talk will reflect on what it has to offer to users and how it compares to other approaches—from CONDA and pip to Flatpak and Docker. Guix is not only a transactional package manager and declarative GNU/Linux distribution: it’s also an environment manager, a container provisioning tool, and more. We will describe these tools and our journey to 1.0, emphasizing key properties that set Guix apart: reproducibility, transparency, and hackability.

In a time where distros are sometimes viewed as “that thing you run inside a container”, where alternative approaches to software distribution are taking steam—from CONDA and pip to Flatpak and Docker—is there still room for the traditional approach to GNU/Linux distros?

As GNU Guix reaches 1.0 after six years of development, this talk will reflect on what Guix has to offer to users and how that compares to other approaches. You can view Guix as a package manager, but with transactional upgrades and roll-backs. Or you can view it as a standalone distribution like Debian but with a declarative interface à la Puppet. Guix is also an environment manager à la VirtualEnv but not limited to a single language, a container provisioning tool like—think ‘Dockerfile’ but with reproducibility and transparency built in, and a continuous integration/deployment tool—why write a lengthy ‘gitlab-ci.yml’ when you can reuse your package definition?

In this talk I will give an overview of all these tools Guix provides and discuss our journey from a “package manager” kind of project to a complete software deployment toolbox. I will present key properties that set Guix apart: transparency through reproducible builds and provenance tracking, and practical user freedom through a broad range of discoverable APIs that we hope invite users to hack. We believe Guix has shown that there’s still room for innovation in the distro space, and still value in distro-style software distribution.


Ludovic Courtès