OFFSET偏移
← 文章目录OFFSET / FIELD NOTESNO. 035

Home Manager 桌面与主题配置

明确系统会话与用户外观的分工,配置 Hyprland、Plasma 和 GTK。

所在专题Home Manager:用户配置管理 ↗
约 4 分钟阅读开始阅读

架构分工:系统层 vs 用户层#

  • 系统层 (NixOS):负责安装基础包、开启显示管理器 (SDDM/GDM)、加载驱动。
  • 用户层 (Home Manager):负责设置壁纸、桌面快捷键、字体大小、任务栏布局。

实战:Hyprland 配置 (声明式)#

在 NixOS,你甚至不需要手动修改 hyprland.conf。

{
  wayland.windowManager.hyprland = {
    enable = true;
    settings = {
      # 这里就是原生的 hyprland 配置,只不过写成了 Nix 语法
      monitor = ",preferred,auto,auto";
      "$mod" = "SUPER";
      bind = [
        "$mod, RETURN, exec, kitty"
        "$mod, Q, killactive"
      ];
      decoration = {
        rounding = 10;
        blur.enabled = true;
      };
    };
  };
}

样式统一:KDE Plasma#

KDE 配置非常繁琐。如果你想把所有设置都纳入 Nix,可以使用 plasma-manager。

# 先在 Flake 输入中引入 plasma-manager,
# 并将 inputs.plasma-manager.homeManagerModules.plasma-manager 加入 HM imports/modules。
# 在 home.nix 中:
{
  programs.plasma = {
    enable = true;
    workspace = {
      theme = "breeze-dark";
      lookAndFeel = "org.kde.breezedark.desktop";
    };
    panels = [
      {
        location = "bottom";
        height = 36;
        widgets = [
          "org.kde.plasma.kickoff"
          "org.kde.plasma.icontasks"
          "org.kde.plasma.systemtray"
          "org.kde.plasma.digitalclock"
        ];
      }
    ];
  };
}

字体与主题 (GTK/Qt)#

统一 GTK 和 Qt 的外观是非常重要的。

{ pkgs, ... }: {
  gtk = {
    enable = true;
    theme = {
      name = "Adwaita-dark";
      package = pkgs.gnome-themes-extra;
    };
    cursorTheme = {
      name = "Adwaita";
      package = pkgs.adwaita-icon-theme;
    };
  };

  qt = {
    enable = true;
    platformTheme.name = "gtk";
    style.name = "adwaita-dark";
  };
}

进阶建议#

不要在这个阶段过于沉迷于配置每一个像素。建议先搭建一个可用的环境,然后在日常使用中逐步把各项设置“Nix 化”。

模块与版本前提#

Home Manager 的 Hyprland 配置不能替代系统的会话、权限和 portal 配置。桌面主题示例需按锁定的 Home Manager、Hyprland 和 plasma-manager 版本核验;GTK/Qt 的显示效果也需在实际会话中检查。

参考与延伸

  1. Home Manager 手册 ↗
  2. Home Manager 命令源码 ↗
  3. Home Manager 文件选项源码 ↗
  4. plasma-manager 上游 ↗

根据技术笔记重新整理,示例使用通用名称。

沿专题继续阅读

Home Manager:用户配置管理

  1. 01Home Manager 集成与模块化
  2. 02Home Manager 终端环境配置
  3. 03Home Manager 桌面与主题配置
  4. 04Home Manager 文件与符号链接
  5. 05Home Manager 与 NixOS 密钥管理
  6. 06Home Manager 用户级配置管理教程
CONTINUE READING / 下一篇Home Manager 文件与符号链接

用 home.file 和 XDG 文件选项管理只读配置及目录链接。