Wednesday, May 14, 2025

Optimizing JaKooLit Fedora-Hyprland Files To Reduce Power Consumption/Heat

 

Specific Optimization Instructions for Hyprland

I noticed using the JaKooLit dot files that my idle temperature was about 3 degrees warmer than just using Fedora Workstation Gnome DE.  I implemented the recommendations of Claude AI below and got idle temps back to within a degree of Gnome.

1. First, Disable Rainbow Borders (Highest Impact)

Edit ~/.config/hypr/UserConfigs/Startup_Apps.conf:

 

# Find this line:
exec-once = $UserScripts/RainbowBorders.sh

# Comment it out by adding # at the beginning:
# exec-once = $UserScripts/RainbowBorders.sh


2. Optimize Decorations (High Impact)

Replace the content in ~/.config/hypr/UserConfigs/UserDecorations.conf with:

# Decoration Settings
# Hyprland Wiki Links
# Animation - https://wiki.hyprland.org/Configuring/Animations/
# Decoration - https://wiki.hyprland.org/Configuring/Variables/#decoration
# Sourcing colors generated by wallust
source = $HOME/.config/hypr/wallust/wallust-hyprland.conf

general {
border_size = 2
gaps_in = 2
gaps_out = 4

col.active_border = $color12
col.inactive_border = $color10
}

decoration {
rounding = 10

active_opacity = 1.0
inactive_opacity = 1.0 # Changed from 0.9 to 1.0 (removes transparency)
fullscreen_opacity = 1.0
dim_inactive = false # Changed from true to false
dim_strength = 0.1 # Keep this in case you want to re-enable dim_inactive later
dim_special = 0.8

shadow {
enabled = false # Changed from true to false
range = 3
render_power = 1
color = $color12
color_inactive = $color10
}

blur {
enabled = false # Changed from true to false
# Below settings kept for reference if you want to re-enable blur with lightweight settings
size = 3 # Reduced from 6 to 3
passes = 1 # Reduced from 2 to 1
ignore_opacity = true
new_optimizations = true
special = true
popups = true
}
}

group {
col.border_active = $color15
groupbar {
col.active = $color0
}
}

3. Optimize Animations (Medium-High Impact)

Replace the content in ~/.config/hypr/UserConfigs/UserAnimations.conf with:

# /* ---- Optimized for lower system temperature ---- */
animations {
enabled = true

# Simpler bezier curve
bezier = simpleEase, 0.25, 0.1, 0.25, 1.0

# Reduced animation duration and complexity
animation = windows, 1, 4, simpleEase
animation = windowsIn, 1, 4, simpleEase
animation = windowsOut, 1, 4, simpleEase
animation = windowsMove, 1, 4, simpleEase
animation = border, 0, 1, default # Minimal/disabled
animation = borderangle, 0, 1, default # Minimal/disabled
animation = fade, 1, 5, default # Reduced duration
animation = workspaces, 1, 4, simpleEase
}

 

4. Optimize Startup Apps (Medium Impact)

# Commands and Apps to be executed at launch
$scriptsDir = $HOME/.config/hypr/scripts
$UserScripts = $HOME/.config/hypr/UserScripts
$wallDIR=$HOME/Pictures/wallpapers
$lock = $scriptsDir/LockScreen.sh
$SwwwRandom = $UserScripts/WallpaperAutoChange.sh
$livewallpaper=""

# wallpaper stuff - Static wallpaper instead of daemon
exec-once = swww init && swww img $HOME/Pictures/wallpapers/your-favorite-wallpaper.jpg

# Startup essentials
exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
exec-once = systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
exec-once = $scriptsDir/Polkit.sh
exec-once = nm-applet --indicator
exec-once = swaync
# exec-once = ags # Commented out unless you specifically need it

# Only enable what you regularly use
exec-once = blueman-applet # Only if you use Bluetooth regularly
exec-once = insync start # Only if you need cloud sync continuously
exec-once = gnome-keyring-daemon --start
exec-once = waybar

# Clipboard manager - only text (more efficient)
exec-once = wl-paste --type text --watch cliphist store
# exec-once = wl-paste --type image --watch cliphist store # Commented out to save resources

# Rainbow borders - commented out to reduce CPU/GPU usage
# exec-once = $UserScripts/RainbowBorders.sh

# Starting hypridle to start hyprlock
exec-once = hypridle

# Other commented features
# exec-once = swww-daemon --format xrgb && swww img $HOME/Pictures/wallpapers/mecha-nostalgia.png
#gnome polkit for nixos
#exec-once = $scriptsDir/Polkit-NixOS.sh
#exec-once = $scriptsDir/PortalHyprland.sh


Note: For the static wallpaper, replace your-favorite-wallpaper.jpg with an actual image file in your wallpapers directory.

5. Additional Power Saving Options

Create a script to automatically set power-saving mode when using Hyprland:

  1. Create a file at ~/.config/hypr/UserScripts/PowerSave.sh


#!/bin/bash


# Reduce screen brightness slightly if applicable
if command -v brightnessctl &> /dev/null; then
current=$(brightnessctl g)
max=$(brightnessctl m)
# Set to 80% of max if over that
target=$(( max * 80 / 100 ))
if [ $current -gt $target ]; then
brightnessctl s $target
fi
fi

 

Make it executable:

chmod +x ~/.config/hypr/UserScripts/PowerSave.sh

 

  1. Add it to your startup:

Edit ~/.config/hypr/UserConfigs/Startup_Apps.conf again and add:

# Power saving
exec-once = $UserScripts/PowerSave.sh 

 

 

 


No comments:

Post a Comment

Microsoft fonts on Arch

  yay -S ttf-ms-fonts ttf-selawik To achieve Microsoft-level font clarity on Arch Linux after installing Microsoft fonts, you'll need to...