Ein kurzer Überblick über Nix(OS), Nixpkgs und weitere nützliche Tools. Es geht v.a. darum die Konzepte zu vermitteln sowie die Unterschiede zu klassischen Paket-Managern aufzuzeigen (mögliche Vor- und Nachteile).
Nix ist ein funktionaler package manager, der auch auf anderen Betriebssystem genutzt werden kann, ohne Konflikte mit dem bestehenden package manager zu bekommen. NixOS ist eine auf Nix basierende Linux-Distribution, mit der neben den Software-Paketen zusätzlich auch die System-Konfiguration über Nix verwaltet werden kann. Die Paket-Definitionen und NixOS Module zur Systemkonfiguration werden in Nixpkgs, einem großen Git Repository, zentral verwaltet.
Nix(OS) verfügt unter anderem über folgende Features:
- Transparent source/binary model
- Declarative (system configuration)
- Reproducible builds
- Multi-user, multi-version (no conflicts)
- Portable (Linux, macOS, ...)
- Reliable and atomic updates
- Rollbacks
#### Über mich
Nixpkgs package maintainer seit 2017 (ca. 50 Pakete und 4 Module), davor Gentoo user. Begeistert für FLOSS, GNU/Linux, Networking ("Internet"), reproducible builds, etc. Aktuell Informatik-Student an der Universität Tübingen.
#### Vorwissen
Grobe Kenntnisse eines Paket-Managers wären evtl. hilfreich.