aboutsummaryrefslogtreecommitdiffstats
path: root/AGENTS.md
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-09-19 16:42:07 +0200
committerDanilo M. <danix@danix.xyz>2026-09-19 16:42:07 +0200
commita25905dfaeceff258b482007e8b6eb9f9a6d7063 (patch)
tree0cd17519482c816a97e9a2e780fef1d3e0801942 /AGENTS.md
parent63fd47668a66ff546e330d22b64b7ce6e184a404 (diff)
downloadunified-desktop-theme-a25905dfaeceff258b482007e8b6eb9f9a6d7063.tar.gz
unified-desktop-theme-a25905dfaeceff258b482007e8b6eb9f9a6d7063.zip
feat: theme hyprlock from the UDT palette and accent
udt-palette renders the scheme-level palette to templates/hyprlock/hyprlock-palette.conf ($panel, $input_bg, $text, $subtext, $fail); udt-accent writes the wallpaper accent gradient to ~/.cache/udt/hyprlock-border.conf as a hyprlang variable. The hyprlock config sources both, so a scheme switch recolours the lock and a wallpaper change recolours its border. install.sh copies the palette and seeds the border from the committed fallback on a fresh cache. Both selftests cover the new outputs.
Diffstat (limited to 'AGENTS.md')
-rw-r--r--AGENTS.md27
1 files changed, 15 insertions, 12 deletions
diff --git a/AGENTS.md b/AGENTS.md
index c0de696..fc7cbfc 100644
--- a/AGENTS.md
+++ b/AGENTS.md
@@ -6,8 +6,8 @@ Guidance for agents working in this repository.
One visual identity for a Hyprland desktop: Catppuccin Macchiato, Noto Sans for
UI text, Inconsolata Nerd Font Mono for monospace. It covers rofi, Hyprland
-window borders, conky, Qt5/Qt6, GTK3/GTK4, waybar, kitty, Sublime Text and
-neovim.
+window borders, conky, Qt5/Qt6, GTK3/GTK4, waybar, kitty, Sublime Text,
+hyprlock and neovim.
The repo holds the canonical copies. `./install.sh` symlinks them into place, so
the working config cannot drift from what is committed. Everything outside
@@ -44,8 +44,8 @@ The generated set is `rofi/udt/palette.rasi`,
`templates/kvantum/theme.{kvconfig,svg}`,
`templates/sublime/udt.sublime-color-scheme`,
`templates/sublime/udt.sublime-theme`, `templates/gtk/gtk{3,4}.css`,
-`templates/gtk/index.theme`, `templates/gtk/assets/*.svg` and
-`bin/udt_colors.py`.
+`templates/gtk/index.theme`, `templates/gtk/assets/*.svg`,
+`templates/hyprlock/hyprlock-palette.conf` and `bin/udt_colors.py`.
Sublime is two outputs, not one. The **colour scheme** is the editor pane and
tracks the wallpaper accent. The **theme** is the UI chrome, and is an override
@@ -126,11 +126,12 @@ One colour moves: `@accent`. `bin/udt-accent` reads the current wallpaper,
extracts its signature colour, and snaps it to the nearest of ten Catppuccin
accents by perceptual hue in CIELAB. `wallp` calls it on every wallpaper change.
-It writes five things: `~/.cache/udt/udt-accent.rasi` (rofi),
-`~/.cache/udt/udt-border.lua` (Hyprland), `~/.cache/wal/colors.json`
-(Firefox, via pywalfox), `~/.cache/udt/udt-palette.qml` (quickshell), and
-the accent substitution in Sublime's installed
-`Packages/User/udt.sublime-color-scheme`.
+It writes six things: `~/.cache/udt/udt-accent.rasi` (rofi),
+`~/.cache/udt/udt-border.lua` (Hyprland), `~/.cache/udt/hyprlock-border.conf`
+(hyprlock, the same three hues as the window border, as a hyprlang gradient),
+`~/.cache/wal/colors.json` (Firefox, via pywalfox),
+`~/.cache/udt/udt-palette.qml` (quickshell), and the accent substitution in
+Sublime's installed `Packages/User/udt.sublime-color-scheme`.
**Sublime's accent is replaced, not substituted into a placeholder.** Its
colour scheme cannot cascade, so the accent has to live in the one generated
@@ -173,9 +174,10 @@ write lands after `wallp` has already run `wal --theme`, so it wins; reorder
those two and pywal's wallpaper-derived colours come back.
Not everything tracks the wallpaper. rofi, quickshell, Hyprland borders,
-Sublime's
-colour scheme and Firefox do; conky, Qt, GTK, waybar and Sublime's UI chrome sit
-on fixed lavender, which is also the fallback
+hyprlock's border (through `~/.cache/udt/hyprlock-border.conf`), Sublime's
+colour scheme and Firefox do; conky, Qt, GTK, waybar, hyprlock's panel palette
+(from `templates/hyprlock/hyprlock-palette.conf`) and Sublime's UI chrome sit
+on the scheme's accent, lavender by default, which is also the fallback
when a wallpaper is too grey to snap. Qt and GTK apps only reread a theme on restart,
so a moving accent there would leave running apps disagreeing with new ones.
@@ -258,6 +260,7 @@ The table is what it does, and what to run if you change a config by hand.
| quickshell | nothing; it watches the generated palette and re-reads it |
| Firefox | `udt-accent` runs `pywalfox update` |
| Hyprland | `hyprctl reload` |
+| hyprlock | nothing; it reads its config per lock, so the next lock picks it up |
| waybar | `killall -SIGUSR2 waybar` |
| kitty | `pkill -USR1 -x kitty` |
| Sublime Text | nothing; it watches `Packages/User` and reloads both the scheme and the theme |