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-Classic

Qt 應用程式用 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):時間無底洞,看個人興趣

前兩層是值得做的——它們改善每天使用的體驗。第三層是嗜好領域,跟「把車改到完美」是同一種動力,不需要理性上的正當性。