答案1
基本上,这两个发行版之间没有任何架构差异,除了处理 init 系统的方式不同:Guix System 使用 GNU Sheperd,而 NixOS 使用 System D。
据我所知,Guix/Guix System 是 Nix/NixOS 中框架的重新实现,利用 GNU 工具。换句话说,它就像 NixOS,但具有不同的用户体验:
- 与 Nix 和 Bash 相比,其整个代码库都是使用 Guile 和 Lisp 开发的。
- 它使用 GNU Shepherd 代替 System D。
- Guix 不打包非自由软件
nixpkgs
。 - Guix 提供对 GNU Herd 内核的支持。
大约一年前我尝试了 Guix,当时发现了一些限制:
- 无法在 LVM 上安装根文件系统。
- 构建包需要重新编译所有 Guix 模块。
值得注意的是nixpkgs
是最大的软件包存储库之一,而 Guix 存储库受到维护者数量有限和“仅限自由软件”的限制。 Nix 项目也更加成熟,拥有十年的领先优势和更大的社区。
此外,由于 Nix 是一个包管理器,因此它可以安装在任何发行版上,包括 Guix 系统。这意味着您可以nixpkgs
在 Guix 系统上使用 Nix 安装软件包。
正如 MegaTux 的评论所指出的,Guix 也是一个独立的包管理器(随 Guix System 发行版一起提供)并且可以安装在任何发行版上。