Экосистема Nix

From NixOS Wiki
Revision as of 17:58, 20 July 2024 by Unabomberlive (talk | contribs) (Created page with "Экосистема '''Core Nix''' - это набор технологий, предназначенных для воспроизводимой сборки и декларативного конфигурирования и управления пакетами и системами, а также их зависимостями. Это достигается путем переноса функциональной парадигмы из области програ...")

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

In addition there are many other applications (Extended Nix Ecosystem) developed by the Nix community, utilizing and supporting these core technologies.

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

Core Components of the Nix Ecosystem
Component Manual Description Use License
NixOS NixOS Manual A Linux distribution with all components built by Nix, and thus supporting reproducible and declarative system-wide configuration management as well as atomic upgrades and rollbacks. Declaratively configure desktops, servers & clusters MIT
Nixpkgs Nixpkgs Manual The largest community maintained Nix package and NixOS module repository; standard releases of NixOS are hosted here. Share Nix packages & NixOS modules MIT
Hydra Hydra Manual A Nix based continuous build system. CI build farms GPL-3.0
Nix Nix Manual A package manager that parses Nix expressions specifying reproducible build, putting the result in a store address with a hash of the dependency tree, sidestepping dependency hell and supporting multiversion installs and rollbacks. Reproducible builds & package management in 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.