Paglabas ng pamamahagi ng NixOS 21.11 gamit ang Nix package manager

Ang pamamahagi ng NixOS 21.11 ay inilabas, batay sa tagapamahala ng pakete ng Nix at nagbibigay ng ilang sariling mga pagpapaunlad na nagpapasimple sa pag-setup at pagpapanatili ng system. Halimbawa, ang NixOS ay gumagamit ng isang file ng configuration ng system (configuration.nix), nagbibigay ng kakayahang mabilis na ibalik ang mga update, sinusuportahan ang paglipat sa pagitan ng iba't ibang mga estado ng system, sinusuportahan ang pag-install ng mga indibidwal na pakete ng mga indibidwal na user (ang package ay inilagay sa home directory ), at nagbibigay-daan sa sabay-sabay na pag-install ng ilang mga bersyon ng parehong programa , ang mga reproducible assemblies ay sinisiguro. Ang laki ng buong larawan sa pag-install na may KDE ay 1.6 GB, ang GNOME ay 2 GB, at ang pinaikling bersyon ng console ay 765 MB.

Mga pangunahing inobasyon:

  • Ang KDE Plasma desktop ay inilipat upang gamitin ang Wayland protocol bilang default. Na-update ang GNOME 41 at Pantheon 6 (mula sa Elementary OS 6) na mga desktop.
  • Sa halip na iptables, ginagamit ang iptables-nft set, na nagbibigay ng mga utility na may parehong command line syntax, ngunit isinasalin ang mga resultang panuntunan sa nf_tables bytecode.
  • Mga na-update na bersyon ng Systemd 249, PHP 8.0, Python 3.9, PostgreSQL 13, bash 5, OpenSSH 8.8p1.
  • Malaking pinahusay na suporta para sa LXD container management system. Ipinatupad ang kakayahang bumuo ng mga imahe para sa LXD mula sa mga configuration file gamit ang nixpkgs. Bumubuo ng mga larawan ng nixOS na may ganap na suporta para sa nixos-rebuild, na maaaring gamitin nang hiwalay.
  • Nagdagdag ng higit sa 40 bagong serbisyo, kabilang ang Git, btrbk (btrfs backup), clipcat (clipboard manager), dex (OAuth 2.0 provider), Jibri (Jitsi Meet conference recording service), Kea (DHCP server), owncast (streaming) video) , PeerTube, ucarp (pagpapatupad ng CARP protocol), opensnitch (dynamic na firewall), Hockeypuck (OpenPGP key server), MeshCentral (katulad ng TeamViewer), influxdb2 (DBMS para sa pag-iimbak ng mga sukatan), fluidd (web interface para sa pamamahala ng mga 3D printer ), postfixadmin (web interface para sa pamamahala ng isang Postfix-based na mail server), seafile (cloud data storage platform).

Kapag gumagamit ng Nix, naka-install ang mga package sa isang hiwalay na puno ng direktoryo /nix/store o isang subdirectory sa direktoryo ng user. Halimbawa, ang package ay naka-install bilang /nix/store/a2b5...8b163-firefox-94.0.2/, kung saan ang "a2b5..." ay ang natatanging package identifier na ginagamit para sa pagsubaybay sa dependency. Ang mga pakete ay idinisenyo bilang mga lalagyan na naglalaman ng mga sangkap na kinakailangan para gumana ang mga application. Ang isang katulad na diskarte ay ginagamit sa GNU Guix package manager, na batay sa Nix developments.

Posible upang matukoy ang mga dependency sa pagitan ng mga pakete, at upang maghanap para sa pagkakaroon ng mga naka-install na dependencies, ginagamit ang pag-scan ng mga hash ng identifier sa direktoryo ng mga naka-install na pakete. Posibleng mag-download ng mga handa na binary na pakete mula sa repositoryo (kapag nag-i-install ng mga update sa mga binary na pakete, ang mga pagbabagong delta lang ang dina-download), o bumuo mula sa source code kasama ang lahat ng dependencies. Ang koleksyon ng mga pakete ay ipinakita sa isang espesyal na imbakan ng Nixpkgs.

Pinagmulan: opennet.ru

Magdagdag ng komento