4.4 KiB
Hyprland Dotfiles
This repository contains my Hyprland dotfiles, including configurations for Waybar, Kitty, and other related tools.
Recent Changes and Improvements
This section summarizes the recent modifications made to the Hyprland setup, primarily focusing on integrating and adapting JaKooLit's comprehensive DarkLight.sh script for theme management.
Overview of Changes
The primary goal was to enable reliable dark/light theme switching across Waybar, Kitty, GTK applications, and to resolve specific issues encountered during the setup.
-
Waybar Configuration (
~/.config/waybar/configs/[TOP] RAM Default):- Added the
memorymodule andcustom/light_darkmodule to themodules-rightsection for enhanced system monitoring and theme toggling.
- Added the
-
Waybar Styling (
~/.config/waybar/style.css):- Ensured the "Golden Eclipse" dark theme was active.
- Added specific styling and a hover animation for the
memorymodule. - Implemented styling for the
custom/light_darkmodule to visually integrate the theme toggle.
-
Waybar Theme Toggle Script (
~/.config/waybar/scripts/theme-toggle.sh):- Major Change: This script was simplified to primarily execute
~/.config/hypr/scripts/DarkLight.sh. This delegates all comprehensive theme management (Waybar, Kitty, GTK, Kvantum, wallpapers) to JaKooLit's script, ensuring consistency and a single source of truth for theme logic.
- Major Change: This script was simplified to primarily execute
-
Dark/Light Theme Management Script (
~/.config/hypr/scripts/DarkLight.sh):- Cleaned Duplication: Removed a large, duplicated section of code that was causing issues and making modifications difficult.
- Waybar Stability: Introduced a
sleep 0.5command after the initialkillallof applications. This ensures Waybar (and other relevant applications) fully terminate before being restarted, preventing crashes or unexpected behavior during theme transitions. - Kvantum Manager 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 and improves the user experience. - Notification Timeout: Added
-t 5000(5-second timeout) to allnotify-sendcalls. This makes theme-change notifications disappear automatically after a short period, reducing visual clutter and removing the need for manual dismissal.
-
Kitty Terminal Configuration (
~/.config/kitty/kitty.conf):- Reverted Color Overrides: Explicit
foreground,background, andcursorcolor settings were re-added. This was necessary becauseDarkLight.shis designed to manage these lines directly viasedcommands to apply the correct theme colors.
- Reverted Color Overrides: Explicit
-
Hyprland Window Rules (
~/.config/hypr/UserConfigs/WindowRules.conf):- Alacritty Opacity Fix: Added a specific
windowrule = opacity 1.0 1.0, class:^(Alacritty)$to ensure the Alacritty terminal is fully opaque. This overrides a more generaltag:terminal*transparency rule that was unintentionally affecting Alacritty.
- Alacritty Opacity Fix: Added a specific
Installation 🚀
To install these dotfiles and set up your Hyprland environment, follow these steps:
-
Clone the repository:
git clone https://gitea.ramforth.net/ramforth/hyprland-dots.git ~/.config/hypr -
Navigate to the dotfiles directory:
cd ~/.config/hypr -
Make the install script executable:
chmod +x install.sh -
Run the installation script:
./install.shImportant Notes:
- This script assumes you have already installed Hyprland and its core dependencies.
- You will need to manually install applications like Waybar, Kitty, etc., using your system's package manager (e.g.,
pacman -S hyprland waybar kitty). - After running the script, it's recommended to reboot your system or log out and back in for all changes to take effect.
Future Work
- Firefox Theming: Further investigation is needed to ensure Firefox correctly follows the dark/light theme switch managed by
DarkLight.sh. This is likely related to howDarkLight.shinteracts with GTK themes and how Firefox interprets those changes. - NVIDIA Environment Variables: Review and potentially enable NVIDIA environment variables in
ENVariables.conffor optimal performance with the NVIDIA RTX 4080.