aboutsummaryrefslogtreecommitdiffstats
path: root/AGENTS.md
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-10-22 17:25:09 +0200
committerDanilo M. <danix@danix.xyz>2026-10-22 17:25:09 +0200
commit78d7d285a980513101210188ab3da8a4c3b512e8 (patch)
tree3e2d2f395c16afa70bd2f48af0f135c9569d88f2 /AGENTS.md
parent6b6ac80c924325f1229bf7f230fd80cde0ce7744 (diff)
downloadunified-desktop-theme-78d7d285a980513101210188ab3da8a4c3b512e8.tar.gz
unified-desktop-theme-78d7d285a980513101210188ab3da8a4c3b512e8.zip
install: one function per consumer, runnable aloneHEADmaster
install.sh was one linear script, so the only way to re-theme kitty after it drifted was to reinstall everything. Each consumer is now a c_<name> function: `./install.sh kitty gtk` runs only those, no argument runs all of them in definition order, and `--list` prints name, software|hardware and what it themes, read off the function lines themselves. quickshell's Theme status page lists and re-applies consumers through those two calls, so a new consumer is a new function and nothing else. udt-accent now runs before the consumers with a new --no-helpers flag. Before it, every install ran it last and it started homepage, GRUB, keyboard, LED strip, bulbs and TV detached, so re-applying conky also repainted the strip. Those helpers are consumers of their own here, run in the foreground so a re-apply reports how it went; wallp still starts them all on a wallpaper change. Running the accent first means c_sublime fills the template's @ACCENT@ itself, from udt-accent.rasi. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'AGENTS.md')
-rw-r--r--AGENTS.md16
1 files changed, 16 insertions, 0 deletions
diff --git a/AGENTS.md b/AGENTS.md
index 068587e..7b31cdd 100644
--- a/AGENTS.md
+++ b/AGENTS.md
@@ -45,6 +45,22 @@ overridden, so every highlight group follows the scheme without restating one.
## One palette, many consumers
+**Each consumer is a `c_<name>` function in `install.sh`**, run in the order
+it is defined, with what it themes in a comment on the same line (prefixed
+`hardware:` for a device). `./install.sh kitty gtk` installs only those,
+`./install.sh --list` prints `name<TAB>software|hardware<TAB>what`,
+read off the script itself, and no argument runs them all. quickshell's Theme
+status page lists and re-applies consumers through those two calls, so adding
+a consumer is adding a function and nothing else. Palette generation and then
+`udt-accent --no-helpers` always run first: udt-palette resets conky's, GRUB's
+and the homepage's accent lines to the scheme's, and the hardware consumers
+send what udt-accent writes. `--no-helpers` stops it starting homepage, GRUB,
+keyboard, strip, bulbs and TV detached, since each of those is a consumer of
+its own here, run in the foreground; so re-applying conky leaves the LED strip
+alone. A wallpaper change, through wallp, still starts them all. Sublime's
+`@ACCENT@` is filled by `c_sublime` from `udt-accent.rasi`. A consumer reloads
+what it themes itself (kitty, Hyprland, conky).
+
Colours are written down once. `palette/<scheme>.conf` holds them under the
scheme's own names and `palette/roles-<scheme>.conf` says what each is for.
`bin/udt-palette` renders that pair into every consumer's own syntax;