配色系統、鎖屏與 GTK 主題
Hyprlock:鎖屏
Hyprlock 是 Hyprland 配套的鎖屏工具,支援模糊背景、自定義佈局:
1# ~/.config/hypr/hyprlock.conf
2
3background {
4 monitor =
5 path = screenshot
6 blur_passes = 3
7 blur_size = 8
8}
9
10input-field {
11 monitor =
12 size = 250, 50
13 outline_thickness = 2
14 outer_color = rgba(137, 180, 250, 1)
15 inner_color = rgba(30, 30, 46, 1)
16 font_color = rgba(205, 214, 244, 1)
17 placeholder_text = <i>Password...</i>
18 fade_on_empty = true
19 position = 0, -50
20 halign = center
21 valign = center
22}
23
24label {
25 monitor =
26 text = $TIME
27 font_size = 64
28 font_family = MesloLGS Nerd Font
29 color = rgba(205, 214, 244, 1)
30 position = 0, 80
31 halign = center
32 valign = center
33}鎖屏一旦啟動,桌面的「鎖定」狀態由 compositor 透過 Wayland 的 ext-session-lock 協議持有,殺掉鎖屏 process 不等於解鎖。鎖屏的安全模型與測試時的注意事項見 Session Lock。
配色系統的統一管理
Rice 的視覺品質取決於配色一致性。散亂的色碼(waybar 用一套、wofi 用另一套、mako 又一套)是桌面看起來「雜」的最常見原因。
管理方式:
選定一套配色方案。Catppuccin、Tokyo Night、Gruvbox、Nord 是目前最多 Linux ricer 使用的方案,每一套都有完整的色彩定義和各工具的預設配置。
建立配色變數檔。把色碼集中到一個檔案,其他配置引用它:
1# ~/.config/hypr/colors.conf
2$rosewater = rgb(f5e0dc)
3$flamingo = rgb(f2cdcd)
4$pink = rgb(f5c2e7)
5$mauve = rgb(cba6f7)
6$red = rgb(f38ba8)
7$maroon = rgb(eba0ac)
8$peach = rgb(fab387)
9$yellow = rgb(f9e2af)
10$green = rgb(a6e3a1)
11$teal = rgb(94e2d5)
12$sky = rgb(89dceb)
13$sapphire = rgb(74c7ec)
14$blue = rgb(89b4fa)
15$lavender = rgb(b4befe)
16$text = rgb(cdd6f4)
17$subtext1 = rgb(bac2de)
18$overlay0 = rgb(6c7086)
19$surface0 = rgb(313244)
20$base = rgb(1e1e2e)
21$mantle = rgb(181825)
22$crust = rgb(11111b)Hyprland 的 source 可以引用這些變數。Waybar 和 Wofi 的 CSS 無法直接引用 Hyprland 變數,但可以用 build script 或 template 工具(如 pywal、flavours)從一份主設定產生各工具的配色。
換配色方案時需要改的檔案清單:
- Hyprland appearance.conf(邊框、陰影顏色)
- Waybar style.css
- Wofi/Rofi style.css
- Mako config
- Hyprlock config
- Terminal emulator 配色
- Neovim colorscheme
- GTK theme(影響 GUI 應用程式的外觀)
把這個清單記在 dotfile repo 的 README 裡,換主題時有對照不會漏改。
GTK / Qt 主題
Linux 的 GUI 應用程式分兩大陣營:GTK(GNOME 系)和 Qt(KDE 系)。平鋪式 WM 不自帶主題引擎,需要手動設定:
1# GTK 設定
2# ~/.config/gtk-3.0/settings.ini
3[Settings]
4gtk-theme-name=Catppuccin-Mocha-Standard-Blue-Dark
5gtk-icon-theme-name=Papirus-Dark
6gtk-font-name=Noto Sans CJK TC 11
7gtk-cursor-theme-name=Bibata-Modern-ClassicQt 應用程式用 qt5ct / qt6ct 設定,或用 Kvantum 主題引擎統一風格。
Dotfile 結構對應
Rice 涉及的工具最多——waybar、wofi、mako、hyprlock、GTK 各自是獨立的 stow package。邊界切在「一個工具一個 package」,換主題時才能按需更新而不影響其他工具。themes/ 放共用的配色變數,不屬於任何單一工具:
1~/dotfiles/
2├── waybar/
3│ └── .config/
4│ └── waybar/
5│ ├── config.jsonc
6│ └── style.css
7├── wofi/
8│ └── .config/
9│ └── wofi/
10│ ├── config
11│ └── style.css
12├── mako/
13│ └── .config/
14│ └── mako/
15│ └── config
16├── hyprlock/
17│ └── .config/
18│ └── hypr/
19│ └── hyprlock.conf
20├── gtk/
21│ └── .config/
22│ └── gtk-3.0/
23│ └── settings.ini
24└── themes/
25 └── colors.conf # 集中配色定義Rice 的投資報酬判讀
Rice 可以投入的時間沒有上限。務實的分界線:
- 功能性配置(waybar 顯示正確資訊、wofi 能搜到 app、通知會跳出來):投入一到兩小時,這是桌面可用的前提
- 視覺統一(全域配色一致、字型統一、圓角/間距協調):投入半天到一天,這是「好看」跟「雜亂」的分界
- 精雕細節(自定義動畫曲線、pixel-perfect 對齊、自製 widget):時間無底洞,看個人興趣
前兩層是值得做的——它們改善每天使用的體驗。第三層是嗜好領域,跟「把車改到完美」是同一種動力,不需要理性上的正當性。