2026-03-26 23:31:01 +01:00
2026-03-26 23:34:37 +01:00
2026-03-25 11:17:44 +01:00
2026-03-26 23:34:37 +01:00
2026-03-25 12:07:40 +01:00
2026-03-26 23:19:13 +01:00
2026-03-26 23:19:13 +01:00

NixOS-konfiguration

Det här förrådet innehåller en flake-baserad NixOS-konfiguration för mina maskiner.

Just nu finns värden kronos.

Punktfiler förväntas att finns under ~/dotfiles, och hanteras med home manager

Flakes

Vi lever i framtiden, därför används flakes exklusivt.

För att installera

  1. Kontrollera att rätt disk (installDisk) är vald i hosts/kronos/default.nix
  2. Generera en hardware-configuration.nix. Tag dock bort all information om filsystem. Disko sköter redan det åt oss.
  3. Kontrollera networking.hostId. Bör vara unikt för nätverket.

Applicera konfiguration

Sedan:

sudo -i
export NIX_CONFIG='experimental-features = nix-command flakes'
cd /tmp
git clone <repo-url> nixcfg
cd nixcfg

Applicera disk-layouten:

nix run github:nix-community/disko -- --mode disko .#kronos

Generera hårdvarufilen och kopiera in den i förrådet:

nixos-generate-config --root /mnt
cp /mnt/etc/nixos/hardware-configuration.nix ./hosts/kronos/hardware-configuration.nix

Kom ihåg att ta bort alla filesystemkonfiguration från hardware-configuration.nix. Disko sköter ju redan det.

Kopiera också över konfigurationen till målenheten

rm -rf /mnt/etc/nixos
cp -r /tmp/nixcfg /mnt/etc/nixos

Installera systemet:

nixos-install --flake .#kronos

Registrera TPM-nyckeln:

nixos-enter --root /mnt
./systemd-cryptenroll.sh

Starta om:

reboot

Efter första uppstart

git clone <dotfiles-repo> ~/dotfiles

Vanligt underhåll

När systemet väl är installerat jobbar man oftast så här.

Uppdatera flake-låset:

nix flake update

Bygg och applicera ändringar på den lokala maskinen:

sudo nixos-rebuild switch --flake .#kronos

Testa en konfiguration utan att göra den permanent vid nästa boot:

sudo nixos-rebuild test --flake .#kronos

Bygg bara, utan att byta system direkt:

sudo nixos-rebuild build --flake .#kronos

Rensa gamla generationer och oanvända paket:

sudo nix-collect-garbage -d

Kontrollera ZFS-snapshots:

zfs list -t snapshot
Description
No description provided
Readme 80 KiB
Languages
Nix 96.7%
Shell 3.3%