200字
安装 niri + noctalia-shell
2026-01-16
2026-03-15

安装 niri + noctalia-shell

若想使用niri窗口管理器,又不想额外配置壁纸、waybar及其他零碎组件,搭配noctalia-shell是非常不错的选择。noctalia-shell已原生整合状态栏、启动器、通知中心等核心组件,无需额外搭配其他工具。不需要繁琐配置就可以获得完整桌面体验

效果预览

桌面:
桌面

菜单:
菜单

状态栏:
状态栏

设置:
设置

安装 niri 窗口管理器

niri的安装目前主要有两种方式:通过发行版官方软件包或源码编译安装。这里推荐使用yay安装,无需手动编译,操作更便捷且能获取较新版本。

使用 yay 安装 niri

首先需确认yay已安装,yay是Arcch Linux下的AUR助手,若未安装,可执行以下命令完成安装:


sudo pacman -S --needed git base-devel 
git clone https://aur.archlinux.org/yay.git 
cd yay 
makepkg -si

yay安装完成后,即可直接从AUR拉取niri包并完成安装,无需手动编译,执行以下命令即可:


yay -S niri

安装过程中会提示确认依赖和编译选项,默认按回车确认即可,等待安装完成。安装完成后,可通过以下命令验证安装是否成功,若能显示版本号则说明安装成功:


niri --version
# 示例输出:niri 0.1.0 (abc1234)

配置 niri 启动入口

安装完成后,需为 niri 配置启动入口,以便在登录界面选择 niri 桌面。Wayland 桌面通常通过 .desktop 文件定义启动入口,具体步骤如下:

首先创建启动配置文件,执行以下命令:


sudo nano /usr/share/wayland-sessions/niri.desktop

输入内容并保存:


[Desktop Entry]
Name=niri
Comment=Wayland session with niri compositor
Exec=niri
Type=Application

若系统使用 sddm 登录管理器,配置完成后可直接识别 niri 启动项。在 sddm 界面点击用户名下方的桌面环境菜单,选中“niri”后输入密码即可登录。

安装 NoctaliaShell

noctalia-shell 提供两种安装方式,可根据自身发行版类型及需求选择。

非 Arch 系列发行版若无法通过包管理器安装,可前往其 GitHub 仓库获取。

noctalia-shell的Github:https://github.com/noctalia-dev/noctalia-shell

noctalia-shell的Doc文档:https://docs.noctalia.dev/

使用包管理器安装 noctalia-shell

Arch 系列发行版可直接通过 yay 安装 noctalia-shell,行以下命令从AUR拉取并安装noctalia-shell:


yay -S noctalia-shell

手动安装,适用于任何Linux发行版

安装依赖,对于其他发行版,使用自带的包管理器安装:


yay -S quickshell gpu-screen-recorder brightnessctl
yay -S ddcutil
yay -S cliphist matugen-git cava wlsunset xdg-desktop-portal python3 evolution-data-server
yay -S polkit-kde-agent

各类依赖说明及用途如下:

必填依赖

  • quickshell:核心壳框架,noctalia-shell 运行基础

  • gpu-screen-recorder:提供屏幕录制功能

  • brightnessctl:用于内置/笔记本显示器亮度控制

硬件专用依赖

  • ddcutil:用于桌面显示器亮度控制(⚠️ 部分显示器可能导致系统不稳定)

可选但推荐依赖

  • cliphist:提供剪贴板历史支持

  • matugen-git:材质生成工具,可根据颜色配色自动生成对应材质

  • cava:音频可视化组件,增强桌面视觉体验

  • wlsunset:夜灯功能,降低夜间屏幕蓝光

  • xdg-desktop-portal:启用屏幕录制中的“门户”选项,优化录制权限管理

  • python3 与 evolution-data-server:用于日历活动相关功能

  • polkit-kde-agent:仅在认证电池管理器安装以确定笔记本充电限制时需要

下载并安装Noctalia


mkdir -p ~/.config/quickshell/noctalia-shell && curl -sL https://github.com/noctalia-dev/noctalia-shell/releases/latest/download/noctalia-latest.tar.gz | tar -xz --strip-components=1 -C ~/.config/quickshell/noctalia-shell

配置 noctalia-shell 自动启动

为让 noctalia-shell 在 niri 启动时自动运行,需配置 niri 的自动启动脚本。niri 的配置文件默认位于 ~/.config/niri/config.kdl,具体步骤如下:


vim ~/.config/niri/config.kdl

打开配置文件后,在合适位置添加自动启动 noctalia-shell 的指令,可根据实际配置调整放置位置,建议放在文件中无冲突的独立区域:


spawn-sh-at-startup "qs -c noctalia-shell"

添加完成后,按Ctrl+O保存、Ctrl+X退出nano编辑器,如此在niri启动时,会自动执行noctalia-shell命令,加载状态栏等组件。

壁纸设置

Noctalia-shell 可直接对接 niri 的壁纸相关配置,无需额外安装壁纸工具。为获得最佳体验,需根据需求在 niri 配置文件中进行对应设置,同时配合 Noctalia-shell 的相关开关调整。以下提供三种主流壁纸设置方案,可按需选择。

所有配置均需添加至 niri 配置文件(默认路径:~/.config/niri/config.kdl),添加后保存退出即可生效(不生效就尝试注销重新登录)。

核心说明

niri 中的 “backdrop” 指所有工作区后方的图层,仅在触发概览模式时可见;Noctalia-shell 的壁纸开关位于其设置界面的 “Wallpaper” 标签页,需根据所选方案开启或关闭 “Enable overview wallpaper” 选项。

方案一:模糊概览壁纸

此方案仅在 niri 概览模式下显示模糊、变暗的壁纸副本,日常工作区无额外壁纸干扰,契合极简需求。


// 让概览壁纸显示在 backdrop 图层
layer-rule {
  match namespace="^noctalia-overview*"
  place-within-backdrop true
}

注意事项:需在 Noctalia-shell 设置的 “Wallpaper” 标签页中,开启 “Enable overview wallpaper” 选项;此方案会为每个显示器额外处理一张壁纸,内存占用略高。

方案二:固定壁纸(全程可见)

此方案设置的壁纸全程可见,切换工作区时不会滚动,适合喜欢固定桌面风格的场景。


// 让常规壁纸显示在 backdrop 图层
layer-rule {
  match namespace="^noctalia-wallpaper*"
  place-within-backdrop true
}

// 将工作区背景设为透明,确保 backdrop 图层的壁纸可见
layout {
  background-color "transparent"
}

// (可选)关闭概览模式下的工作区阴影,视觉更简洁
overview {
  workspace-shadow {
    off
  }
}

注意事项:需在 Noctalia-shell 设置的 “Wallpaper” 标签页中,关闭 “Enable overview wallpaper” 选项。

方案三:纯色概览背景(高效生产力风)

此方案无传统壁纸,概览模式背景为纯色,减少视觉干扰,适合专注工作场景。


overview {
  // 自定义概览背景色,可替换为任意喜欢的色值(示例为深紫色系)
  backdrop-color "#26233a"
}

注意事项:需在 Noctalia-shell 设置的 “Wallpaper” 标签页中,关闭 “Enable overview wallpaper” 选项;色值可根据个人喜好或桌面配色方案调整,推荐使用 matugen-git 生成配套色值。

评论