NixOS

NixOS

NixOS basiert auf Ubuntu - es wird zum NixOS durch das deklarative Paketmanagement mit Nix.

Die deklarative Herangehensweise ermöglicht wiederholbare Deployments und Rollbacks - sollte man mal einen Fehler gemacht haben.

Mir ermöglicht es auch einen Netzwerk Techniker Arbeitsplatz mit einem einheitlichen WSL auszustatten ohne ein eigenes Image bauen zu müssen.

Im folgenden Codeberg Repository habe ich meine WSL Konfiguration öffentlich bereitgestellt:

Codeberg Andreas Rehm - Nix

Man kann damit recht einfach ein Windows Subsystem for Linux mit einem einheitlichen Linux Image ausstatten:

wsl --install --no-distribution
wsl --update
# Download - Version bitte ersetzen: https://github.com/nix-community/NixOS-WSL/releases/latest
Invoke-Webrequest https://github.com/nix-community/NixOS-WSL/releases/download/2605.7.2/nixos.wsl -Outfile nixos.wsl
wsl --install --from-file nixos.wsl

Dann im WSL NixOS:

# flake aktualisieren
nix --extra-experimental-features 'nix-command flakes' flake update

# Repo clonen - in NixOS in einer Nixshell mit git
nix shell nixpkgs#git
git clone https://codeberg.org/andreas_rehm/nix.git
exit

cd nix
if [ ! -f user-config.nix ]; then
    echo "user-config.nix nicht vorhanden - kopiere das Beispiel..."
    cp user-config.nix.example user.config.nix
    nano user.config.nix
    # Wenn gewünscht user-config.nix anpassen und dann in git stagen
    git add -f user-config.nix
fi

nix flake lock

# Erster Test
sudo nixos-rebuild --extra-experimental-features 'nix-command flakes' test --flake .#wsl

# Aktivieren
sudo nixos-rebuild --extra-experimental-features 'nix-command flakes' switch --flake .#wsl

Damit erhält man ein einheitliches NixOS in WSL, dass einige Netzwerktools enthält.