用于桌面的NixOS
NixOS 是一款功能多样的操作系统,适用于各种用例。本文面向希望将 NixOS 作为主要桌面环境(无论是在物理硬件还是虚拟机中)的用户。此外,计划在 云端 环境或专用服务器基础架构上部署 NixOS 的用户,可能会发现从这里介绍的概念和实践开始会很有帮助,因为它们为在更广泛的 Nix 生态系统 中工作奠定了有益的基础。
安装
如果你倾向于阅读, 请从NixOS安装指南开始. 如果你想选择一个精良的视频教程, 请见下一条. 请记住, 为了安装一个桌面, 你需要确定一开始有至少30GiB的可用硬盘空间来容纳桌面环境(比如说, GNOME, KDE, 或者是XFCE), 浏览器(比如Firefox), 以及其他带有图形界面的典型日用软件(如VSCode). 对于相对简陋的配置, 15GiB可能够用.
管理你的配置
你可以使用NixOS官方手册中记录的方式来管理你的所有配置. 然而, 大部分在桌面上使用NixOS的社区成员更喜欢使用Home Manager来管理他们的配置(比如"点文件")(citation needed). Home Manager是一个面向用户的工具, 用于声明你想安装什么, 以及你想如何配置它. 对于大部分设置, 如果你不使用Home Manager的话, 你就要把它们放入configuration.nix, 或者使用nix-env.
关于如何管理配置,请参阅 NixOS 官方手册。
系统配置
- Main article: NixOS 系统配置
/etc/nixos/configuration.nix是主配置文件,用于定义系统级设置。其中包括启用服务、管理系统用户、配置硬件选项以及指定安装的软件包。
若要使更改生效,请运行:
# nixos-rebuild switch
使用 Home Manager 管理用户配置
针对应用程序偏好设置、命令行工具以及 dotfiles 等用户级配置的管理,Home Manager 提供了一种便捷的声明式方案。
它允许用户自行定义需要安装的程序及其具体配置方式,而无需将这些设置写入系统级的 configuration.nix 中。
Home Manager 可以独立于系统配置使用,既支持传统设置,也支持基于 Flakes 的新式配置。
通过Flakes
如果你想要可组合性[citation needed]更强的NixOS配置设定, 仍在实验阶段的Flakes特性正在使社区感到十分兴奋. 管理flakes需要对Nix生态有良好的基本理解和一些已有的实践经验.
关于如何开始的详细信息,请参考 NixOS system configuration#Defining NixOS as a flake。
在初始设置之外
在你熟悉了Nix生态并安装了一个功能性的NixOS桌面后, 你可能会想了解定制化和更细化的设置.
常见配置项包含:
桌面环境
安装并配置功能完备的桌面环境,如 GNOME、KDE Plasma 或 Xfce。
完整列表请参阅 Category:Desktop environment。
窗口管理器
设置 i3、Sway、Hyprland 或 xmonad 等轻量级或平铺式窗口管理器。
完整列表请参阅 Category:Window managers。
显示管理器(登录管理器)
配置图形会话管理器,例如 GDM、SDDM 或 LightDM。
音频配置
启用并配置 音频 系统,例如 PipeWire、PulseAudio 或 ALSA。
网络管理
使用诸如 NetworkManager 或 systemd-networkd 的工具来管理 网络 连接。
蓝牙支持
使用 blueman 或其他工具配置与管理蓝牙。
电源管理
使用诸如 tlp 或 systemd 服务等工具配置 笔记本 的 电池管理、挂起与休眠。
Printing and Scanning
启用 Cups 以支持打印机,并使用诸如 Sane 的工具来支持 扫描 设备。
提示和技巧
通过 NixOS 模块机制模块化你的配置
另见
在对NixOS设置的比较中可查看一个对常见选择进行比较的表格.