Der Artikel kratzt nur an der Oberfläche aber trotzdem gut das über die Distro geschrieben wird, sie hat es verdient denn anders als die 500 andere Distros die nur Ubuntu mit einem anderen Standartpaketset sind ist dies ein echter anderer Distrozweig so wie debian / fedora / suse. Nixos ist sogar verschiedener wie die davor genannten, weil die größtenteils nur andere Paketmanager benutzen, Nixos benutzt nicht nur eine andere Implementation eines Paketmanagers sondern ein ganz anderes Grundprinzip von Packetmanager und ein andere Verzeichnisstruktur.
Ich benutze es seit Jahren auf meinen Maschinen 2 Laptops 1 Netbook und ein server/htpc. So neben den atomaren Updates die natürlich Toll sind, hat man auch eine zentrale Konfigurationsdatei mit der man dem System anweist wie der nächste Zustand aussehen soll, man könnte es simplifiziert mit nem Makefile vergleichen nur mit dem Unterschied das Nixos weiß wie es von A -> B kommt ohne alles neu zu komplieren. Es erkennt quasi die Differenz und baut die Pakete die noch fehlen oder deinstalliert die Sachen.
Auch ist es nicht nur auf Paketmanagement begrenzt, einen Nutzer legt man z.B. auch über diese Konfiguration an. Das sieht dann z.B. so aus:
Code:
users.extraUsers.black = {
extraGroups = [ "networkmanager" "wheel" "libvirtd" "docker"];
isNormalUser = true;
uid = 1000;
};
So wenn man diese eine Konfigurationsdatei nun sichert nur diese Datei, kann man wenn die Festplatte kaputt geht oder wenn man z.B. nen 2. Notebook hat auf dem man ungefaehr das gleiche Setup will einfach die Datei nehmen und auf das andere Geraet kopieren dann sagen:
und es wird das System mit allen Settings / Benutzern etc wieder eingerichtet.
Das kann man mit nem Systembackup auch erreichen aber erstens ist das natuerlich groesser und zweitens kann man dieses System auch mit nem neueren "channel" machen, beim Backup bekommst dann genau das alte Setup und muss dann erstmal zu der aktuellen Version updaten, hier ist das ganze dann schon geupdated.
Man kann auch ALL seine Konfiguration Zentral mit einem Texteditor durchsuchen, statt in /etc 1000 unterordner durchsuchen oder per systemctl enable/disable Zuständen überprüfen/ändern.
Mal kleines Beispiel angenommen ich möchte Redshift verwenden, in anderem Linux muss ich das Paket installieren entweder im Userverzeichnis oder die Systemkonfiguration finden und verändern und dann vermutlich noch mit Systemctl enable redshift das Ding scharf stellen.
In Nixos werf ich das in die zentrale Config rein:
Code:
services.redshift = {
enable = true;
brightness.day = "0.9";
brightness.night = "0.7";
};
location = {
latitude = 47.809602;
longitude = 9.637983;
};
sag nixos-rebuild switch und es ist aktiv. Nun beim 1. einrichten ist der Aufwand noch nicht so viel kleiner, aber sofern man die Linien raus gefunden hat muss man die Configdatei nicht suchen / herausfinden und den Befehl zum das enablen wie genau der Dienst heißt redshift/redshift-daemon oder was auch immer... muss man nicht raus finden.
Wenn du es aber 3 Monate später deaktivieren willst hast sicher schon vergessen wie die config datei hieß oder in welchem Unterordner sie lag bei ner normalen distro und musst das erst wieder googlen, hier konfigurierst die Zeilen wieder aus nixos-rebuild switch und es ist weg.
Da das System quasi keinen oder wenn dann nur mit wenigen kleinen ausnahmen optional Zustände hat, muellst sich das System so auch nicht zu wenn du ein redshift deinstallierst sind die Chancen hoch das die config Dateien nicht automatisch mit gelöscht werden etc.
Bei den meisten anderen Distros kommt man an irgend einen Punkt irgend ein Update läuft schieff oder irgendwas wo man neuinstallieren muss, und dann muss man wieder alles von vorne einrichten, bei Nixos fängst nie wieder bei 0 an.
Hoffe das erklärt einige Vorteile besser.