#!/bin/bash

# Get the wallpaper information from hyprctl
hyprctl_output=$(hyprctl hyprpaper listactive)

echo "$hyprctl_output"

# Read the lines into an array and reverse their order
mapfile -t lines <<< "$hyprctl_output"
reversed_lines=()
for ((i=${#lines[@]}-1; i>=0; i--)); do
    reversed_lines+=("${lines[i]}")
done

# Generate the config content
config_content=""
for line in "${reversed_lines[@]}"; do
    # Split line into monitor and path parts
    IFS='=' read -r monitor_part path_part <<< "$line"
    
    # Trim whitespace from both parts
    monitor=$(echo "$monitor_part" | xargs)
    path=$(echo "$path_part" | xargs)
    
    # Skip entries with empty monitor names
    [[ -z "$monitor" ]] && continue
    
    # Append to the config content
    config_content+="background {
    monitor = $monitor
    path = $path
}
"
done

# Write to the configuration file
config_file="$HOME/.config/hypr/hyprlock-bg.conf"
echo "$config_content" > "$config_file"

echo "Generated hyprlock background config at: $config_file"