Gue*_*0x0 6 linux lfs nixos nix
是否有可能从头开始开发一个基于Nix(包管理器,而不是 nixos 发行版)的 Linux 系统?进一步来说:
AFAIK Nix 提供了 glibc、gcc、linux 内核等基础设施包。这是否意味着不需要像 LFS 那样手动构建这些包?
Nixos 本身使用 systemd,但我知道not-os,它基于 runit。nixpkg 软件包对 systemd 的依赖程度如何?
Nixos 似乎仅支持 grub 作为引导加载程序。可以将 EFI-stub 引导与 dracut 或手工卷起的 initcpio 一起与 Nix 一起使用吗?
如果您好奇,这就是原因:
我喜欢 gentoo 的 USE 标志,但是有点厌倦了 gentoo 频繁的依赖地狱和世界重新编译(特别是在 python 版本控制方面,尽管这本质上不是 gentoo 的错,哈哈)。因此,我正在寻找一个包管理器,它对基于源的包和二进制包都有很好的支持,并且具有更简单的依赖关系处理。我在 Arch (Artix) 和 Void 之间徘徊,但在这两种情况下都必须手动管理源包。最后我发现尼克斯非常适合。
纯粹出于乐趣和美观的原因,我想尝试一个非 systemd 发行版。
我更喜欢 EFI 存根。
我使用 ZFS 作为根文件系统,它需要特殊的 initcpio。
简而言之,是的,您可以使用 Nix 和 Nixpkgs 作为基础来推出自己的 Linux 发行版。
glibcAFAIK Nix 提供了诸如Linux 内核等基础设施包gcc。这是否意味着不需要像 LFS 那样手动构建这些包?
正确的。您应该能够使用现有的软件包。
Nixos 本身使用 systemd,但我知道 not-os,它基于 runit。nixpkg 软件包对 systemd 的依赖程度如何?
考虑到 Nixpkgs 和 NixOS 位于同一个 Git 存储库中,这很难说。Nixpkgs不应依赖于 systemd(除了提供 systemd 软件包之外),但可能存在一些依赖关系。
Nixos 似乎仅支持 grub 作为引导加载程序。可以将 EFI-stub 引导与 dracut 或手工卷起的 initcpio 一起与 Nix 一起使用吗?
NixOS 支持 systemd-boot 和 GRUB。我想不出为什么不可能支持其他引导加载程序的原因。