2.8 KiB
NixOS Config
TODO...
Neuinstallation
1. Live Installer booten
Als erstes muss in den NixOS Graphical installer gebootet werden. Dort dann den Installer schließen, Tastatur in den Einstellungen auf DE stellen und ein Terminal öffnen. Außerdem diese Seite im Browser öffnen.
2. nix-shell Umgebung einrichten
export NIX_CONFIG="experimental-features = nix-command flakes"
nix-shell -p sops age age-plugin-yubikey pcsclite pcsc-tools ccid
CCID="$(nix eval --raw nixpkgs#ccid.outPath)"
sudo cp -a "$CCID/pcsc/drivers/ifd-ccid.bundle" /var/lib/pcsc/drivers/
sudo pkill pcscd
sudo pcscd --foreground
In einem neuen Terminalfenster wiederhole...
export NIX_CONFIG="experimental-features = nix-command flakes"
nix-shell -p sops age age-plugin-yubikey pcsclite pcsc-tools ccid
... und führe hier alle weiteren Befehle aus.
3. Git Repo klonen
cd /tmp
git clone https://git.hausfalke.de/fe5hua/nixos-config
cd nixos-config
4. Festplatte mit disko formatieren
sudo -E nix run github:nix-community/disko -- --mode disko --flake .#desktop
Überprüfe mit lsblk.
5. Bootstrap-Skript ausführen
Um den host-key zu generieren und sops anzupassen, ist es notwendig ein Bootstrap-Skript laufen zu lassen. Dafür muss zunächst der Key ausgewählt werden (Yubikey oder Bitwarden):
Yubikey einstecken und:
age-plugin-yubikey --list
Dann entsprechend:
sudo env SOPS_AGE_KEY_FILE=/home/user/nixos-config/age/yubikey-14321697.txt /home/user/nixos-config/scripts/bootstrap-host.sh
oder
sudo env SOPS_AGE_KEY_FILE=/home/user/nixos-config/age/yubikey-32464919.txt /home/user/nixos-config/scripts/bootstrap-host.sh
oder für den Recovery-Key aus Bitwarden (Dieser muss zunächst exportiert werden und als .txt Datei gespeichert werden)
sudo env SOPS_AGE_KEY_FILE=/path/to/recovery-keyfile.txt /home/user/nixos-config/scripts/bootstrap-host.sh
6. NixOS installieren
sudo nixos-install --flake /tmp/nixos-config#desktop
sudo reboot
Probleme
Als erstes muss in den NixOS Graphical installer gebootet werden. Dort dann den Installer schließen, Tastatur in den Einstellungen auf DE stellen und ein Terminal öffnen. Außerdem diese Seite im Browser öffnen.
export NIX_CONFIG="experimental-features = nix-command flakes"
sudo cryptsetup luksOpen /dev/sda2 cryptroot
mkdir -p /mnt/boot /mnt/nix /mnt/persist
sudo mount -o subvol=@nix /dev/mapper/cryptroot /mnt/nix
sudo mount -o subvol=@persist /dev/mapper/cryptroot /mnt/persist
sudo mount /dev/sda1 /mnt/boot
sudo nixos-enter --root /mnt