Files
Z-Dot/.config/hypr/scripts/old/Wallpaper/Terminal2.sh
T
2026-01-19 19:14:04 +01:00

46 lines
1.2 KiB
Bash
Executable File

#!/bin/zsh
export XDG_RUNTIME_DIR="/run/user/1000"
output_file="/tmp/random_images.list"
scheme_dir="/home/inorishio/.cache/wal/schemes/"
background_dir="/home/inorishio/Pictures/Backgrounds/"
# Load list of random images
random_images=("${(@f)$(< "$output_file")}")
populate_random_schemes() {
local tmp=()
for img in "${random_images[@]}"; do
img_name="${img##*/}" # get filename
img_name="${img_name%.*}" # remove extension
tmp+=("$scheme_dir/$img_name.json")
done
random_schemes=("${tmp[@]}")
}
populate_random_schemes
current_workspace=""
handle_workspace_event() {
if [[ "$1" == *"workspace>>"* ]]; then
ws="${1##*>>}"
current_workspace="$ws"
# Map workspace number to array index (Zsh arrays start at 1)
if (( ws <= ${#random_schemes[@]} )); then
wal -f "${random_schemes[$ws]}"
echo "Applied ${random_schemes[$ws]} for workspace $ws"
else
echo "No theme assigned for workspace $ws"
fi
fi
}
# Listen for events from Hyprland
socat -U - UNIX-CONNECT:$XDG_RUNTIME_DIR/hypr/$HYPRLAND_INSTANCE_SIGNATURE/.socket2.sock |
while read -r line; do
handle_workspace_event "$line"
done