Byl vydán distribuce NixOS 21.11, která je založena na správci balíčků Nix a nabízí řadu vlastních řešení, která zjednodušují nastavení a údržbu systému. Například v NixOS se používá jeden soubor systémové konfigurace (configuration.nix), je možné rychle vrátit aktualizace, podporuje přepínání mezi různými stavy systému, jednotliví uživatelé mohou instalovat své vlastní balíčky (balíček se instaluje do domácího adresáře), je možné současně nainstalovat více verzí jedné aplikace a jsou zajištěny reprodukovatelné sestavení. Velikost plného instalačního obrazu s KDE je 1,6 GB, GNOME – 2 GB, zkrácené konzolové verze – 765 MB.
Hlavní novinky:
- Pracovní plocha KDE Plasma je ve výchozím nastavení převedena na používání protokolu Wayland. Byly aktualizovány pracovní plochy GNOME 41 a Pantheon 6 (z Elementary OS 6).
- Místo iptables je nasazen soubor iptables-nft, který poskytuje nástroje se stejnou syntaxí příkazového řádku, ale překládající přijaté předpisy do bajtkódu nf_tables.
- Byly aktualizovány verze Systemd 249, PHP 8.0, Python 3.9, PostgreSQL 13, bash 5, OpenSSH 8.8p1.
- Byla výrazně zlepšena podpora systému pro správu kontejnerů LXD. Byla realizována možnost sestavování obrazů pro LXD z konfiguračních souborů pomocí nixpkgs. Byla zajištěna sestavení obrazů nixOS s plnou podporou nixos-rebuild, které lze použít samostatně.
- Bylo přidáno více než 40 nových služeb, včetně Git, btrbk (zálohování btrfs), clipcat (správce schránky), dex (poskytovatel OAuth 2.0), Jibri (služba pro nahrávání konferencí Jitsi Meet), Kea (DHCP server), owncast (video streaming), PeerTube, ucarp (implementace protokolu CARP), opensnitch (dynamický firewall), Hockeypuck (server klíčů OpenPGP), MeshCentral (alternativa k TeamViewer), influxdb2 (DBMS pro ukládání metrik), fluidd (webové rozhraní pro správu 3D tiskáren), postfixadmin (webové rozhraní pro správu pošty na bázi Postfix), seafile (platforma pro cloudové úložiště). serverem na bázi Postfixu), seafile (platforma pro cloudové úložiště dat).
Při používání Nix se balíčky instalují do samostatné struktury adresářů /nix/store nebo do podadresáře v uživatelském adresáři. Například se balíček instaluje jako /nix/store/a2b5…8b163-firefox-94.0.2/, kde „a2b5…“ je unikátní identifikátor balíčku, který se používá pro správu závislostí. Balíčky mají podobu kontejnerů, které obsahují nezbytné komponenty pro fungování aplikací. Podobný přístup se používá v balíčkovém správci GNU Guix, který vychází z vývoje Nix.
Mezi balíčky je možné definovat závislosti, přičemž pro vyhledání již nainstalovaných závislostí se používá skenování hash identifikátorů ve složce nainstalovaných balíčků. Možné je jak stahování hotových binárních balíčků z repozitáře (při instalaci aktualizací se stahují pouze delta změny), tak i sestavování z původních textů se všemi závislostmi. Sbírka balíčků je prezentována ve zvláštním repozitáři Nixpkgs.
Zdroj: opennet.ru
