Выпуск дистрибутива NixOS 22.05, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚Π½Ρ‹ΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ Nix

Бостоялся выпуск дистрибутива NixOS 22.05, основанного Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚Π½ΠΎΠΌ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π΅ Nix ΠΈ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π΅Π³ΠΎ ряд собствСнных Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΎΠΊ, ΡƒΠΏΡ€ΠΎΡ‰Π°ΡŽΡ‰ΠΈΡ… настройку ΠΈ сопровоТдСниС систСмы. НапримСр, Π² NixOS вся настройка систСмы происходит посрСдством Π΅Π΄ΠΈΠ½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π° систСмной ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ (configuration.nix), прСдоставляСтся Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ быстрого ΠΎΡ‚ΠΊΠ°Ρ‚Π° систСмы Π½Π° ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ, присутствуСт ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ состояниями систСмы, поддСрТиваСтся установка ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌΠΈ, Π΅ΡΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ использования Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… вСрсий ΠΎΠ΄Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, обСспСчСны воспроизводимыС сборки. Π Π°Π·ΠΌΠ΅Ρ€ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ установочного ΠΎΠ±Ρ€Π°Π·Π° с KDE 1.7 Π“Π‘, GNOME — 2.2 Π“Π‘, сокращённого консольного Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° — 820 ΠœΠ‘.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ Π½ΠΎΠ²ΡˆΠ΅ΡΡ‚Π²Π°:

  • Для упрощСния установки дистрибутива ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ графичСский инсталлятор, основанный Π½Π° Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ΅ Calamares, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для создания инсталляторов Π² Ρ‚Π°ΠΊΠΈΡ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ…, ΠΊΠ°ΠΊ Manjaro, Sabayon, Chakra, NetRunner, KaOS, OpenMandriva ΠΈ KDE neon. Новый инсталлятор ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ поставляСтся Π² iso-ΠΎΠ±Ρ€Π°Π·Π°Ρ… с GNOME ΠΈ KDE.
    Выпуск дистрибутива NixOS 22.05, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚Π½Ρ‹ΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ Nix
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ 9345 ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ², ΡƒΠ΄Π°Π»Π΅Π½ΠΎ 5874 ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ², ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΎ 10666 ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ². ΠžΠ±Π½ΠΎΠ²Π»Π΅Π½Ρ‹ вСрсии ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ², Π² Ρ‚ΠΎΠΌ числС GNOME 42, systemd 250, PHP 8.1, Pulseaudio 15, PostgreSQL 14.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ Π±ΠΎΠ»Π΅Π΅ 89 Π½ΠΎΠ²Ρ‹Ρ… сСрвисов, срСди ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… aesmd (Intel SGX Architectural Enclave Service Manager), rootless Docker (для запуска Docker Π±Π΅Π· ΠΏΡ€Π°Π² root), matrix-conduit (matrix-сСрвСр), apfs (Apple File System), FRRouting (рСализация ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ² ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ), snowflake-proxy (прокси для ΠΎΠ±Ρ…ΠΎΠ΄Π° цСнзурирования Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠ°), pgadmin4 (GUI для управлСния PostgreSQL), moosefs (распрСдСлённая Π€Π‘), nbd (Network Block Device) Π£Π΄Π°Π»Π΅Π½ΠΎ 27 сСрвисов, Π² основном с ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠΌΠΈ Π²Π΅Ρ‚ΠΊΠ°ΠΌΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΈΠ»ΠΈ завязанных Π½Π° Python2.
  • ΠŸΠ°ΠΊΠ΅Ρ‚Π½Ρ‹ΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ Nix ΠΎΠ±Π½ΠΎΠ²Π»Ρ‘Π½ Π΄ΠΎ вСрсии 2.8, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Ρ… возмоТностСй (flake). НапримСр, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° «nix fmt» для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² форматирования Π²Ρ‹Π²ΠΎΠ΄Π° ΠΈ ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ «impure» для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‰ΠΈΡ…ΡΡ ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ сборкС Ρ†Π΅Π»Π΅Π²Ρ‹Ρ… ΠΏΡƒΡ‚Π΅ΠΉ ΠΊ содСрТимому. Для Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΎΠΏΡ†ΠΈΠΉ прСдоставлСна ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ содСрТимого ΠΈΠ· Π²Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΠΎΡ‚ΠΎΠΊΠ° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, «—file -«).
  • ΠŸΠ°ΠΊΠ΅Ρ‚ с Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠΌ Firefox для Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ x86_64 собран с оптимизациями Π½Π° основС Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² профилирования ΠΊΠΎΠ΄Π° (PGO) для ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ security.acme.defaults для упрощСния настройки получСния TLS-сСртификатов.

ΠŸΡ€ΠΈ использовании Nix Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ сборки ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² хранится Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΠΎΠ΄Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ Π² /nix/store. НапримСр, послС сборки ΠΏΠ°ΠΊΠ΅Ρ‚ firefox ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒΡΡ Π² /nix/store/1onlv2pc3ez4n5nskg6ew7twcfd0c5cecec5d4-firefox-100.0.1/, Π³Π΄Π΅ «1onlv2pc3ez4n5nskg6ew7twcfd0c5cecec5d4» являСтся Ρ…Π΅ΡˆΠ΅ΠΌ всСх Π΅Π³ΠΎ зависимостСй ΠΈ инструкций сборки. Под установкой ΠΏΠ°ΠΊΠ΅Ρ‚Π° подразумСваСтся Π΅Π³ΠΎ сборка ΠΈΠ»ΠΈ скачиваниС ΡƒΠΆΠ΅ собранного (ΠΏΡ€ΠΈ условии, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Π±Ρ‹Π» ΡƒΠΆΠ΅ собран Π½Π° Hydra — сСрвисС сборки ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° NixOS), Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ с символичСскими ссылками Π½Π° всС ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ Π² ΠΏΡ€ΠΎΡ„ΠΈΠ»Π΅ систСмы ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, с ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ этой Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ Π² список PATH. Аналогичный ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ примСняСтся Π² ΠΏΠ°ΠΊΠ΅Ρ‚Π½ΠΎΠΌ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π΅ GNU Guix, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ основан Π½Π° Π½Π°Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ… Nix. ΠšΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² прСдставлСна Π² ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ Nixpkgs.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru