Rein funktional
Ein Blick auf die Linux-Distribution NixOS
Ein System, das auch beim Stromausfall während eines Updates konsistent bleibt sowie beliebiges Downgrading und gefahrloses Rumprobieren erlaubt – das Featureset der Linux-Distribution NixOS klingt fast zu schön, um wahr zu sein.
Die Linux-Distribution NixOS hebt sich mit einem im mathematischen Sinne „funktionalen“ Paketmanager und einer deklarativen Systemkonfiguration von der Masse ab. Das System basiert auf dem Paketmanager Nix, von dem es auch seinen Namen und seine wesentlichen Vorteile und Eigenheiten erbt. Nix überschreibt grundsätzlich nichts und betrachtet jede Anpassung und jedes Update als neues, separates Paket. Dadurch wird der Status Quo auch durch fehlgeschlagene Aktualisierungen nicht gefährdet und Updates können beliebig zurückgenommen werden.
Nix
Um das zu erreichen, bricht Nix mit gewohnten Konventionen und speichert die Inhalte von Softwarepaketen nicht an üblichen Orten wie /usr/bin/, sondern unter /nix/store/, dem Nix-Store. Dort bekommt jedes Paket seinen eigenen Ordner, der mit einem länglichen Hash anfängt. Zum Beispiel befindet sich Firefox nicht unter /usr/bin/firefox, sondern unter /nix/store/wzrrs3zs9h10bajxgzdsf80j252m64l4-firefox-88.0.1/bin/firefox. Über ein mehrstufiges System von Symlinks stellt Nix sicher, dass man trotzdem einfach „firefox“ im Terminal eintippen kann und der Browser startet.