Theme Management Changes
This document summarizes the modifications made to the Hyprland theming setup, primarily integrating and adapting JaKooLit's comprehensive DarkLight.sh script.
Overview of Changes
The goal was to enable reliable dark/light theme switching across Waybar, Kitty, GTK applications (like Firefox), and to resolve specific issues encountered during the setup.
-
~/.config/waybar/configs/[TOP] RAM Default:- Added the
memorymodule andcustom/light_darkmodule to themodules-rightsection.
- Added the
-
~/.config/waybar/style.css:- Ensured the "Golden Eclipse" dark theme was active.
- Added styling and a hover animation for the
memorymodule. - Added styling for the
custom/light_darkmodule.
-
~/.config/waybar/scripts/theme-toggle.sh:- Major Change: This script was simplified to primarily call
~/.config/hypr/scripts/DarkLight.sh. This delegates all comprehensive theme management (Waybar, Kitty, GTK, Kvantum, wallpapers) to JaKooLit's script, ensuring consistency.
- Major Change: This script was simplified to primarily call
-
~/.config/hypr/scripts/DarkLight.sh:- Cleaned Duplication: Removed a large, duplicated section of code that was causing issues with precise modifications.
- Waybar Stability: Added a
sleep 0.5command after the initialkillallof applications to ensure Waybar (and other apps) fully terminate before restarting, preventing crashes or unexpected behavior. - Kvantum Suppression: Commented out the
kvantummanager --setline. Although the command was redirected to/dev/null, it was still unexpectedly launching the Kvantum Manager GUI. Disabling this line prevents the pop-up. - Notification Timeout: Added
-t 5000(5-second timeout) to allnotify-sendcalls to make theme-change notifications disappear automatically without requiring user interaction.
-
~/.config/kitty/kitty.conf:- Reverted Changes: The explicit
foreground,background, andcursorcolor settings were re-added. This was necessary becauseDarkLight.shexpects to manage these lines directly viasedcommands.
- Reverted Changes: The explicit
-
~/.config/hypr/UserConfigs/WindowRules.conf:- Alacritty Opacity Fix: Added
windowrule = opacity 1.0 1.0, class:^(Alacritty)$to ensure Alacritty is fully opaque, overriding a generaltag:terminal*transparency rule.
- Alacritty Opacity Fix: Added
Next Steps (Firefox Theming)
Firefox's theming is still not behaving as expected. This is likely due to how DarkLight.sh interacts with GTK themes and how Firefox interprets those changes. Further investigation will be needed to ensure Firefox correctly follows the dark/light theme switch.