Nix ecosystem/zh-cn: Difference between revisions

From NixOS Wiki
Created page with "此外,Nix社区开发了许多其他的 应用程序 (“Nix扩展生态”),这些应用程序使用并为核心技术提供支持。"
Tags: Mobile edit Mobile web edit
No edit summary
 
(9 intermediate revisions by 2 users not shown)
Line 2: Line 2:
“Nix核心生态”是一组技术,旨在以可重复的方式构建、声明式配置和管理软件包和系统及其依赖项。它通过利用名为[[Overview of the Nix Language|Nix Language]]的动态、函数式和惰性求值的领域特定语言(DSL)将函数式编程范式从程序转换为系统来实现这一点,用于指定可重现的软件建构。  
“Nix核心生态”是一组技术,旨在以可重复的方式构建、声明式配置和管理软件包和系统及其依赖项。它通过利用名为[[Overview of the Nix Language|Nix Language]]的动态、函数式和惰性求值的领域特定语言(DSL)将函数式编程范式从程序转换为系统来实现这一点,用于指定可重现的软件建构。  


此外,Nix社区开发了许多其他的 [[应用程序]] (“Nix扩展生态”),这些应用程序使用并为核心技术提供支持。  
此外,Nix社区开发了许多其他的 [[applications|应用程序]] (“Nix扩展生态”),这些应用程序使用并为核心技术提供支持。  


<div lang="en" dir="ltr" class="mw-content-ltr">
<span id="Official_ecosystem"></span>
== Official ecosystem ==
== 官方生态 ==
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
{| class="wikitable"
{| class="wikitable"
|+ Core Components of the Nix Ecosystem
|+ Nix 生态核心组件
|-
|-
! Component
! 组件
! Manual
! 手册(Manual)
! Description
! 描述
! Use
! 用途
! License
! 协议
|-  
|-  
| [[NixOS]]
| [[NixOS]]
| [https://nixos.org/nixos/manual/ NixOS Manual]
| [https://nixos.org/nixos/manual/ 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.
| 一个由 Nix 构建''所有''组件的 Linux 发行版,因此支持可重现的、声明式的全系统配置管理以及原子升级和回滚。
| Declaratively configure desktops, servers & clusters
| 声明式配置桌面、服务器和集群。
| MIT
| MIT
|-
|-
| [[Nixpkgs]]
| [[Nixpkgs]]
| [https://nixos.org/nixpkgs/manual/ Nixpkgs Manual]
| [https://nixos.org/nixpkgs/manual/ Nixpkgs Manual]
| The largest community maintained Nix package and NixOS module repository; standard releases of NixOS are hosted here.
| 最大的社区维护的 Nix 软件包和 NixOS 模块仓库,NixOS的标准发行版也托管在这里。
| Share Nix packages & NixOS modules
| 分享 Nix 软件包和 NixOS 模块
| MIT
| MIT
|-
|-
| [[Hydra]]
| [[Hydra]]
| [https://nixos.org/hydra/manual/ Hydra Manual]
| [https://nixos.org/hydra/manual/ Hydra Manual]
| A Nix based continuous build system.
| 基于 Nix 的持续构建系统
| CI build farms
| CI build farms
| GPL-3.0
| GPL-3.0
Line 38: Line 36:
| [[Nix]]
| [[Nix]]
| [https://nixos.org/nix/manual/ Nix Manual]
| [https://nixos.org/nix/manual/ 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.
| 一款软件包管理器,能解析指定可重现构建的 Nix 表达式,并将结果与依赖关系树的哈希值一起放入存储地址,从而避免依赖关系地狱,并支持多版本安装和回滚。
| Reproducible builds & package management in Linux & Darwin
| Linux Darwin 中的可重现构建和软件包管理
| LGPL-2.1
| LGPL-2.1
|}
|}  
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
{| style="max-width: 36rem; margin: auto;"
{| style="max-width: 36rem; margin: auto;"
|+'''The NixOS core ecosystem stack'''
|+'''The NixOS core ecosystem stack'''
|style="text-align: center; border: 1px solid #ddd; background: #fafafa; padding: 1.6rem" width="2%"|
|style="text-align: center; border: 1px solid #ddd; background: #fafafa; padding: 1.6rem" width="2%"|
<div style="font-size: 1.3em; font-weight: bold">NixOS</div>
<div style="font-size: 1.3em; font-weight: bold">NixOS</div>
A Linux distribution and configuration system built using Nixpkgs
一个用Nixpkgs构建的linux发行版和配置系统
!
!
|-
|-
|style="text-align: center; border: 1px solid #ddd; background: #fafafa; padding: 1.6rem" width="2%"|
|style="text-align: center; border: 1px solid #ddd; background: #fafafa; padding: 1.6rem" width="2%"|
<div style="font-size: 1.3em; font-weight: bold">Nixpkgs</div>
<div style="font-size: 1.3em; font-weight: bold">Nixpkgs</div>
A large, community-maintained repository of packages
一个巨大的,社区维护的软件仓库
|style="text-align: center; border: 1px solid #ddd; background: #fafafa; padding: 1.6rem" width="2%"|
|style="text-align: center; border: 1px solid #ddd; background: #fafafa; padding: 1.6rem" width="2%"|
<div style="font-size: 1.3em; font-weight: bold">Hydra</div>
<div style="font-size: 1.3em; font-weight: bold">Hydra</div>
A continuous build system built on Nix
一个基于Nix的可持续构建系统
|-
|-
|style="text-align: center; border: 1px solid #ddd; background: #fafafa; padding: 1.6rem" width="2%" colspan="2"|
|style="text-align: center; border: 1px solid #ddd; background: #fafafa; padding: 1.6rem" width="2%" colspan="2"|
<div style="font-size: 1.3em; font-weight: bold">Nix</div>
<div style="font-size: 1.3em; font-weight: bold">Nix</div>
A pure and functional build system
一个纯粹而实用的构建系统
|}
|}
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
== NixOS的使用方式 ==
== Usage of NixOS ==
用户在自己的电脑上安装 NixOS 发行版,就像安装其他 Linux 发行版一样。阅读 https://search.nixos.org 和本维基来了解 Nixpgs 中的的软件包安装和配置选项。使用 Nix 语言在一个文本文件中,声明式的描述应安装哪些软件包以及如何配置系统。在终端运行两个命令行程序,来将系统转换到所描述的系统。像使用其他 Linux 系统一样使用该系统。
Users install the ''NixOS'' distribution on their computers just as any other Linux distribution. They read about packages to install and configuration options in ''Nixpgs'' via https://search.nixos.org and this wiki. They use the ''Nix'' language to declaratively describe in a text file what software packages should be installed and how the system should be configured. They run 2 command line programs in a terminal to transform the system into the described system. They use the system as any other Linux system.
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
== NixOS 的开发 ==
== Development of NixOS ==
''NixOS''的开发人员主要在''Nixpkgs''上工作,用''Nix''语言的文本文件描述软件包应该如何构建。经过同行评审后,这些修改将被整合到 ''Nixpkgs'' 中。其中一些软件包预先在''Hydra''上构建,以减少''NixOS''用户的更新时间。
Developers of ''NixOS'' mainly work on ''Nixpkgs'' to describe in text files in ''Nix'' language how software packages should be build. After peer review these changes are integrated in ''Nixpkgs''. Some of these packages are pre built on ''Hydra'' to reduce the update time for ''NixOS'' users.
</div>




<div lang="en" dir="ltr" class="mw-content-ltr">
[[Category:Pedias]]
[[Category:Pedias]]
[[Category:NixOS]]
[[Category:NixOS]]
[[Category:nix]]
[[Category:nix]]
</div>

Latest revision as of 11:23, 30 August 2024

“Nix核心生态”是一组技术,旨在以可重复的方式构建、声明式配置和管理软件包和系统及其依赖项。它通过利用名为Nix Language的动态、函数式和惰性求值的领域特定语言(DSL)将函数式编程范式从程序转换为系统来实现这一点,用于指定可重现的软件建构。

此外,Nix社区开发了许多其他的 应用程序 (“Nix扩展生态”),这些应用程序使用并为核心技术提供支持。

官方生态

Nix 生态核心组件
组件 手册(Manual) 描述 用途 协议
NixOS NixOS Manual 一个由 Nix 构建所有组件的 Linux 发行版,因此支持可重现的、声明式的全系统配置管理以及原子升级和回滚。 声明式配置桌面、服务器和集群。 MIT
Nixpkgs Nixpkgs Manual 最大的社区维护的 Nix 软件包和 NixOS 模块仓库,NixOS的标准发行版也托管在这里。 分享 Nix 软件包和 NixOS 模块 MIT
Hydra Hydra Manual 基于 Nix 的持续构建系统 CI build farms GPL-3.0
Nix Nix Manual 一款软件包管理器,能解析指定可重现构建的 Nix 表达式,并将结果与依赖关系树的哈希值一起放入存储地址,从而避免依赖关系地狱,并支持多版本安装和回滚。 Linux 和 Darwin 中的可重现构建和软件包管理 LGPL-2.1
The NixOS core ecosystem stack
NixOS

一个用Nixpkgs构建的linux发行版和配置系统

Nixpkgs

一个巨大的,社区维护的软件仓库

Hydra

一个基于Nix的可持续构建系统

Nix

一个纯粹而实用的构建系统

NixOS的使用方式

用户在自己的电脑上安装 NixOS 发行版,就像安装其他 Linux 发行版一样。阅读 https://search.nixos.org 和本维基来了解 Nixpgs 中的的软件包安装和配置选项。使用 Nix 语言在一个文本文件中,声明式的描述应安装哪些软件包以及如何配置系统。在终端运行两个命令行程序,来将系统转换到所描述的系统。像使用其他 Linux 系统一样使用该系统。

NixOS 的开发

NixOS的开发人员主要在Nixpkgs上工作,用Nix语言的文本文件描述软件包应该如何构建。经过同行评审后,这些修改将被整合到 Nixpkgs 中。其中一些软件包预先在Hydra上构建,以减少NixOS用户的更新时间。