dotfiles/.scripts/system/random-wallpaper

18 lines
372 B
Bash
Executable File

#!/bin/sh
INTERVAL="$1"
WALLPAPER_DIR="$2"
rm -rf ~/.cache/swww/
swww kill
swww init
interval_secs="$(echo "60 * ${INTERVAL}" | bc)"
while true; do
wallpaper="$(fd '\.(png|jpe?g|gif)$' "$WALLPAPER_DIR" --type f --type l -L | shuf | head -1)"
ln -sf "$wallpaper" "/run/user/$(id -u)/.current-wallpaper"
swww img "$wallpaper"
sleep "$interval_secs"
done