Экосистема Nix

Revision as of 18:01, 20 July 2024 by Unabomberlive (talk | contribs) (Created page with "{| class="wikitable" |+ Основные компоненты экосистемы Nix |- ! Компонент ! Руководство ! Описание ! Используйте ! Лицензия |- | NixOS | [https://nixos.org/nixos/manual/ NixOS Manual] | Дистрибутив Linux со ''всеми'' компонентами, собранными Nix, и, таким образом, поддерживающий воспроизводимое и деклара...")

Экосистема Core Nix - это набор технологий, предназначенных для воспроизводимой сборки и декларативного конфигурирования и управления пакетами и системами, а также их зависимостями. Это достигается путем переноса функциональной парадигмы из области программ в область систем с помощью динамического, функционального и ленивого DSL, называемого Nix Language для определения воспроизводимых сборок

Кроме того, существует множество других applications (Extended Nix Ecosystem), разработанных сообществом Nix, использующих и поддерживающих эти основные технологии.

Официальная экосистема

Основные компоненты экосистемы Nix
Компонент Руководство Описание Используйте Лицензия
NixOS NixOS Manual Дистрибутив Linux со всеми компонентами, собранными Nix, и, таким образом, поддерживающий воспроизводимое и декларативное управление конфигурацией всей системы, а также атомарное обновление и откат. Декларативная конфигурация настольных компьютеров, серверов и кластеров MIT
Nixpkgs Nixpkgs Manual Крупнейший поддерживаемый сообществом репозиторий пакетов Nix и модулей NixOS; здесь размещаются стандартные выпуски NixOS. Распространение пакетов Nix и модулей NixOS MIT
Hydra Hydra Manual Система непрерывной сборки на базе Nix. Фермы сборки CI GPL-3.0
Nix Nix Manual Менеджер пакетов, который анализирует выражения Nix, указывающие на воспроизводимую сборку, помещая результат в адрес хранилища с хэшем дерева зависимостей, обходя ад зависимостей и поддерживая многоверсионную установку и откат. Воспроизводимые сборки и управление пакетами в Linux и Darwin LGPL-2.1
The NixOS core ecosystem stack
NixOS

A Linux distribution and configuration system built using Nixpkgs

Nixpkgs

A large, community-maintained repository of packages

Hydra

A continuous build system built on Nix

Nix

A pure and functional build system

Использование NixOS

Пользователи устанавливают дистрибутив NixOS на свои компьютеры так же, как и любой другой дистрибутив Linux. Они читают о пакетах для установки и параметрах конфигурации в Nixpkgs на сайте https://search.nixos.org и в этой вики. Они используют язык Nix, чтобы декларативно описать в текстовом файле, какие пакеты программ должны быть установлены и как должна быть настроена система. Они запускают 2 программы командной строки в терминале, чтобы преобразовать систему в описанную систему. Они используют систему как любую другую систему Linux.

Разработка NixOS

Разработчики NixOS в основном работают над Nixpkgs, чтобы описать в текстовых файлах на языке Nix, как должны быть собраны программные пакеты. После экспертной оценки эти изменения интегрируются в Nixpkgs. Некоторые из этих пакетов предварительно собираются на Hydra, чтобы сократить время обновления для пользователей NixOS.