|
Представлен релиз дистрибутива NixOS 25.11, основанного на пакетном менеджере Nix и предоставляющего собственные разработки для упрощения настройки и сопровождения системы. В NixOS вся настройка системы осуществляется через единый файл системной конфигурации configuration.nix. Предоставляются возможности для быстрого отката системы на предыдущую версию конфигурации и переключения между различными состояниями системы. Поддерживается установка индивидуальных пакетов отдельными пользователями и возможность одновременного использования нескольких версий одной программы. Обеспечены воспроизводимые сборки. Для архитектур x86_64 и ARM64 подготовлены установочный образы с графическим окружением (3.6 ГБ) и сокращённым консольным вариантом (1.5 ГБ).
При использовании Nix результат сборки пакетов хранится в отдельном подкаталоге в /nix/store. Например, после сборки пакет firefox может записываться в /nix/store/8onlv1pc3ed6n5nskg8ew4twcfd0d5ae4ed5c4-firefox-145.0.1/, где "8onlv1pc3ed6n5nskg8ew4twcfd0d5ae4ed5c4" является хешем всех его зависимостей и инструкций сборки. Под установкой пакета подразумевается его сборка или скачивание уже собранного (при условии, что он был уже собран на Hydra - сервисе сборки проекта NixOS), а также формирование директории с символическими ссылками на все пакеты в профиле системы или пользователя, с последующим добавлении этой директории в список PATH. Аналогичный подход применяется в пакетном менеджере GNU Guix, который основан на наработках Nix. Коллекция пакетов представлена в специальном репозитории Nixpkgs.
Основные новшества:
- Добавлено 7002 пакета, удалено 6338 пакетов, обновлено 25252 пакета. Добавлено 107 новых модулей и 1778 опций конфигурации, удалено 807 опций и 41 модуль. В разработке и сопровождении пакетов приняли участие 2742 разработчика, подготовивших 59430 изменений.
- Среди новых модулей: композитный менеджер dwl, межсетевой экран FirewallD, туннелирующий обратный прокси Pangolin, блокировщик рекламы Pi-hole, торрент-клиент qBittorrent, утилита rsync, платформа микроблогинга Sharkey, сервис TuneD, Matrix-сервер
tuwunel, VNC-сервер wayvnc и конфигуратор ключей yubikey-manager.
- Добавлена система инициализации nixos-init, инициализирующая систему во время загрузки и настраивающая окружение для запуска systemd.
Код nixos-init написан на Rust и не привязан к bash. При помощи nixos-init можно сформировать урезанные окружения NixOS, поставляемые без командных оболочек, perl, python и прочих интерпретаторов.
- Предложен выпуск среды рабочего стола GNOME 49, в котором прекращена поставка сеанса для X11 (для запуска X11-приложений можно использовать XWayland). Для управления сервисами в
gnome-session задействованы компоненты systemd.
- Добавлена бета-версия пользовательского окружения COSMIC.
- Обновлён инструментарий LLVM 21 и система сборки CMake 4. GCC оставлен на ветке 14.x.
- Добавлена поддержка межсетевого экрана firewalld, реализованного в форме обвязки над пакетным фильтром nftables, поддерживающей изменение правил через D-Bus. FirewallD может запускаться как отдельный сервис
services.firewalld или как бэкенд, выставляемый через настройку "networking.firewall" (в "networking.firewall" добавлена опция backend для смены бэкенда).
- Задействован по умолчанию инструментарий nixos-rebuild-ng, вариант nixos-rebuild целиком переписанный на Python. Для отключения предложена настройка "system.rebuild.enableNg", но её планируют удалить в следующем релизе.
- Добавлен rEFInd, графический менеджер загрузки для систем с UEFI (включается через настройку boot.loader.refind.enable).
- Для загрузчика Limine включена поддержка UEFI Secure Boot (boot.loader.limine.secureBoot.enable). Цифровая подпись создаётся скриптом установки загрузчика, а хэши для проверки целостности ядра генерируются во время пересборки системы. На практике новая возможность позволяет разрешить только загрузку ядер, установленных через NixOS.
- По умолчанию задействована ветка СУБД PostgreSQL 17.
- Прекращена поставка по умолчанию набора VPN-плагинов в модуле с NetworkManager. Все VPN-плагины теперь должны явно активироваться через настройку "networking.networkmanager.plugins".
- Удалены устаревшие версии KDE Gear, KDE Plasma, Maui и Deepin, использовавшие Qt 5. Рекомендован переход на KDE Plasma 6.x и Gear 25.08.
|