
这次我们来看一个针对 Arch Linux 的桌面环境搭建教程主题是“手把手带5个月前的小白我安装调校 Archniridms 全流程 桌面篇”。对于很多想尝试 Arch Linux 但又被其“硬核”名声劝退的用户来说一个清晰、完整、从零开始的桌面环境搭建指南至关重要。本文不空谈概念直接聚焦于如何将 Arch 基础系统一步步配置成一个功能完善、美观且可用的现代化桌面环境核心组件包括 Niri平铺式 Wayland 合成器和 DMS显示管理器。无论你是刚接触 Linux 几个月的新手还是希望尝试新桌面组合的老用户这篇流程都能帮你避开常见坑点快速获得一个稳定工作的桌面。本文的核心价值在于提供一套经过验证的、可复现的操作序列。我们将从最基础的 Arch 安装后状态开始涵盖网络配置、用户管理、图形驱动安装、桌面环境核心组件Niri、DMS的部署与集成、常用应用安装、输入法配置以及必要的美化调校。整个过程会重点关注命令的准确性、依赖的完整性以及出现问题时的排查思路确保你不仅能照着做出来还能理解每一步在做什么。1. 核心能力速览本教程能帮你实现什么在深入细节之前我们先通过一个表格快速了解通过本教程你将构建的桌面系统具备哪些核心能力和特点。能力项说明与目标基础系统一个纯净的、已完成基本安装的 Arch Linux 系统。图形环境基于 Wayland 协议而非传统的 X11提供更现代的图形体验。桌面合成器使用Niri一个 Rust 编写的、动态平铺式 Wayland 合成器兼顾美观与高效。显示管理器使用DMS (Display Manager and Seat)一个轻量级、模块化的显示管理器用于图形化登录。桌面功能具备网络管理、声音控制、蓝牙支持、通知系统、屏幕截图、应用启动器等基础桌面功能。输入法配置中文输入法如 Fcitx5支持在 Wayland 环境下流畅输入。适用硬件支持 Intel/AMD/NVIDIA 显卡需正确安装驱动对硬件要求较为灵活。适合人群希望深入学习 Linux 桌面定制、追求轻量高效、或对平铺窗口管理器感兴趣的用户。核心挑战过程涉及大量终端命令和配置文件编辑需要耐心和一定的排错能力。2. 适用场景与使用边界在开始之前明确这个桌面方案的适用场景和潜在限制非常重要这能帮助你判断它是否适合你。适合谁用Linux 学习与爱好者如果你想真正理解 Linux 桌面是如何从零搭建起来的而不仅仅是点击“下一步”安装一个现成的发行版这个过程极具教育意义。追求轻量与性能的用户Niri 作为平铺式合成器相比 GNOME 或 KDE 等完整桌面环境DE资源占用更低响应更迅速。喜欢定制与掌控感的用户从显示管理器到窗口管理器每一个组件都可以按你的喜好选择和配置。希望使用 Wayland 的用户Wayland 是未来 Linux 图形显示的发展方向能更好地解决多显示器、高DPI缩放等问题。不适合什么场景追求开箱即用如果你需要的是一个安装完就能投入日常办公、娱乐的系统Ubuntu、Fedora Workstation 或 Manjaro 是更好的选择。对终端命令有恐惧感整个配置过程几乎完全在命令行下完成需要频繁编辑配置文件。硬件的专有驱动支持不佳虽然教程会涵盖驱动安装但某些非常新的或特别老的硬件在 Arch Wayland 下的兼容性可能需要额外折腾。需要特定商业软件某些仅支持特定桌面环境如仅支持 GNOME 的某些扩展或仅提供 .deb 包的软件在 Arch 上可能需要更多配置。重要边界提醒数据安全操作前务必备份重要数据。对磁盘分区、系统配置的修改有风险。时间投入这不是一个10分钟能完成的过程请预留足够的连续时间。网络环境Arch Linux 的安装和软件包获取高度依赖网络请确保稳定的网络连接。3. 环境准备与前置条件开始桌面环境搭建前你的系统必须处于一个正确的起点。我们假设你已经完成了 Arch Linux 的基础安装。必备前提状态检查清单已完成的 Arch 基本安装包括分区、格式化、挂载、pacstrap安装基础系统、genfstab、arch-chroot、设置时区、本地化、主机名、Root 密码等步骤。你的系统应该已经可以重启并进入一个纯命令行的登录界面。可用的网络连接在命令行下你需要确保网络是通的。如果是有线网络且支持 DHCP通常开机即用。如果是无线网络你需要使用iwctl工具进行连接。# 进入 iwctl 交互式环境 iwctl # 在 iwctl 提示符下列出设备 station list # 扫描网络 station 设备名 scan station 设备名 get-networks # 连接网络 station 设备名 connect 网络SSID # 输入密码后退出 iwctl exit # 测试网络 ping archlinux.org已创建普通用户强烈不建议日常使用 root 用户。在基本安装过程中或在当前系统下创建一个普通用户并加入wheel组用于sudo。# 创建用户例如用户名为 myuser useradd -m -G wheel -s /bin/bash myuser # 为用户设置密码 passwd myuser # 编辑 sudoers 文件为 wheel 组赋予 sudo 权限使用 visudo 安全编辑 EDITORnano visudo # 找到 # %wheel ALL(ALL:ALL) ALL 这一行去掉行首的 # 注释符号保存退出。已启用必要的 Arch 仓库确保/etc/pacman.conf中[multilib]仓库已启用如果你需要运行32位程序或某些游戏并且已经同步了软件包数据库 (sudo pacman -Syy)。如果你的系统尚未满足以上任何一点请先完成 Arch Wiki 上的“安装指南”部分再继续本文。4. 安装部署构建图形栈核心满足前置条件后我们就可以开始安装图形桌面所需的核心组件了。请以 root 身份或使用sudo执行以下命令。4.1 安装显卡驱动根据你的显卡型号安装对应的驱动。这是图形桌面能否正常工作的基础。Intel 集成显卡sudo pacman -S mesa vulkan-intelAMD 显卡sudo pacman -S mesa vulkan-radeonNVIDIA 显卡# 对于较新的显卡安装开源驱动性能可能不如闭源但Wayland兼容性更好 sudo pacman -S mesa vulkan-radeon nvidia-open-dkms # 或者安装闭源驱动性能好但需注意与Wayland和内核版本的兼容性 # sudo pacman -S nvidia nvidia-utils nvidia-settings # 安装闭源驱动后可能需要手动配置内核模块参数具体请参考 Arch Wiki NVIDIA 页面。4.2 安装显示服务器与核心组件我们将使用 Wayland。同时安装一些必要的工具和库。sudo pacman -S wayland wayland-protocols xorg-xwayland qt5-wayland glfw-waylandwaylandWayland 显示服务器协议。xorg-xwaylandXWayland 兼容层让仅支持 X11 的旧应用能在 Wayland 下运行。qt5-wayland,glfw-wayland让基于 Qt 和 GLFW 的应用支持 Wayland。4.3 安装显示管理器 DMSDMS 是一个相对较新且轻量的显示管理器。我们将安装它并启用其服务。# 从 AUR 安装 DMS。你需要一个 AUR 助手这里以 yay 为例。 # 首先安装 yay如果尚未安装 sudo pacman -S --needed git base-devel git clone https://aur.archlinux.org/yay.git cd yay makepkg -si cd .. rm -rf yay # 使用 yay 安装 DMS yay -S dms安装完成后需要配置并启用 DMS 服务。# 复制默认配置文件到用户目录进行编辑以普通用户身份操作 cp /usr/share/dms/config.toml ~/.config/dms/config.toml # 编辑配置文件指定要启动的会话。找到 sessions 部分添加 niri。 # 使用你喜欢的编辑器如 nano 或 vim nano ~/.config/dms/config.toml在配置文件中找到类似下面的部分确保niri在会话列表中[sessions] # 定义可用的桌面会话 niri { exec niri, desktop_names [niri] }保存退出后启用并启动 DMS 系统服务需要 root 权限sudo systemctl enable dms sudo systemctl start dms如果一切顺利重启系统 (sudo reboot) 后你应该能看到 DMS 的图形化登录界面。4.4 安装窗口合成器 NiriNiri 是我们的平铺式 Wayland 合成器。它也可以通过 AUR 安装。# 使用 yay 从 AUR 安装 niri yay -S niriNiri 本身非常精简它需要一个“会话”脚本来启动必要的桌面服务如状态栏、网络管理器等。我们可以创建一个简单的启动脚本。以普通用户身份创建~/.local/bin/start-niri.sh#!/bin/bash # 启动网络管理器托盘图标需要安装对应的包 nm-applet --indicator # 启动蓝牙托盘图标如果需要 blueman-applet # 启动状态栏例如 Waybar需先安装 # waybar # 启动 Niri exec niri赋予脚本执行权限chmod x ~/.local/bin/start-niri.sh现在我们需要告诉 DMS当选择 “niri” 会话时就执行这个脚本。编辑 DMS 的配置文件~/.config/dms/config.toml修改之前添加的niri会话的exec字段[sessions] niri { exec ~/.local/bin/start-niri.sh, desktop_names [niri] }注意~/.local/bin需要在你用户的PATH环境变量中或者使用绝对路径例如/home/myuser/.local/bin/start-niri.sh。4.5 安装基础桌面功能组件一个可用的桌面还需要以下组件# 网络管理 (NetworkManager) sudo pacman -S networkmanager network-manager-applet sudo systemctl enable NetworkManager sudo systemctl start NetworkManager # 音频 (PipeWire 是现代选择) sudo pacman -S pipewire pipewire-pulse pipewire-alsa wireplumber systemctl --user enable pipewire pipewire-pulse wireplumber # 蓝牙 sudo pacman -S bluez bluez-utils blueman sudo systemctl enable bluetooth sudo systemctl start bluetooth # 通知守护进程 sudo pacman -S dunst # 屏幕截图工具 sudo pacman -S grim slurp # grim 截图slurp 选择区域 # 应用启动器例如 Rofi 的 Wayland 版本 yay -S rofi-lbonn-wayland安装后你可以将nm-applet、blueman-applet等命令添加到上面的start-niri.sh脚本中。5. 功能测试与效果验证完成核心安装后是时候重启并验证我们的桌面环境了。5.1 首次登录与桌面启动执行sudo reboot重启系统。在启动后期你应该能看到DMS的登录界面。在登录界面上通常有一个会话选择器可能是一个图标或下拉菜单。选择“niri”。输入你的用户名和密码点击登录。如果一切配置正确屏幕会闪烁一下然后进入Niri的桌面环境。初始的 Niri 界面可能非常简洁只有一个空背景和你的鼠标指针。5.2 基础功能验证登录后请按顺序验证以下功能网络连接检查屏幕右上角或系统托盘中是否有网络图标来自nm-applet。点击它应该能看到可用的 Wi-Fi 网络或有线连接状态。尝试连接网络并打开浏览器测试。声音输出播放一段测试音频你可以事先在~目录放一个 .wav 文件用paplay test.wav命令播放检查是否有声音。窗口管理打开一个终端默认快捷键可能是SuperEnter即 Windows 键回车具体需看 Niri 配置。尝试再打开几个终端或其他应用如firefox。观察窗口是否自动平铺排列。尝试用鼠标拖动窗口标题栏或用快捷键如Super方向键移动窗口、调整大小。应用启动器按Superd或Super空格取决于 Rofi 配置应该能调出应用启动器输入应用名如terminal,firefox可以启动。5.3 常见问题与初步排查如果登录后黑屏或返回登录界面检查日志在 DMS 登录界面尝试切换到tty2按CtrlAltF2用你的普通用户登录。查看 Niri 和 DMS 的日志。# 查看用户服务的日志 journalctl --user -u dms-sessionniri.service -b # 或者查看系统日志中与图形相关的部分 journalctl -b -g “niri\|wayland\|drm”检查脚本权限与路径确认~/.local/bin/start-niri.sh有执行权限并且其中的命令路径正确。可以在tty下手动执行这个脚本看报错。检查显卡驱动确保安装了正确的显卡驱动。可以尝试在tty下运行glxinfo -B或nvidia-smiN卡来检查驱动状态。6. 桌面环境调校与美化一个能用的桌面是第一步一个好用的桌面还需要进一步配置。Niri 的配置主要通过~/.config/niri/config.kdl文件完成。6.1 配置 Niri 基础键位与布局创建或编辑 Niri 的配置文件nano ~/.config/niri/config.kdl以下是一个极简的配置示例定义了启动终端和退出 Niri 的快捷键// ~/.config/niri/config.kdl layout { focus-ring enabledtrue focus-ring-color “#88c0d0” border-width 2 active-border-color “#88c0d0” inactive-border-color “#2e3440” } key-bindings { // SuperReturn 打开终端 “superRETURN” spawn “foot” // foot 是一个 Wayland 原生终端需先安装sudo pacman -S foot // SuperShiftq 关闭当前窗口 “superSHIFTq” close-window // SuperShifte 退出 niri (回到登录界面) “superSHIFTe” exit // Superd 打开应用启动器 rofi “superd” spawn “rofi -show drun” // 移动焦点 “superh” focus-left “superj” focus-down “superk” focus-up “superl” focus-right // 移动窗口 “supershifth” move-left “supershiftj” move-down “supershiftk” move-up “supershiftl” move-right }保存后在 Niri 会话中按SuperShiftr可以重载配置。你需要先安装foot和rofi才能使上述键位生效。6.2 安装与配置状态栏WaybarWaybar 是一个流行的 Wayland 兼容状态栏。# 安装 Waybar sudo pacman -S waybar创建 Waybar 配置mkdir -p ~/.config/waybar cp /etc/xdg/waybar/config ~/.config/waybar/ cp /etc/xdg/waybar/style.css ~/.config/waybar/你可以编辑~/.config/waybar/config来定制模块显示时间、网络、电量、音量等。编辑~/.config/waybar/style.css来修改外观。 最后修改你的~/.local/bin/start-niri.sh脚本取消注释或添加waybar 这一行使其随 Niri 启动。6.3 配置中文输入法Fcitx5在 Wayland 下Fcitx5 是常用的输入法框架。# 安装 Fcitx5 及中文输入引擎 sudo pacman -S fcitx5 fcitx5-configtool fcitx5-gtk fcitx5-qt fcitx5-chinese-addons配置环境变量。编辑~/.pam_environment文件如果不存在则创建# ~/.pam_environment GTK_IM_MODULE DEFAULTfcitx QT_IM_MODULE DEFAULTfcitx XMODIFIERS DEFAULTimfcitx SDL_IM_MODULE DEFAULTfcitx GLFW_IM_MODULE DEFAULTibus # 注意某些Wayland应用可能需要这个编辑~/.xprofile或 Wayland 启动脚本我们将其加入start-niri.sh 在~/.local/bin/start-niri.sh中在exec niri之前添加... # 启动输入法 fcitx5 -d ... exec niri重启 Niri 会话后你应该能在系统托盘看到 Fcitx5 图标。右键点击图标选择“配置”添加“Pinyin”输入法即可。7. 资源占用与性能观察这套基于 Niri DMS 的桌面环境一个主要优势就是轻量。你可以通过以下命令观察资源使用情况查看内存占用在终端中运行htop或free -h。纯净的 Niri 会话本身内存占用可能仅在几十 MB 到一百多 MB远低于完整的 GNOME 或 KDE。查看 CPU 占用同样使用htop。在 idle 状态下CPU 占用率应该非常低。查看进程树pstree可以帮你理解桌面会话的进程结构确认start-niri.sh脚本启动的子进程如 waybar, nm-applet, fcitx5是否都在正常运行。性能调优点减少自启动程序只在start-niri.sh中启动你真正需要的守护进程和托盘应用。选择轻量应用使用foot代替gnome-terminal使用mpv代替大型视频播放器。Niri 配置在config.kdl中可以调整动画、阴影等效果关闭它们可以进一步提升响应速度。8. 常见问题与排查方法在配置过程中你可能会遇到以下问题。这里提供排查思路。问题现象可能原因排查方式解决方案DMS 登录界面不出现直接进入 tty1. DMS 服务未启用。2. 显卡驱动问题。3. 其他显示管理器冲突。1.sudo systemctl status dms2. 检查journalctl -b中图形相关错误。3. 检查是否安装了gdm,sddm等并禁用了它们。1.sudo systemctl enable --now dms2. 重装正确显卡驱动。3.sudo systemctl disable gdm(如果存在)。选择 niri 会话后黑屏并闪退回登录界面1.start-niri.sh脚本错误。2. Niri 配置错误。3. 依赖缺失。1. 在 tty 下手动执行~/.local/bin/start-niri.sh看报错。2. 检查~/.config/niri/config.kdl语法。3. 检查是否安装了foot,rofi等脚本中调用的程序。1. 修正脚本错误确保路径和命令正确。2. 使用niri --check验证配置。3. 安装缺失的包。登录后没有网络/声音/蓝牙托盘图标对应的 applet 没有在脚本中启动。检查start-niri.sh脚本确认nm-applet ,blueman-applet 等命令已添加且无误。将需要的 applet 启动命令添加到脚本并重启会话。无法输入中文1. Fcitx5 未启动。2. 环境变量未正确设置。3. 应用不支持。1. 检查进程 ps auxgrep fcitx。br2. 检查~/.pam_environment文件。br3. 尝试在终端里用fcitx5-diagnose 诊断。窗口无法平铺/快捷键无效Niri 配置未加载或键位冲突。1. 检查~/.config/niri/config.kdl是否存在且语法正确。2. 按SuperShiftr重载配置观察终端输出。1. 修正配置文件语法。2. 查阅 Niri 官方文档确认默认快捷键。Wayland 应用无法运行或显示异常缺少必要的 Wayland 库或环境。尝试安装qt5-wayland,glfw-wayland,xdg-desktop-portal-wlr等包。sudo pacman -S qt5-wayland glfw-wayland xdg-desktop-portal xdg-desktop-portal-wlr9. 最佳实践与使用建议为了让你的 Arch Niri DMS 桌面更稳定、更易维护请遵循以下建议配置版本管理将你的点配置文件如~/.config/niri/,~/.config/waybar/,~/.local/bin/start-niri.sh用 Git 管理起来。这样在调整配置时可以轻松回退。分阶段测试每安装一个核心组件如驱动、DMS、Niri或做一项关键配置后都重启或重新登录测试一次功能。这能帮你快速定位问题所在。善用 Arch Wiki 和社区Arch Wiki 是终极宝典。遇到任何包的问题首先去 Wiki 上搜索该包的名字。对于 AUR 包如niri,dms去 AUR 页面查看评论和最新动态可能已有解决方案。保持系统更新定期sudo pacman -Syu更新系统。但更新后特别是内核或显卡驱动更新后要留意桌面环境是否仍然正常。备份重要数据在进行任何可能影响系统稳定性的操作前例如尝试新的 AUR 包、修改核心配置确保你的个人文件已备份。理解组件职责清楚 DMS负责登录、Niri负责窗口合成与管理、Waybar状态栏、NetworkManager网络等各自的作用出问题时能知道该查哪里。10. 总结与下一步通过以上步骤你应该已经成功将一个基础的 Arch Linux 命令行系统转变为一个搭载了现代化 Wayland 合成器 Niri 和轻量显示管理器 DMS 的完整桌面环境。这个过程的核心价值不在于得到一个“完美”的桌面而在于你亲手搭建并理解了桌面环境的每一个组成部分。这个桌面目前是一个高效的“骨架”。接下来你可以根据自己的需求继续深化美化深入配置 Waybar 的主题寻找或制作 Niri 的漂亮壁纸配置终端foot的颜色方案和字体。功能增强安装更多必备软件如浏览器Firefox/Chromium、文件管理器nautilus/pcmanfm、办公套件OnlyOffice/FreeOffice。探索替代组件如果你对 Niri 的平铺逻辑不满意可以尝试 Sway、Hyprland 等其他 Wayland 合成器。显示管理器也可以换成 Ly 或甚至不用直接通过 TTY 启动。脚本化与自动化将整个安装和配置过程写成脚本方便在新机器上快速复现你的桌面环境。最值得尝试的下一步是开始真正使用这个桌面进行日常轻度任务在实践中感受其稳定性和效率并根据实际遇到的不便之处有的放矢地进行搜索和优化。这才是 Arch Linux “DIY”精神的精髓所在。