From c3ac8c64a8b681931ea18c2e4d7f8741e2baf8db Mon Sep 17 00:00:00 2001 From: Stephan Raabe Date: Wed, 15 May 2024 11:12:53 +0200 Subject: [PATCH] Updates --- .settings/wallpaper-folder.sh | 2 ++ CHANGELOG | 1 + hypr/scripts/wallpaper.sh | 22 ++++++++++++++-------- 3 files changed, 17 insertions(+), 8 deletions(-) create mode 100644 .settings/wallpaper-folder.sh diff --git a/.settings/wallpaper-folder.sh b/.settings/wallpaper-folder.sh new file mode 100644 index 0000000..8d138d1 --- /dev/null +++ b/.settings/wallpaper-folder.sh @@ -0,0 +1,2 @@ +# Enter the path to the folder that includes your wallpapers +wallpaper_folder=$HOME/wallpaper \ No newline at end of file diff --git a/CHANGELOG b/CHANGELOG index f3dd019..fc809c8 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -3,6 +3,7 @@ https://gitlab.com/stephan-raabe/dotfiles/-/releases/2.9 -------------------------------------------------------- - Hyprpaper is the default wallpaper engine. swww will not be installed by the installer anymore. You can still switch to swww in the Dotfiles Settings App (System tab) but you need to install swww manually with yay -S swww - pfetch has been replaced with fastfetch (requires an update of the .bashrc) +- Directory for wallpapers can be customized with new .settings/wallpaper-folder.sh Version 2.9 https://gitlab.com/stephan-raabe/dotfiles/-/releases/2.9 diff --git a/hypr/scripts/wallpaper.sh b/hypr/scripts/wallpaper.sh index 3c20993..a6c408f 100755 --- a/hypr/scripts/wallpaper.sh +++ b/hypr/scripts/wallpaper.sh @@ -10,6 +10,12 @@ # ----------------------------------------------------- # Cache file for holding the current wallpaper +wallpaper_folder="$HOME/wallpaper" +if [ -f ~/dotfiles/.settings/wallpaper-folder.sh ] ;then + source ~/dotfiles/.settings/wallpaper-folder.sh +fi +echo $wallpaper_folder + cache_file="$HOME/.cache/current_wallpaper" blurred="$HOME/.cache/blurred_wallpaper.png" square="$HOME/.cache/square_wallpaper.png" @@ -22,13 +28,13 @@ blur=$(cat $blur_file) # Create cache file if not exists if [ ! -f $cache_file ] ;then touch $cache_file - echo "$HOME/wallpaper/default.jpg" > "$cache_file" + echo "$wallpaper_folder/default.jpg" > "$cache_file" fi # Create rasi file if not exists if [ ! -f $rasi_file ] ;then touch $rasi_file - echo "* { current-image: url(\"$HOME/wallpaper/default.jpg\", height); }" > "$rasi_file" + echo "* { current-image: url(\"$wallpaper_folder/default.jpg\", height); }" > "$rasi_file" fi current_wallpaper=$(cat "$cache_file") @@ -41,27 +47,27 @@ case $1 in if [ -f $cache_file ]; then wal -q -i $current_wallpaper else - wal -q -i ~/wallpaper/ + wal -q -i $wallpaper_folder/ fi ;; # Select wallpaper with rofi "select") sleep 0.2 - selected=$( find "$HOME/wallpaper" -type f \( -iname "*.jpg" -o -iname "*.jpeg" -o -iname "*.png" \) -exec basename {} \; | sort -R | while read rfile + selected=$( find "$wallpaper_folder" -type f \( -iname "*.jpg" -o -iname "*.jpeg" -o -iname "*.png" \) -exec basename {} \; | sort -R | while read rfile do - echo -en "$rfile\x00icon\x1f$HOME/wallpaper/${rfile}\n" + echo -en "$rfile\x00icon\x1f$wallpaper_folder/${rfile}\n" done | rofi -dmenu -i -replace -config ~/dotfiles/rofi/config-wallpaper.rasi) if [ ! "$selected" ]; then echo "No wallpaper selected" exit fi - wal -q -i ~/wallpaper/$selected + wal -q -i $wallpaper_folder/$selected ;; # Randomly select wallpaper *) - wal -q -i ~/wallpaper/ + wal -q -i $wallpaper_folder/ ;; esac @@ -75,7 +81,7 @@ echo ":: Wallpaper: $wallpaper" # ----------------------------------------------------- # get wallpaper image name # ----------------------------------------------------- -newwall=$(echo $wallpaper | sed "s|$HOME/wallpaper/||g") +newwall=$(echo $wallpaper | sed "s|$wallpaper_folder/||g") # ----------------------------------------------------- # Reload waybar with new colors