Got inspired to install GuixSD, let's see how it goes :guixsd:

#gnu #fsf #guix

@selea installing right now, it's taking ages (it's apparently building stuff on the fly... Gentoo is that you?)

That is called binary transparency: a package can be built either on a build farm, on someone else's conputer or on your machine. Since packages are bit-for-bit reproducible, you have no way to distinguish any of these situations. So guix will try to download binary substitutes first, but if it fails, it will start building your packages, transparently.


@roptat @selea this is wonderful, like "lightyears ahead" wonderful if you ask me.

Do you know how are dependencies handled? Do they come as a single blob as flatpak/snap or are they handled in a sane way?


Dependencies are managed similarly to debian for instance: dependencies are separate packages and dependants can refer to the same package. Each package is installed in a directory in /gnu/store and packages reference these directories directly. This allows you to install software that refer to the same glibc directory (package), or to a different version/flavor of it, with no ambiguity or incompatibility.

@Antanicus @selea
Guix also tries really hard to unbundle dependencies when that's possible, so packages refer to system packages instead of internal copies. It also tries to bootstrap every package from source, which is demonstrated by the bootstrap of icedtea: there is no binary version of a java compiler needed to get to a recent openjdk, which I think only Guix has done. Same with rust for instance.

Sign in to participate in the conversation

The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!