46 lines
1.3 KiB
Bash
Executable File
46 lines
1.3 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
tmp_dir="$HOME/.config/eww/Main/images"
|
|
tmp_temp_path=$tmp_dir/temp.png
|
|
tmp_blur_path="$tmp_dir/temp-blur.png"
|
|
cache_path="$tmp_dir/temp.txt"
|
|
default_path="$tmp_dir/default-music.svg"
|
|
default_blur_path="$tmp_dir/default-music-blur.png"
|
|
|
|
if [ ! -d $tmp_dir ]; then
|
|
mkdir -p $tmp_dir
|
|
fi
|
|
|
|
artlink="$(playerctl -p spotify,$any,mpd,firefox,chromium,brave metadata mpris:artUrl | sed -e 's/open.spotify.com/i.scdn.co/g')"
|
|
artFromBrowser=$(playerctl metadata mpris:artUrl | sed 's/file:\/\///g')
|
|
cached=$(cat $cache_path 2>/dev/null)
|
|
|
|
if [ $(playerctl -p spotify,%any,firefox,chromium,brave,mpd metadata mpris:artUrl) ]; then
|
|
# avoid unnecessary downloads
|
|
if [[ $cached != $artlink ]]; then
|
|
echo $artlink > $cache_path
|
|
curl -s "$artlink" --output $tmp_temp_path
|
|
outputUrl=$tmp_temp_path
|
|
magick $tmp_temp_path -blur 0x8 $tmp_blur_path
|
|
else
|
|
outputUrl=$cached
|
|
fi
|
|
elif [[ -n $artFromBrowser ]]; then
|
|
if [[ §cached != $artFromBrowser ]]; then
|
|
echo $artFromBrowser > $cache_path
|
|
cp $artFromBrowser $tmp_temp_path
|
|
magick $tmp_temp_path -blur 0x8 $tmp_blur_path
|
|
outputUrl=$tmp_temp_path
|
|
else
|
|
outputUrl=$cached
|
|
fi
|
|
else
|
|
outputUrl=$default_path
|
|
tmp_blur_path=$default_blur_path
|
|
fi
|
|
|
|
if [[ $1 == "--blur" ]]; then
|
|
echo $tmp_blur_path
|
|
else
|
|
echo $outputUrl
|
|
fi |