Nixpkgs 是一个包含超过 40,000 个软件包的集合,可以使用 Nix 包管理器进行安装。它还实现了 NixOS,一个纯函数式 Linux 发行版。
手册
- NixOS 手册 - 如何安装、配置和维护一个纯函数式 Linux 发行版
- Nixpkgs 手册 - 为 Nixpkgs 做贡献以及使用特定编程语言的 Nix 表达式
- Nix 包管理器手册 - 如何编写 Nix 表达式(程序),以及如何使用 Nix 命令行工具
社区
其他项目仓库
所有官方 Nix 相关项目的源代码都在 GitHub 上的 NixOS 组织中。以下是一些 主要项目:
- Nix - 纯函数式包管理器
- NixOps - 远程部署 NixOS 机器的工具
- Nix RFCs - 对社区进行重大更改的正式流程
- NixOS 主页 - NixOS.org 网站
- hydra - 我们的持续集成系统
- NixOS 艺术作品 - NixOS 艺术作品
持续集成与分发
Nixpkgs 和 NixOS 由我们的持续集成 系统 Hydra 构建和测试。
通过 Hydra 成功构建的工件会发布到缓存 https://cache.nixos.org/。当满足成功的构建和测试标准时, Nixpkgs 表达式将通过 Nix channels 分发。这些 channels 通过 Nixpkgs 仓库的一个只读镜像提供,该镜像名为 nixpkgs-channels。
贡献
Nixpkgs 是 GitHub 上最活跃的项目之一。虽然数千个 未解决的 issue 和 pull request 乍看之下似乎很多,但将其放在 项目的范围背景下考虑会有所帮助。Nixpkgs 描述了如何构建超过 40,000 个软件包,并实现了一个 Linux 发行版。GitHub Insights 页面展示了项目的活动情况。
通过 GitHub Issues 和 Pull Requests 始终欢迎社区贡献。当提交 pull request 时,我们的工具自动化机器人 OfBorg 将执行各种检查 以帮助确保表达式的质量。
Nixpkgs 维护者 是那些被指定 维护特定单个软件包的人。我们鼓励关心 某个软件包的人将自己指定为维护者。当针对某个软件包 提交 pull request 时,OfBorg 将通知相应的 维护者。Nixpkgs 提交者 是那些被赋予 合并权限的人。
大多数贡献基于以下分支并合并到这些分支中:
master是主分支,所有小型贡献都进入此分支staging从 master 分支分出,对 Hydra 构建有重大影响的更改进入此分支staging-next从 staging 分支分出,仅用于稳定 以及对 Hydra 构建有重大影响的安全修复, 应贡献到此分支。当此分支被认为质量足够高时, 将合并到 master 分支
有关向该项目贡献的更多信息,请访问 贡献页面。
捐赠
NixOS 及相关项目的基础设施由一个 非营利组织维护,即 NixOS 基金会。为确保 NixOS 基础设施的持续性和扩展,我们正在 寻求向我们组织捐赠。
您可以通过使用 Open Collective 向 NixOS 基金会捐赠:
许可证
Nixpkgs 采用 MIT 许可证。
注意:MIT 许可证不适用于由 Nixpkgs 构建的软件包, 仅适用于本仓库中的文件(Nix 表达式、构建 脚本、NixOS 模块等)。它也可能不适用于 包含在 Nixpkgs 中的补丁,这些补丁可能是其所适用 软件包的衍生作品。上述所有产物均受 相应软件包许可证的约束。
