Home Manager 使用 Nix
本项目提供了一个使用 Nix 包管理器以及 Nixpkgs 中找到的 Nix 库来管理用户环境的基础系统。它允许对用户特定的(非全局的)包和 dotfiles 进行声明式配置。
Usage
在尝试使用 Home Manager 之前,请先阅读 下方的警告。
如需系统性地了解 Home Manager 及其可用选项,请参阅:
如果您希望为 Home Manager 做出贡献,请查看 手册中的“Contributing”。
Releases
Home Manager 针对 nixpkgs-unstable 分支进行开发,这通常导致其包含针对尚未在稳定版
NixOS 中发布的更改/包的调整。
为避免破坏用户的配置,Home Manager 在与 NixOS 发布版本对应的分支中发布(例如 release-26.05)。这些分支会获得修复,但通常不会包含新模块。如果您需要某个模块被回溯移植,请随时提交 issue。
Words of warning
不幸的是,在使用 Home Manager 时,出现难以理解的错误是有可能的。因此,您应该熟悉使用 Nix 语言以及 Nix 生态系统中的各种工具。
如果您对 Nix 不太熟悉,但仍希望使用 Home Manager,那么 强烈建议您从一个小型且非常简单的配置开始, 并随着学习的深入逐渐使其更加复杂。
在某些情况下,Home Manager 无法检测是否会覆盖之前的 手动配置。例如,Gnome Terminal 模块会写入您的 dconf 存储,并且无法判断即将被覆盖的配置是来自之前的 Home Manager 生成版本还是来自手动 配置。
Home Manager 的目标是 nixpkgs-unstable 和 NixOS 版本 26.05(当前
稳定版本),它可能或不兼容其他 Linux 发行版和 NixOS
版本。
现在,当您的期望已经建立,并且您渴望尝试所有这些 时,您可以继续阅读本文的其余部分。
联系
您可以在 IRC 的 #home-manager 频道上与 OFTC 上的我们聊天。 还有一个 Matrix 房间,它桥接到 该 IRC 频道。
安装
Home Manager 可以通过三种主要方式使用:
-
使用独立的
home-manager工具。对于 NixOS 和 Darwin 以外的平台,这是唯一可用的选择。对于希望独立于整个系统管理其主目录的 NixOS 或 Darwin 用户,也推荐此方式。请参阅手册中的 "Standalone installation" in the manual 以了解如何执行此 安装。 -
作为 NixOS 系统配置中的一个模块。这允许在运行
nixos-rebuild时,用户配置文件与系统一起构建。 有关此设置的说明,请参阅手册中的 "NixOS module" in the manual。 -
作为 nix-darwin 系统配置中的一个模块。这允许在运行
darwin-rebuild时,用户配置文件与系统一起构建。 有关此设置的说明,请参阅手册中的 "nix-darwin module" in the manual。
Home Manager 同时提供基于 channel 的设置和基于 flake 的设置。有关基于 flake 的设置的说明,请参阅 Nix Flakes。
Translations
Home Manager 通过 gettext 提供基本的国际化支持。翻译由 Weblate 托管。如果您希望参与 翻译工作,请从前往 Home Manager Weblate project 开始。
许可证
本项目依据 MIT 许可证 的条款授权。