aboutsummaryrefslogtreecommitdiff
path: root/env/.local/bin/scripts/setwll
blob: b19fdf3d2d31afa5cd9ef6fbd704d6726571f71f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
#!/bin/bash
# may be moved to theme setter
cd "$(dirname "$0")"

unload=0
secondary=""
primary=""
all=""

while getopts "up:s:a:" opt; do
    case "$opt" in
        u) unload=1
            ;;
        p) primary="$OPTARG"
            ;;
        s) secondary="$OPTARG"
            ;;
        a) all="$OPTARG"
            ;;
    esac
done

shift $((OPTIND-1))
[ "${1:-}" = "--" ] && shift

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