This section lists requirements when building Guix from source. The build procedure for Guix is the same as for other GNU software, and is not covered here. Please see the files README and INSTALL in the Guix source tree for additional details.
GNU Guix depends on the following packages:
The following dependencies are optional:
httpsURLs for substitutes, which is highly recommended (see Substitutes). It also allows you to access HTTPS URLs with the
guix downloadcommand (see Invoking guix download), the
guix import pypicommand, and the
guix import cpancommand. See how to install the GnuTLS bindings for Guile in GnuTLS-Guile.
guix import pypicommand (see Invoking guix import). It is of interest primarily for developers and not for casual users.
guix publishcan compress build byproducts (see Invoking guix publish).
--disable-daemon was passed to
following packages are also needed:
When configuring Guix on a system that already has a Guix installation,
be sure to specify the same state directory as the existing installation
--localstatedir option of the
localstatedir in GNU Coding Standards). The
configure script protects against
unintended misconfiguration of localstatedir so you do not
inadvertently corrupt your store (see The Store).
When a working installation of the Nix package
manager is available, you
can instead configure Guix with
--disable-daemon. In that case,
Nix replaces the three dependencies above.
Guix is compatible with Nix, so it is possible to share the same store
between both. To do so, you must pass
configure not only the
--with-store-dir value, but also the same
--localstatedir value. The latter is essential because it
specifies where the database that stores metadata about the store is
located, among other things. The default values for Nix are
--disable-daemon is not required if
your goal is to share the store with Nix.