Getting Nix onto legacy distributions can be difficult and the official installer is not always a viable option, especially when considering reproducibility and automation.
This approach is different from others in that we:
Package using distribution-native packaging formats
(deb
/rpm
). And use these packages to manage
systemd and environment integrations.
Create a /nix/store imperatively as a postinstall hook. This uses a prepopulated Nix store embedded inside the distribution-native packaging format.
Properly cleans up after uninstallation. We use package manager hooks to cleanly remove any traces of Nix post removal.
To achieve a reproducible setup for these distributions that doesn’t rely on pulling files from the internet at install-time.
These installer packages are intended to be used in a one-shot fashion to bootstrap the Nix installation, and then let Nix deal with managing itself from that point on.
Deb
aarch64: nix-multi-user-2.24.10.deb
(c84ea76f63d237d1d6a09dcfd19da8d00de2c4df64532101495b72419d870b7d)
x86_64: nix-multi-user-2.24.10.deb
(3ddf9f1c6c9a9a1c104d883a37802f07eaddb9a3066587683ba770869a4e8467)
Pacman
aarch64: nix-multi-user-2.24.10.pkg.tar.zst
(5c9c0fdcedf49ebe1003c024d309e3f3de1d43d2356b0719b9f59ed180b54725)
x86_64: nix-multi-user-2.24.10.pkg.tar.zst
(cafc57f73392c7cddfa161e4c6cbeefdd09984136e0a4a1bb77ed3d4209d04cf)
Rpm
aarch64: nix-multi-user-2.24.10.rpm
(2f2b8b74e4980ebdbbe8a1cf548a4f9f73249d7bba9d3f0bcb80d6dffd35bad6)
x86_64: nix-multi-user-2.24.10.rpm
(89a41d03914f8b9c55b5072957da83353fd2ef3d47ed97a911e04f4d0add2544)
Deb
aarch64: lix-multi-user-2.91.1.deb
(931a15a13f7c949144a7b8752350981b5bf1e6eda961b4c261d0fa452e8e734d)
x86_64: lix-multi-user-2.91.1.deb
(a799a491edc71cf910a549559d89de04a87d1bad5d09e11a3fbace8ec855f866)
Pacman
aarch64: lix-multi-user-2.91.1.pkg.tar.zst
(aef0b98a6346144bb9a60cc698d72494b7bf767a470e390639c8dfc2af1a679c)
x86_64: lix-multi-user-2.91.1.pkg.tar.zst
(4938a4fcf388b9eda3e3c9c229d13b47b8104d43e026391bea14b51265ce81f6)
Rpm
aarch64: lix-multi-user-2.91.1.rpm
(862a22f95a091d1475f66d7daf5fa70d0d4bc705916913bc5c2f913821e254f9)
x86_64: lix-multi-user-2.91.1.rpm
(0d0d53f74a6e35dc7098536cc2a57ee678f557166048c836027a4c682529a84f)
# Remote flake (Nix)
$ nix build github:nix-community/nix-installers#nix-deb
$ nix build github:nix-community/nix-installers#nix-pacman
$ nix build github:nix-community/nix-installers#nix-rpm
# Remote flake (Lix)
$ nix build github:nix-community/nix-installers#lix-deb
$ nix build github:nix-community/nix-installers#lix-pacman
$ nix build github:nix-community/nix-installers#lix-rpm
# In a cloned repository (Nix)
$ nix build .#nix.deb
$ nix build .#nix.pacman
$ nix build .#nix.rpm
# In a cloned repository (Lix)
$ nix build .#lix.deb
$ nix build .#lix.pacman
$ nix build .#lix.rpm