diff options
| author | Luke Smith <luke@lukesmith.xyz> | 2020-03-27 22:06:47 -0400 |
|---|---|---|
| committer | Luke Smith <luke@lukesmith.xyz> | 2020-03-27 22:06:47 -0400 |
| commit | 04c117f85699f6d13a61ebf465e9171bddf3d9b7 (patch) | |
| tree | 8979774fada1b4d070a6c441a7cfedd03d0d48ff | |
| parent | 5cb4c6deeaecf349111d51166b98848f1fc1b584 (diff) | |
| download | eibhear-04c117f85699f6d13a61ebf465e9171bddf3d9b7.tar.gz eibhear-04c117f85699f6d13a61ebf465e9171bddf3d9b7.tar.zst eibhear-04c117f85699f6d13a61ebf465e9171bddf3d9b7.zip | |
setbg overhaul, dwm update mv'd to postrun
Yeah of course I'm going to totally rewrite a script right after I do a video on it.
It uses links now to not waste space and env variables. Location moved to cache.
Thanks to those who suggested some changes.
| l--------- | .cache/bg | 1 | ||||
| -rwxr-xr-x | .config/wal/postrun | 1 | ||||
| -rwxr-xr-x | .local/bin/setbg | 27 |
3 files changed, 14 insertions, 15 deletions
diff --git a/.cache/bg b/.cache/bg new file mode 120000 index 0000000..c246813 --- /dev/null +++ b/.cache/bg @@ -0,0 +1 @@ +.config/wall.png
\ No newline at end of file diff --git a/.config/wal/postrun b/.config/wal/postrun index e2ee73c..ae28d83 100755 --- a/.config/wal/postrun +++ b/.config/wal/postrun @@ -24,5 +24,6 @@ done fix_sequences <"${HOME}/.cache/wal/sequences" +xsetroot -name "fsignal:xrdb" pkill dunst dunst & diff --git a/.local/bin/setbg b/.local/bin/setbg index be4adfd..7b07e23 100755 --- a/.local/bin/setbg +++ b/.local/bin/setbg @@ -1,22 +1,19 @@ #!/bin/sh -# In LARBS, ~/.config/wall.png is the location of the system wallpaper. This -# script, if given an argument, moves it there. This script without an -# argument sets ~/.config/wall.png as the wallpaper, which is required on login -# if you don't want a black screen. -# -# You may also give a directory name to select a random image from that -# directory as a wallpaper. Be careful that the directory only has images. +# This script does the following: +# Run by itself, set the wallpaper (at X start). +# If given a file, set that as the new wallpaper. +# If given a directory, choose random file in it. +# If wal is installed, also generate a colorscheme. -[ -f "$1" ] && cp "$1" ~/.config/wall.png && notify-send -i "$HOME/.config/wall.png" "Wallpaper changed." +# Location of link to wallpaper link. +bgloc="${XDG_CACHE_HOME:-$HOME/.cache/}/bg" -[ -d "$1" ] && cp "$(find "$1" -name "*.jpg" -o -name "*.jpeg" -o -name "*.png" -type f | shuf -n 1)" ~/.config/wall.png && notify-send -i "$HOME/.config/wall.png" "Random Wallpaper chosen." +[ -f "$1" ] && ln -sf "$(readlink -f "$1")" "$bgloc" && notify-send -i "$bgloc" "Changing wallpaper..." + +[ -d "$1" ] && ln -sf "$(find "$(readlink -f "$1")" -iregex '.*.\(jpg\|jpeg\|png\|gif\)' -type f | shuf -n 1)" "$bgloc" && notify-send -i "$bgloc" "Random Wallpaper chosen." # If pywal is installed, use it. -type wal >/dev/null 2>&1 && { wal -c - wal -s -i ~/.config/wall.png -o ~/.config/wal/postrun - xsetroot -name "fsignal:xrdb" - killall dwmblocks - setsid dwmblocks >/dev/null & } >/dev/null 2>&1 +wal -s -i "$(readlink -f "$bgloc")" -o "${XDG_CONFIG_HOME:-$HOME/.config}/wal/postrun" >/dev/null 2>&1 -xwallpaper --zoom ~/.config/wall.png +xwallpaper --zoom "$bgloc" |
