Using as subsystem of Garuda
The original idea behind this project was to use NixOS as a subsystem of Garuda. This means it can be installed easily from a running Garuda installation. This all works via BTRFS subvolumes, therefore any OS other than Garuda is considered unsupported for this method. Settings like users, passwords, and locales are automatically derived from Garuda and change with it. An option to partly share the /home partition between Garuda and NixOS has also been provided.
The subsystem offers the dr460nized (default) and mokka editions.
Installation
Section titled “Installation”Our repo contains garuda-nix-subsystem, which is the needed part to get going:
sudo pacman -S garuda-nix-subsystem # get the packagegaruda-nix-subsystem install # trigger the installation processThe script will first install Lix, an implementation of the Nix package manager, into a new @nix subvolume, and proceed by setting up the required subvolumes. After the process is finished, the subsystem may now be entered by rebooting and selecting the new Garuda Linux Nix Subsystem entry in GRUB.
Updating
Section titled “Updating”The system may be updated by running sudo garuda-nix-subsystem update from either Garuda or by running garuda-update on Garuda Nix Subsystem. This sources the latest tagged commit from our Garuda Nix repo, which also updates the flake’s inputs and therefore all package versions. See Updating for what happens during an update.