È stata rilasciata la distribuzione NixOS 21.11, basata sul gestore di pacchetti Nix e che offre una serie di sviluppi proprietari che semplificano la configurazione e la manutenzione del sistema. Ad esempio, in NixOS viene utilizzato un unico file di configurazione del sistema (configuration.nix), è possibile eseguire rollback rapidi degli aggiornamenti, è supportato il passaggio tra diversi stati del sistema, è possibile installare pacchetti individuali da parte degli utenti (il pacchetto viene installato nella home directory), è possibile installare più versioni dello stesso programma contemporaneamente e sono garantite build riproducibili. La dimensione dell'immagine di installazione completa con KDE è di 1,6 GB, GNOME - 2 GB, e la versione console ridotta - 765 MB.
Novità principali:
- Il desktop KDE Plasma di default è stato tradotto per utilizzare il protocollo Wayland. I desktop GNOME 41 e Pantheon 6 (da Elementary OS 6) sono stati aggiornati.
- Invece di iptables è stato utilizzato il set iptables-nft, che fornisce utilità con la stessa sintassi della riga di comando, ma trasmette le regole ottenute nel bytecode nf_tables.
- Aggiornate le versioni di Systemd 249, PHP 8.0, Python 3.9, PostgreSQL 13, bash 5, OpenSSH 8.8p1.
- È stata notevolmente migliorata la supporto per il sistema di gestione dei contenitori LXD. È stata implementata la possibilità di costruire immagini per LXD da file di configurazione utilizzando nixpkgs. È garantita la costruzione di immagini nixOS con il pieno supporto di nixos-rebuild, che possono essere utilizzate in modo isolato.
- Aggiunti oltre 40 nuovi servizi, tra cui Git, btrbk (backup btrfs), clipcat (gestore della clipboard), dex (fornitore OAuth 2.0), Jibri (servizio per la registrazione delle conferenze Jitsi Meet), Kea (server DHCP), owncast (streaming video), PeerTube, ucarp (implementazione del protocollo CARP), opensnitch (firewall dinamico), Hockeypuck (server di chiavi OpenPGP), MeshCentral (analogo di TeamViewer), influxdb2 (DBMS per la memorizzazione delle metriche), fluidd (interfaccia web per la gestione delle stampanti 3D), postfixadmin (interfaccia web per la gestione della posta sulla base di Postfix), seafile (piattaforma di archiviazione cloud). server (progettato attorno a Postfix), seafile (piattaforma di archiviazione cloud).
Quando si utilizza Nix, i pacchetti vengono installati in un albero di directory separato /nix/store o in una sottodirectory nella cartella dell'utente. Ad esempio, un pacchetto viene installato come /nix/store/a2b5…8b163-firefox-94.0.2/, dove "a2b5..." è un identificatore unico del pacchetto utilizzato per il controllo delle dipendenze. I pacchetti sono confezionati come contenitori contenenti i componenti necessari per il funzionamento delle applicazioni. Un approccio simile viene applicato nel gestore di pacchetti GNU Guix, che si basa sugli sviluppi di Nix.
È possibile definire dipendenze tra i pacchetti, utilizzando la scansione degli hash identificatori nella directory dei pacchetti installati per verificare la presenza di dipendenze già installate. È possibile sia il download di pacchetti binari pronti dal repository (quando si verificano aggiornamenti ai pacchetti binari vengono caricati solo i delta-aggiornamenti), sia la compilazione dai codici sorgente con tutte le dipendenze. La collezione di pacchetti è presentata in un repository speciale Nixpkgs.
Fonte: opennet.ru
