summaryrefslogtreecommitdiff
path: root/todo.org
diff options
context:
space:
mode:
Diffstat (limited to 'todo.org')
-rw-r--r--todo.org54
1 files changed, 54 insertions, 0 deletions
diff --git a/todo.org b/todo.org
index aea7e6f..4f4f5c2 100644
--- a/todo.org
+++ b/todo.org
@@ -429,6 +429,60 @@ Removed the Hardware Workarounds section from archsetup entirely. The only worka
(AMD Zen 5 RDSEED32) didn't actually suppress the warning message - the kernel detection
runs separately. Proper fix requires BIOS updates from vendors with AGESA microcode.
+*** TODO [#A] Fix set-theme overwriting repo configs on login
+The set-theme script runs on every Hyprland startup (exec-once) and copies theme files
+to symlinked config locations. Since stow creates symlinks pointing to the repo,
+this overwrites repo files with theme directory contents.
+
+**** Problem
+- hyprland.conf:25 runs: exec-once = set-theme "$(cat ~/.config/current-theme...)"
+- set-theme copies from ~/.config/themes/dupre/* to ~/.config/*
+- Since ~/.config/waybar/style.css is a symlink → repo, the REPO file gets overwritten
+- Theme files have OLD versions (wireplumber instead of pulseaudio)
+- Every login reverts fixes made to main config files
+
+**** Root Cause Files
+- dotfiles/hyprland/.config/themes/dupre/waybar.css has #wireplumber (should be #pulseaudio)
+- set-theme script copies theme files over symlinks, overwriting repo
+
+**** Solutions to Consider
+1. Update theme files to match main configs (sync waybar.css → themes/*/waybar.css)
+2. Make theme files the source of truth and symlink TO them instead
+3. Remove set-theme from exec-once (only run manually)
+4. Modify set-theme to detect symlinks and skip or warn
+
+**** Related
+See also: TODO [#C] Review theme config architecture for dunst/fuzzel (same issue)
+
+*** TODO [#A] Suppress Hyprland plugin "Initialized" notifications
+Plugin initialization messages ("[hyprscrolling] Initialized successfully!") appear
+on every login despite removing -n flag from hyprpm update command.
+
+**** ROOT CAUSE FOUND
+The notifications are HARDCODED in the plugin binaries themselves, NOT in hyprpm:
+- strings hyprscrolling.so | grep "Initialized" → "[hyprscrolling] Initialized successfully!"
+- strings xtra-dispatchers.so | grep "Initialized" → "[xtra-dispatchers] Initialized successfully!"
+- hy3.so does NOT have this string (no notification from hy3)
+
+The plugins call HyprlandAPI::addNotification() directly in their PLUGIN_INIT() function.
+The hyprpm -n flag only controls hyprpm's own "[hyprpm] Loaded plugins" message.
+
+**** Solution Options
+1. **Dismiss after delay** (workaround):
+ exec-once = hyprpm reload && sleep 1 && hyprctl dismissnotify -1
+
+2. **File issue with hyprland-plugins** requesting config option to disable
+ URL: https://github.com/hyprwm/hyprland-plugins/issues
+
+3. **Build plugins from source** with notification removed (not practical)
+
+4. **Wait for upstream fix** - this is common complaint, may be addressed
+
+**** References
+- [[https://github.com/hyprwm/Hyprland/issues/8101][Issue #8101: Only notify if something fails]]
+- [[https://wiki.hypr.land/Plugins/Using-Plugins/][Hyprland Plugin Wiki]]
+- Plugin binaries: /var/cache/hyprpm/cjennings/hyprland-plugins/
+
*** TODO [#A] Ensure sleep/suspend works on laptops
Critical functionality for laptop use - current battery drain unacceptable
**NOTE:** This applies to Framework Laptop (velox), not Framework Desktop (ratio)