aboutsummaryrefslogtreecommitdiffstats
path: root/AGENTS.md
diff options
context:
space:
mode:
Diffstat (limited to 'AGENTS.md')
-rw-r--r--AGENTS.md22
1 files changed, 16 insertions, 6 deletions
diff --git a/AGENTS.md b/AGENTS.md
index c7f06fe..8a747fc 100644
--- a/AGENTS.md
+++ b/AGENTS.md
@@ -113,9 +113,9 @@ 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/wal/udt-accent.rasi` (rofi),
-`~/.cache/wal/udt-border.lua` (Hyprland), `~/.cache/wal/colors.json`
-(Firefox, via pywalfox), `~/.cache/wal/udt-palette.qml` (quickshell), and
+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`.
@@ -133,14 +133,24 @@ Macchiato values are written down. Quickshell components watch the generated
file and re-read it in place, so a palette edit reaches a running shell
without restarting it; see the `quickshell` repo alongside this one.
-**Extraction is deliberately isolated from the pywal cache.** It calls
+**The generated files live in `~/.cache/udt/`**, not `~/.cache/wal/`. pywal no
+longer writes anything on this desktop, so sharing its cache directory only
+made the ownership ambiguous.
+
+`colors.json` is the one exception, and it is why `~/.cache/wal/` still exists.
+pywalfox hardcodes `<cache>/wal/colors.json` and honours only `XDG_CACHE_HOME`,
+which would move every cache on the system, so `udt-accent` writes the real
+file to `~/.cache/udt/` and `install.sh` symlinks the old path at it. That
+directory now holds the link and nothing else.
+
+**Extraction is deliberately isolated from pywal's cache.** It calls
`pywal.backends.colorz.get()` directly, which returns a list and writes nothing.
Running `wal -i` instead would rewrite all of `~/.cache/wal`, including the
terminal's ANSI colours, and that is the exact failure this design exists to
avoid. If you change `signature_color()`, verify it still writes nothing.
-`colors.json` is the one pywal file `udt-accent` does rewrite, and it rewrites
-it wholesale rather than editing it: a fixed Macchiato palette with the accent
+`colors.json` is rewritten wholesale rather than edited: a fixed Macchiato
+palette with the accent
in the cursor and the two highlight slots. That is deliberate. pywalfox reads
`colors.json` and nothing else, so it is the only way Firefox can follow the
accent, and overwriting it costs nothing because nothing else reads it. In