78 lines
1.6 KiB
Bash
Executable File
78 lines
1.6 KiB
Bash
Executable File
#!/bin/bash
|
|
# may be moved to theme setter
|
|
cd "$(dirname "$0")"
|
|
|
|
listwalls=0
|
|
unload=0
|
|
secondary=""
|
|
primary=""
|
|
all=""
|
|
|
|
while getopts "lup:s:a:" opt; do
|
|
case "$opt" in
|
|
l) listwalls=1
|
|
;;
|
|
u) unload=1
|
|
;;
|
|
p) primary="$OPTARG"
|
|
;;
|
|
s) secondary="$OPTARG"
|
|
;;
|
|
a) all="$OPTARG"
|
|
;;
|
|
esac
|
|
done
|
|
|
|
shift $((OPTIND-1))
|
|
[ "${1:-}" = "--" ] && shift
|
|
|
|
if [ $listwalls == 1 ]; then
|
|
ls ./wallpaper_scripts
|
|
exit 0
|
|
fi
|
|
|
|
if [ "$all" ]; then
|
|
primary="$all"
|
|
secondary="$all"
|
|
fi
|
|
|
|
if [ -z "$primary" ]; then
|
|
primary="$(./wallpaper_scripts/default-primary)"
|
|
else
|
|
if [ -f "./wallpaper_scripts/$primary" ]; then
|
|
primary="$(./wallpaper_scripts/$primary)"
|
|
fi
|
|
fi
|
|
|
|
if [ -z "$secondary" ]; then
|
|
secondary="$(./wallpaper_scripts/default-secondary)"
|
|
else
|
|
if [ -f "./wallpaper_scripts/$secondary" ]; then
|
|
secondary="$(./wallpaper_scripts/$secondary)"
|
|
fi
|
|
fi
|
|
|
|
|
|
if [ "$WAYLAND_DISPLAY" ]; then
|
|
current_wal="$(hyprctl hyprpaper listactive | grep HDMI-A-1 | sed 's/HDMI-A-1 = //')"
|
|
hyprctl hyprpaper preload $primary
|
|
hyprctl hyprpaper wallpaper "HDMI-A-1,$primary"
|
|
if [ $unload == 1 ]; then
|
|
hyprctl hyprpaper unload "$current_wal"
|
|
fi
|
|
|
|
current_wal="$(hyprctl hyprpaper listactive | grep DP-1 | sed 's/DP-1 = //')"
|
|
hyprctl hyprpaper preload $secondary
|
|
hyprctl hyprpaper wallpaper "DP-1,$secondary"
|
|
if [ $unload == 1 ]; then
|
|
hyprctl hyprpaper unload "$current_wal"
|
|
fi
|
|
else
|
|
if [ -z "$1" ]; then
|
|
nitrogen --head=0 --set-zoom-fill $primary
|
|
|
|
nitrogen --head=1 --set-zoom-fill $secondary
|
|
fi
|
|
fi
|
|
|