Files
Dotfiles/Waybar/scripts/wallpaper_switch.sh
T
2025-08-07 15:02:48 +02:00

38 lines
997 B
Bash
Executable File

#!/bin/bash
# Aktives Wallpaper ermitteln
active=$(hyprctl hyprpaper listactive | grep -E '^[^[:space:]]+ =' | cut -d'=' -f2 | xargs)
echo $active
# Geladene Wallpaper extrahieren
output=$(hyprctl hyprpaper listloaded)
wallpapers=()
while IFS= read -r line; do
path=$(echo "$line" | cut -d',' -f2 | xargs)
wallpapers+=("$path")
done <<<"$output"
# Aktives Wallpaper im Array suchen
active_index=-1
for i in "${!wallpapers[@]}"; do
echo ${wallpapers[$i]}
if [[ "${wallpapers[$i]}" == "$active" ]]; then
active_index=$i
break
fi
done
# Nächstes Wallpaper setzen
echo nächstes WP= $wallpapers[$next_index]
if [[ $active_index -ge 0 ]]; then
next_index=$(((active_index + 1) % ${#wallpapers[@]}))
next_wallpaper="${wallpapers[$next_index]}"
echo nächstes WP = $next_wallpaper
hyprctl hyprpaper wallpaper "eDP-1, $next_wallpaper"
wal -i $next_wallpaper
pkill -SIGUSR2 waybar
else
echo "Aktives Wallpaper wurde nicht gefunden."
fi