При использовании Nix результат сборки пакетов хранится в отдельной поддиректории в /nix/store. Например, после сборки пакет firefox может записываться в /nix/store/1onlv5pc3ed4n5nskg8ew4twcfd0d5ce4ec5d4-firefox-125.0.1/, где «1onlv5pc3ed4n5nskg8ew4twcfd0d5ce4ec5d4» является хешем всех его зависимостей и инструкций сборки. Под установкой пакета подразумевается его сборка или скачивание уже собранного (при условии, что он был уже собран на Hydra — сервисе сборки проекта NixOS), а также формирование директории с символическими ссылками на все пакеты в профиле системы или пользователя, с последующим добавлении этой директории в список PATH. Аналогичный подход применяется в пакетном менеджере GNU Guix, который основан на наработках Nix. Коллекция пакетов представлена в специальном репозитории Nixpkgs.
Основные новшества:
- Добавлено 17777 пакетов, удалено 9393 пакета, обновлено 16249 пакетов. Добавлено 145 новых модулей, удалено 23 модуля. В разработке и сопровождении пакетов приняли участие 2491 разработчиков.
- Предложены выпуски пользовательских окружений KDE Plasma 6.0, GNOME 46 и MATE 1.28. В состав включены пакеты с пользовательским окружением Lomiri (бывший Unity8), использующим Wayland и дисплейный сервер Mir 2.
- Добавлено 66 новых сервисов, среди которых
AppImage, Anki Sync Server, Clevis, dnsproxy, Guix, intel-gpu-tools, isolate, microsocks, RustDesk, watchdogd. - Ядро Linux обновлено до версии 6.6 (была 6.1). Для сжатия файлов с прошивками задействован алгоритм zstd.
- Обеспечена установка загрузчика исполняемых файлов в формате ELF, который выводит сообщение об ошибке в случае запуска исполняемых файлов, собранных для для NixOS. Для отключения предусмотрена настройка «environment.stub-ld.enable».
- Предоставлена возможность создания систем, в которых не установлен интерпретатор Perl (системные зависимости, использующие Perl, переведены в разряд необязательных опций).
Источник: http://www.opennet.ru/opennews/art.shtml?num=61300