ΠΠ·Π΄Π°Π΄Π΅Π½ Π΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²ΡΡ NixOS 21.11, Π±Π°Π·ΠΈΡΠ°Π½ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠ½ΠΈΡ ΠΌΠ΅Π½ΠΈΠ΄ΠΆΡΡ Nix, ΠΊΠΎΠΉΡΠΎ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ ΡΠ΅Π΄ΠΈΡΠ° ΡΠΎΠ±ΡΡΠ²Π΅Π½ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ, ΡΠ»Π΅ΡΠ½ΡΠ²Π°ΡΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°ΡΠ° ΠΈ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π² NixOS ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π΅Π΄ΠΈΠ½Π΅Π½ ΡΠ°ΠΉΠ» Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ½Π°ΡΠ° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ (configuration.nix), ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ ΡΠ΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° Π±ΡΡΠ·ΠΎ Π²ΡΠ·ΡΡΠ°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° Π°ΠΊΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ, Π½Π°Π»ΠΈΡΠ½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΏΡΠ΅Π²ΠΊΠ»ΡΡΠ²Π°Π½Π΅ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΡΡΡΡΠΎΡΠ½ΠΈΡ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ°, ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° ΡΠ΅ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡΠ°Π»Π½ΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΈ ΠΎΡ ΠΎΡΠ΄Π΅Π»Π½ΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ (ΠΏΠ°ΠΊΠ΅ΡΡΡ ΡΠ΅ ΠΏΠΎΡΡΠ°Π²Ρ Π² Π΄ΠΎΠΌΠ°ΡΠ½Π°ΡΠ° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ), Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΅ Π΅Π΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½Π΅ Π½Π° Π½ΡΠΊΠΎΠ»ΠΊΠΎ Π²Π΅ΡΡΠΈΠΈ Π½Π° Π΅Π΄Π½ΠΎ ΠΈ ΡΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΎΡΠΈΠ³ΡΡΠ΅Π½ΠΈ ΡΠ° Π²ΡΠ·ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΠΌΠΈ ΡΠ±ΠΎΡΠΊΠΈ. Π Π°Π·ΠΌΠ΅ΡΡΡ Π½Π° ΠΏΡΠ»Π½ΠΈΡ ΠΈΠ½ΡΡΠ°Π»Π°ΡΠΈΠΎΠ½Π΅Π½ ΠΎΠ±ΡΠ°Π· Ρ KDE Π΅ 1.6 GB, Ρ GNOME β 2 GB, Π° ΡΡΠΊΡΠ°ΡΠ΅Π½ΠΈΡΡ ΠΊΠΎΠ½Π·ΠΎΠ»Π΅Π½ Π²Π°ΡΠΈΠ°Π½Ρ β 765 MB.
ΠΡΠ½ΠΎΠ²Π½ΠΈ Π½ΠΎΠ²ΠΎΠ²ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ:
- Π Π°Π±ΠΎΡΠ½ΠΈΡΡ ΠΏΠ»ΠΎΡ KDE Plasma ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ Π΅ ΠΏΡΠ΅Π²Π΅Π΄Π΅Π½ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° Wayland. ΠΠ±Π½ΠΎΠ²Π΅Π½ΠΈ ΡΠ° ΡΠ°Π±ΠΎΡΠ½ΠΈΡΠ΅ ΠΏΠ»ΠΎΡΠΎΠ²Π΅ GNOME 41 ΠΈ Pantheon 6 (ΠΎΡ Elementary OS 6).
- ΠΠΌΠ΅ΡΡΠΎ iptables Π΅ Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Π½ Π½Π°Π±ΠΎΡΡΡ iptables-nft, ΠΊΠΎΠΉΡΠΎ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠ΅Π½ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΈΡ ΡΠ΅Π΄, Π½ΠΎ ΡΡΠ°Π½ΡΠ»ΠΈΡΠ°ΡΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π° Π² Π±Π°ΠΉΡΠΊΠΎΠ΄ nf_tables.
- ΠΠ±Π½ΠΎΠ²Π΅Π½ΠΈ ΡΠ° Π²Π΅ΡΡΠΈΠΈΡΠ΅ Π½Π° Systemd 249, PHP 8.0, Python 3.9, PostgreSQL 13, bash 5, OpenSSH 8.8p1.
- ΠΠ½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ Π΅ ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π·Π° ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈ LXD. Π Π΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ Π½Π° ΠΎΠ±ΡΠ°Π·ΠΈ Π·Π° LXD ΠΎΡ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° nixpkgs. ΠΡΠΈΠ³ΡΡΠ΅Π½ΠΎ Π΅ ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ Π½Π° ΠΎΠ±ΡΠ°Π·ΠΈ Π½Π° nixOS Ρ ΠΏΡΠ»Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° nixos-rebuild, ΠΊΠΎΠΈΡΠΎ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»Π½ΠΎ.
- ΠΠΎΠ±Π°Π²Π΅Π½ΠΈ ΡΠ° Π½Π°Π΄ 40 Π½ΠΎΠ²ΠΈ ΡΡΠ»ΡΠ³ΠΈ, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ Git, btrbk (ΡΠ΅Π·Π΅ΡΠ²Π½ΠΎ ΠΊΠΎΠΏΠΈΠ΅ Π½Π° btrfs), clipcat (ΠΌΠ΅Π½ΠΈΠ΄ΠΆΡΡ Π½Π° ΠΊΠ»ΠΈΠΏΠ±ΠΎΡΠ΄Π°), dex (ΠΏΡΠΎΠ²Π°ΠΉΠ΄Π΅Ρ Π½Π° OAuth 2.0), Jibri (ΡΡΠ»ΡΠ³Π° Π·Π° Π·Π°ΠΏΠΈΡ Π½Π° ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΠΈ Π² Jitsi Meet), Kea (DHCP ΡΡΡΠ²ΡΡ), owncast (ΡΡΡΠΈΠΉΠΌΠΈΠ½Π³ Π½Π° Π²ΠΈΠ΄Π΅ΠΎ), PeerTube, ucarp (ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° CARP), opensnitch (Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ½Π° Π·Π°ΡΠΈΡΠ½Π° ΡΡΠ΅Π½Π°), Hockeypuck (ΡΡΡΠ²ΡΡ Π·Π° ΠΊΠ»ΡΡΠΎΠ²Π΅ OpenPGP), MeshCentral (Π°Π½Π°Π»ΠΎΠ³ Π½Π° TeamViewer), influxdb2 (Π‘Π£ΠΠ Π·Π° ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΌΠ΅ΡΡΠΈΠΊΠΈ), fluidd (ΡΠ΅Π± ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° 3D ΠΏΡΠΈΠ½ΡΠ΅ΡΠΈ), postfixadmin (ΡΠ΅Π± ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΈΠΌΠ΅ΠΉΠ»ΠΈ Π½Π° Π±Π°Π·Π° Postfix), seafile (ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° Π·Π° ΠΎΠ±Π»Π°ΡΠ½ΠΎ ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π½Π° Π΄Π°Π½Π½ΠΈ). ΡΡΡΠ²ΡΡΠ°. Π½Π° Π±Π°Π·Π°ΡΠ° Π½Π° Postfix), seafile (ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° Π·Π° ΠΎΠ±Π»Π°ΡΠ½ΠΎ ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π½Π° Π΄Π°Π½Π½ΠΈ).
ΠΡΠΈ ΡΠ°Π±ΠΎΡΠ° Ρ Nix, ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅ ΡΠ΅ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Ρ Π² ΠΎΡΠ΄Π΅Π»Π½Π° ΡΡΡΡΠΊΡΡΡΠ° ΠΎΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ ix/store ΠΈΠ»ΠΈ ΠΏΠΎΠ΄Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ Π² ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠ°ΡΠ° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠ°ΠΊΠ΅ΡΡΡ ΡΠ΅ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ° ΠΊΠ°ΡΠΎ /nix/store/a2b5β¦8b163-firefox-94.0.2/, ΠΊΡΠ΄Π΅ΡΠΎ Β«a2b5β¦Β» Π΅ ΡΠ½ΠΈΠΊΠ°Π»Π΅Π½ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠ°, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ Π·Π° ΠΊΠΎΠ½ΡΡΠΎΠ» Π½Π° Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈΡΠ΅. ΠΠ°ΠΊΠ΅ΡΠΈΡΠ΅ ΡΠ° ΠΎΡΠΎΡΠΌΠ΅Π½ΠΈ ΠΊΠ°ΡΠΎ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈ, ΡΡΠ΄ΡΡΠΆΠ°ΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΈΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ Π·Π° ΡΠ°Π±ΠΎΡΠ° Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡΠ°. ΠΠΎΠ΄ΠΎΠ±Π΅Π½ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΡΠ΅ ΠΏΡΠΈΠ»Π°Π³Π° ΠΈ Π² ΠΏΠ°ΠΊΠ΅ΡΠ½ΠΈΡ ΠΌΠ΅Π½ΠΈΠ΄ΠΆΡΡ GNU Guix, ΠΊΠΎΠΉΡΠΎ Π΅ ΠΎΡΠ½ΠΎΠ²Π°Π½ Π½Π° ΠΈΠ΄Π΅ΠΈΡΠ΅ Π½Π° Nix.
ΠΠ΅ΠΆΠ΄Ρ ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅ Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π΅ Π½Π° Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ, ΠΊΠ°ΡΠΎ Π·Π° ΡΡΡΡΠ΅Π½Π΅ Π½Π° Π½Π°Π»ΠΈΡΠΈΠ΅ Π½Π° Π²Π΅ΡΠ΅ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½ΠΈ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΡΠΊΠ°Π½ΠΈΡΠ°Π½Π΅ Π½Π° Ρ Π΅Ρ-ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΈ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡΡΠ° Π½Π° ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½ΠΈΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠΈ. ΠΡΠ·ΠΌΠΎΠΆΠ½Π° Π΅ ΠΊΠ°ΠΊΡΠΎ ΡΠ²Π°Π»ΡΠ½Π΅ Π½Π° Π³ΠΎΡΠΎΠ²ΠΈ Π±ΠΈΠ½Π°ΡΠ½ΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΈ ΠΎΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ (ΠΏΡΠΈ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½Π΅ Π½Π° Π°ΠΊΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΊΡΠΌ Π±ΠΈΠ½Π°ΡΠ½ΠΈΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠΈ ΡΠ΅ ΠΈΠ·ΡΠ΅Π³Π»ΡΡ ΡΠ°ΠΌΠΎ delta-ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ), ΡΠ°ΠΊΠ° ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°Π½Π΅ ΠΎΡ ΠΈΠ·Ρ ΠΎΠ΄Π½ΠΈ ΡΠ΅ΠΊΡΡΠΎΠ²Π΅ Ρ Π²ΡΠΈΡΠΊΠΈ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ. ΠΠΎΠ»Π΅ΠΊΡΠΈΡΡΠ° ΠΎΡ ΠΏΠ°ΠΊΠ΅ΡΠΈ Π΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π΅Π½Π° Π² ΡΠΏΠ΅ΡΠΈΠ°Π»Π΅Π½ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡΠΌ Nixpkgs.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
