You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
199 lines
5.0 KiB
199 lines
5.0 KiB
#!/bin/bash |
|
|
|
# A script that updates existing Komorebi wallpapers |
|
# and add us to the start up with the new updated syntax |
|
|
|
echo "[INFO]: Removing old Komorebi properties file.." |
|
users="$(ls -d -1 /home/*/ | xargs -n 1 basename)" |
|
|
|
for user in $users; do |
|
|
|
rm -rf "/home/$user/.Komorebi.prop" |
|
|
|
mkdir -p "/home/$user/.config/autostart" |
|
cp "/usr/share/applications/komorebi.desktop" "/home/$user/.config/autostart/komorebi.desktop" |
|
chown "$user:$user" "/home/$user/.config/autostart" -R |
|
|
|
done |
|
|
|
echo "[INFO]: Updating existing Komorebi Wallpapers.." |
|
|
|
wallpapers=$(ls -d -1 /System/Resources/Komorebi/*/) |
|
|
|
for wallpaper in $wallpapers; do |
|
|
|
configtemplate="[Info] |
|
WallpaperType=image |
|
|
|
[DateTime] |
|
Visible=true |
|
Parallax=DATETIMEPARALLAX |
|
|
|
MarginLeft=MARGINLEFT |
|
MarginTop=MARGINTOP |
|
MarginBottom=MARGINBOTTOM |
|
MarginRight=MARGINRIGHT |
|
|
|
RotationX=0 |
|
RotationY=0 |
|
RotationZ=0 |
|
|
|
Position=POSITION |
|
Alignment=ALIGNMENT |
|
AlwaysOnTop=DATETIMEALWAYSONTOP |
|
|
|
Color=TIMECOLOR |
|
Alpha=255 |
|
|
|
ShadowColor=black |
|
ShadowAlpha=190 |
|
|
|
TimeFont=TIMEFONT |
|
DateFont=DATEFONT |
|
|
|
[Wallpaper] |
|
Parallax=WALLPAPERPARALLAX |
|
|
|
[Asset] |
|
Visible=ASSETVISIBLE |
|
AnimationMode=ANIMATIONMODE |
|
AnimationSpeed=ANIMATIONSPEED |
|
|
|
Width=0 |
|
Height=0 |
|
" |
|
|
|
|
|
# Skip wallpapers with videos (cause they're new) |
|
if [ -e $wallpaper"video.mp4" ]; then |
|
continue |
|
fi |
|
|
|
if [ -e $wallpaper"wallpaper.jpg" ]; then |
|
continue |
|
fi |
|
|
|
# Remove incompatible wallpapers |
|
if [ "$wallpaper" == "blue_pink_gradient" ]; then |
|
continue |
|
fi |
|
|
|
if [ "$wallpaper" == "dark_night_gradient" ]; then |
|
continue |
|
fi |
|
|
|
echo "Updating $wallpaper" |
|
oldfile=$wallpaper"bg.jpg" |
|
mv $oldfile $wallpaper"wallpaper.jpg" 2>/dev/null |
|
rm -rf $wallpaper"thumb.jpg" |
|
|
|
entirecontent="" |
|
|
|
halign="" |
|
valign="" |
|
|
|
|
|
while read -r line |
|
do |
|
entirecontent+=$line |
|
|
|
|
|
if [[ $line =~ "=" ]]; then |
|
|
|
IFS='=' read -r -a array <<< "$line" |
|
|
|
key="${array[0]}" |
|
value="${array[1]}" |
|
|
|
if [ "$key" == "DateTimeBoxParallax" ]; then |
|
configtemplate=${configtemplate/DATETIMEPARALLAX/$value} |
|
|
|
elif [ "$key" == "AnimationMode" ]; then |
|
|
|
if [ "$value" == "parallax-bg" ]; then |
|
configtemplate=${configtemplate/WALLPAPERPARALLAX/"true"} |
|
configtemplate=${configtemplate/ANIMATIONMODE/"noanimation"} |
|
else |
|
configtemplate=${configtemplate/WALLPAPERPARALLAX/"false"} |
|
configtemplate=${configtemplate/ANIMATIONMODE/$value} |
|
fi |
|
|
|
elif [ "$key" == "AnimationSpeed" ]; then |
|
configtemplate=${configtemplate/ANIMATIONSPEED/$value} |
|
|
|
elif [ "$key" == "DateTimeBoxMarginLeft" ]; then |
|
configtemplate=${configtemplate/MARGINLEFT/$value} |
|
|
|
elif [ "$key" == "DateTimeBoxMarginTop" ]; then |
|
configtemplate=${configtemplate/MARGINTOP/$value} |
|
|
|
elif [ "$key" == "DateTimeBoxMarginBottom" ]; then |
|
configtemplate=${configtemplate/MARGINBOTTOM/$value} |
|
|
|
elif [ "$key" == "DateTimeBoxMarginRight" ]; then |
|
configtemplate=${configtemplate/MARGINRIGHT/$value} |
|
|
|
elif [ "$key" == "TimeLabelAlignment" ]; then |
|
configtemplate=${configtemplate/ALIGNMENT/$value} |
|
|
|
elif [ "$key" == "DateTimeBoxHAlign" ]; then |
|
halign=$value |
|
|
|
elif [ "$key" == "DateTimeBoxVAlign" ]; then |
|
valign=$value |
|
|
|
elif [ "$key" == "DateTimeColor" ]; then |
|
configtemplate=${configtemplate/TIMECOLOR/$value} |
|
|
|
elif [ "$key" == "TimeLabelFont" ]; then |
|
configtemplate=${configtemplate/TIMEFONT/$value} |
|
|
|
elif [ "$key" == "DateLabelFont" ]; then |
|
configtemplate=${configtemplate/DATEFONT/$value} |
|
|
|
elif [ "$key" == "DateTimeBoxOnTop" ]; then |
|
configtemplate=${configtemplate/DATETIMEALWAYSONTOP/$value} |
|
fi |
|
fi |
|
done < $wallpaper"config" |
|
|
|
|
|
if [ -e $wallpaper"assets.png" ]; then |
|
configtemplate=${configtemplate/ASSETVISIBLE/"true"} |
|
else |
|
configtemplate=${configtemplate/ASSETVISIBLE/"false"} |
|
fi |
|
|
|
|
|
if [[ $halign =~ "start" ]] && [[ $valign =~ "start" ]]; then |
|
configtemplate=${configtemplate/POSITION/"top_left"} |
|
|
|
elif [[ $halign =~ "start" ]] && [[ $valign =~ "center" ]]; then |
|
configtemplate=${configtemplate/POSITION/"center_left"} |
|
|
|
elif [[ $halign =~ "start" ]] && [[ $valign =~ "end" ]]; then |
|
configtemplate=${configtemplate/POSITION/"bottom_left"} |
|
|
|
elif [[ $halign =~ "center" ]] && [[ $valign =~ "start" ]]; then |
|
configtemplate=${configtemplate/POSITION/"top_center"} |
|
|
|
elif [[ $halign =~ "center" ]] && [[ $valign =~ "center" ]]; then |
|
configtemplate=${configtemplate/POSITION/"center"} |
|
|
|
elif [[ $halign =~ "center" ]] && [[ $valign =~ "end" ]]; then |
|
configtemplate=${configtemplate/POSITION/"bottom_center"} |
|
|
|
elif [[ $halign =~ "end" ]] && [[ $valign =~ "start" ]]; then |
|
configtemplate=${configtemplate/POSITION/"top_right"} |
|
|
|
elif [[ $halign =~ "end" ]] && [[ $valign =~ "center" ]]; then |
|
configtemplate=${configtemplate/POSITION/"center_right"} |
|
|
|
elif [[ $halign =~ "end" ]] && [[ $valign =~ "end" ]]; then |
|
configtemplate=${configtemplate/POSITION/"bottom_right"} |
|
fi |
|
|
|
|
|
echo "$configtemplate" >$wallpaper"config" |
|
|
|
done |