2024-03-28
github:gjz010/nix-channel#nixos-with-flake-init upgrades nixos-generate-config by generating a Flake rather than just configuration.nix.
What is provided by default?
-
NixOS installation as Flake output
nixosConfigurations. -
home-managerNixOS-Module support. -
Several quality of life tweaks around Nix experience:
- Enabling Flake commands by default.
-
Filling in
system.configurationRevision, enablingnixos-version --configuration-revision. - Unifying nixpkgs versions by Nix channel, by Flake registry, and the one used by current installation.
How to install NixOS using nixos-with-flake-init?
TL;DR: Follow the official tutorial but replace the nixos-generate-config line with:
# You may save your configurations elsewhere as long as they are presisted.
mkdir -p /mnt/etc/nixos
cd /mnt/etc/nixos
# Invoke nixos-with-flake-init here.
nix --experimental-features "nix-command flakes" run github:gjz010/nix-channel#nixos-with-flake-init
and replace the nixos-install line with:
# nixos-with-flake-init will require you to enter your hostname, say [YOUR_HOST_NAME].
nixos-install --flake .#[YOUR_HOST_NAME]Additional notes
Source: https://github.com/gjz010/nix-channel/tree/main/pkgs/nixos-with-flake-init