update
BIN
wallpapers/1080p/Monterey-dark.png
Normal file
After Width: | Height: | Size: 63 KiB |
BIN
wallpapers/1080p/Monterey-light.png
Normal file
After Width: | Height: | Size: 187 KiB |
BIN
wallpapers/1080p/WhiteSur-dark.png
Normal file
After Width: | Height: | Size: 658 KiB |
BIN
wallpapers/1080p/WhiteSur-light.png
Normal file
After Width: | Height: | Size: 809 KiB |
BIN
wallpapers/2k/Monterey-dark.png
Normal file
After Width: | Height: | Size: 88 KiB |
BIN
wallpapers/2k/Monterey-light.png
Normal file
After Width: | Height: | Size: 264 KiB |
BIN
wallpapers/2k/WhiteSur-dark.png
Normal file
After Width: | Height: | Size: 993 KiB |
BIN
wallpapers/2k/WhiteSur-light.png
Normal file
After Width: | Height: | Size: 1.2 MiB |
BIN
wallpapers/4k/Monterey-dark.png
Normal file
After Width: | Height: | Size: 144 KiB |
BIN
wallpapers/4k/Monterey-light.png
Normal file
After Width: | Height: | Size: 510 KiB |
BIN
wallpapers/4k/WhiteSur-dark.png
Normal file
After Width: | Height: | Size: 1.7 MiB |
BIN
wallpapers/4k/WhiteSur-light.png
Normal file
After Width: | Height: | Size: 2.2 MiB |
Before Width: | Height: | Size: 159 KiB |
Before Width: | Height: | Size: 320 KiB |
Before Width: | Height: | Size: 159 KiB |
Before Width: | Height: | Size: 320 KiB |
Before Width: | Height: | Size: 857 KiB |
Before Width: | Height: | Size: 1 MiB |
Before Width: | Height: | Size: 857 KiB |
Before Width: | Height: | Size: 1 MiB |
|
@ -8,6 +8,7 @@ BACKGROUND_DIR="/usr/share/backgrounds"
|
||||||
PROPERTIES_DIR="/usr/share/gnome-background-properties"
|
PROPERTIES_DIR="/usr/share/gnome-background-properties"
|
||||||
|
|
||||||
THEME_VARIANTS=('WhiteSur' 'Monterey')
|
THEME_VARIANTS=('WhiteSur' 'Monterey')
|
||||||
|
SCREEN_VARIANTS=('1080p' '2k' '4k')
|
||||||
|
|
||||||
#COLORS
|
#COLORS
|
||||||
CDEF=" \033[0m" # default color
|
CDEF=" \033[0m" # default color
|
||||||
|
@ -38,13 +39,33 @@ prompt () {
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|
||||||
|
usage() {
|
||||||
|
cat << EOF
|
||||||
|
Usage: $0 [OPTION]...
|
||||||
|
|
||||||
|
OPTIONS:
|
||||||
|
-t, --theme VARIANT Specify theme variant(s) [whitesur|monterey] (Default: All variants)s)
|
||||||
|
-s, --screen VARIANT Specify screen variant [1080p|2k|4k] (Default: 1080p)
|
||||||
|
-u, --uninstall Uninstall wallpappers
|
||||||
|
-h, --help Show help
|
||||||
|
|
||||||
|
INSTALLATION EXAMPLES:
|
||||||
|
Install WhiteSur version on 4k display:
|
||||||
|
$0 -t whitesur -s 4k
|
||||||
|
EOF
|
||||||
|
}
|
||||||
|
|
||||||
install() {
|
install() {
|
||||||
local theme="$1"
|
local theme="$1"
|
||||||
prompt -i "\n * Install ${theme} in ${BACKGROUND_DIR}... "
|
local screen="$2"
|
||||||
|
|
||||||
|
prompt -i "\n * Install ${theme} ${screen} version in ${BACKGROUND_DIR}... "
|
||||||
[[ -d ${BACKGROUND_DIR}/${theme} ]] && rm -rf ${BACKGROUND_DIR}/${theme}
|
[[ -d ${BACKGROUND_DIR}/${theme} ]] && rm -rf ${BACKGROUND_DIR}/${theme}
|
||||||
[[ -f ${PROPERTIES_DIR}/${theme}.xml ]] && rm -rf ${PROPERTIES_DIR}/${theme}.xml
|
[[ -f ${PROPERTIES_DIR}/${theme}.xml ]] && rm -rf ${PROPERTIES_DIR}/${theme}.xml
|
||||||
cp -r ${REPO_DIR}/${theme} ${BACKGROUND_DIR}
|
mkdir -p ${BACKGROUND_DIR}/${theme}
|
||||||
cp -r ${REPO_DIR}/gnome-background-properties/${theme}.xml ${PROPERTIES_DIR}
|
cp -r ${REPO_DIR}/${screen}/${theme}{-dark,-light}.png ${BACKGROUND_DIR}/${theme}
|
||||||
|
cp -r ${REPO_DIR}/xml-files/timed-xml-files/${theme}-timed.xml ${BACKGROUND_DIR}/${theme}
|
||||||
|
cp -r ${REPO_DIR}/xml-files/gnome-background-properties/${theme}.xml ${PROPERTIES_DIR}
|
||||||
}
|
}
|
||||||
|
|
||||||
uninstall() {
|
uninstall() {
|
||||||
|
@ -55,7 +76,6 @@ uninstall() {
|
||||||
}
|
}
|
||||||
|
|
||||||
while [[ $# -gt 0 ]]; do
|
while [[ $# -gt 0 ]]; do
|
||||||
PROG_ARGS+=("${1}")
|
|
||||||
case "${1}" in
|
case "${1}" in
|
||||||
-u|--uninstall)
|
-u|--uninstall)
|
||||||
uninstall='true'
|
uninstall='true'
|
||||||
|
@ -77,8 +97,35 @@ while [[ $# -gt 0 ]]; do
|
||||||
break
|
break
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
echo "ERROR: Unrecognized color variant '$1'."
|
prompt -e "ERROR: Unrecognized theme variant '$1'."
|
||||||
echo "Try '$0 --help' for more information."
|
prompt -i "Try '$0 --help' for more information."
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
;;
|
||||||
|
-s|--screen)
|
||||||
|
shift
|
||||||
|
for screen in "$@"; do
|
||||||
|
case "$screen" in
|
||||||
|
1080p)
|
||||||
|
screens+=("${SCREEN_VARIANTS[0]}")
|
||||||
|
shift 1
|
||||||
|
;;
|
||||||
|
2k)
|
||||||
|
screens+=("${SCREEN_VARIANTS[1]}")
|
||||||
|
shift 1
|
||||||
|
;;
|
||||||
|
4k)
|
||||||
|
screens+=("${SCREEN_VARIANTS[2]}")
|
||||||
|
shift 1
|
||||||
|
;;
|
||||||
|
-*)
|
||||||
|
break
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
prompt -e "ERROR: Unrecognized screen variant '$1'."
|
||||||
|
prompt -i "Try '$0 --help' for more information."
|
||||||
exit 1
|
exit 1
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
@ -100,74 +147,39 @@ if [[ "${#themes[@]}" -eq 0 ]] ; then
|
||||||
themes=("${THEME_VARIANTS[@]}")
|
themes=("${THEME_VARIANTS[@]}")
|
||||||
fi
|
fi
|
||||||
|
|
||||||
install_access() {
|
if [[ "${#screens[@]}" -eq 0 ]] ; then
|
||||||
# Error message
|
screens=("${SCREEN_VARIANTS[@]}")
|
||||||
prompt -e "\n [ Error! ] -> Run me as root ! "
|
|
||||||
|
|
||||||
# persisted execution of the script as root
|
|
||||||
read -p "[ Trusted ] Specify the root password : " -t${MAX_DELAY} -s
|
|
||||||
[[ -n "$REPLY" ]] && {
|
|
||||||
sudo -S <<< $REPLY $0
|
|
||||||
} || {
|
|
||||||
clear
|
|
||||||
prompt -i "\n Operation canceled by user, Bye!"
|
|
||||||
exit 1
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
uninstall_access() {
|
|
||||||
#Check if password is cached (if cache timestamp not expired yet)
|
|
||||||
sudo -n true 2> /dev/null && echo
|
|
||||||
|
|
||||||
if [[ $? == 0 ]]; then
|
|
||||||
#No need to ask for password
|
|
||||||
sudo "$0" "${PROG_ARGS[@]}"
|
|
||||||
else
|
|
||||||
#Ask for password
|
|
||||||
prompt -e "\n [ Error! ] -> Run me as root! "
|
|
||||||
read -p " [ Trusted ] Specify the root password : " -t ${MAX_DELAY} -s
|
|
||||||
|
|
||||||
sudo -S echo <<< $REPLY 2> /dev/null && echo
|
|
||||||
|
|
||||||
if [[ $? == 0 ]]; then
|
|
||||||
#Correct password, use with sudo's stdin
|
|
||||||
sudo -S "$0" "${PROG_ARGS[@]}" <<< $REPLY
|
|
||||||
else
|
|
||||||
#block for 3 seconds before allowing another attempt
|
|
||||||
sleep 3
|
|
||||||
clear
|
|
||||||
prompt -e "\n [ Error! ] -> Incorrect password!\n"
|
|
||||||
exit 1
|
|
||||||
fi
|
fi
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
install_wallpaper() {
|
install_wallpaper() {
|
||||||
if [[ "$UID" == "$ROOT_UID" ]]; then
|
|
||||||
echo
|
echo
|
||||||
for theme in "${themes[@]}"; do
|
for theme in "${themes[@]}"; do
|
||||||
install "$theme"
|
for screen in "${screens[0]}"; do
|
||||||
|
install "$theme" "$screen"
|
||||||
|
done
|
||||||
done
|
done
|
||||||
else
|
|
||||||
install_access
|
|
||||||
echo
|
echo
|
||||||
fi
|
|
||||||
}
|
}
|
||||||
|
|
||||||
uninstall_wallpaper() {
|
uninstall_wallpaper() {
|
||||||
if [[ "$UID" == "$ROOT_UID" ]]; then
|
|
||||||
echo
|
echo
|
||||||
for theme in "${themes[@]}"; do
|
for theme in "${themes[@]}"; do
|
||||||
uninstall "$theme"
|
uninstall "$theme"
|
||||||
done
|
done
|
||||||
else
|
|
||||||
uninstall_access
|
|
||||||
echo
|
echo
|
||||||
fi
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if [[ $UID -ne $ROOT_UID ]]; then
|
||||||
|
echo
|
||||||
|
prompt -e "ERROR: Need root access! please run this script with sudo."
|
||||||
|
echo
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
if [[ "${uninstall}" != 'true' ]]; then
|
if [[ "${uninstall}" != 'true' ]]; then
|
||||||
install_wallpaper
|
install_wallpaper
|
||||||
else
|
else
|
||||||
uninstall_wallpaper
|
uninstall_wallpaper
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
prompt -s "Finished!"
|
||||||
|
|
|
@ -5,6 +5,7 @@ WALLPAPER_DIR="$HOME/.local/share/backgrounds"
|
||||||
|
|
||||||
THEME_VARIANTS=('WhiteSur' 'Monterey')
|
THEME_VARIANTS=('WhiteSur' 'Monterey')
|
||||||
COLOR_VARIANTS=('-light' '-dark')
|
COLOR_VARIANTS=('-light' '-dark')
|
||||||
|
SCREEN_VARIANTS=('1080p' '2k' '4k')
|
||||||
|
|
||||||
#COLORS
|
#COLORS
|
||||||
CDEF=" \033[0m" # default color
|
CDEF=" \033[0m" # default color
|
||||||
|
@ -35,13 +36,30 @@ prompt () {
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|
||||||
|
usage() {
|
||||||
|
cat << EOF
|
||||||
|
Usage: $0 [OPTION]...
|
||||||
|
|
||||||
|
OPTIONS:
|
||||||
|
-t, --theme VARIANT Specify theme variant(s) [whitesur|monterey] (Default: All variants)s)
|
||||||
|
-c, --color VARIANT Specify color variant(s) [light|dark] (Default: All variants)s)
|
||||||
|
-s, --screen VARIANT Specify screen variant [1080p|2k|4k] (Default: 1080p)
|
||||||
|
-u, --uninstall Uninstall wallpappers
|
||||||
|
-h, --help Show help
|
||||||
|
|
||||||
|
INSTALLATION EXAMPLES:
|
||||||
|
Install WhiteSur dark version on 4k display:
|
||||||
|
$0 -t whitesur -c dark -s 4k
|
||||||
|
EOF
|
||||||
|
}
|
||||||
|
|
||||||
install() {
|
install() {
|
||||||
local theme="$1"
|
local theme="$1"
|
||||||
local color="$2"
|
local color="$2"
|
||||||
|
local screen="$3"
|
||||||
prompt -i "\n * Install ${theme}${color} in ${WALLPAPER_DIR}... "
|
prompt -i "\n * Install ${theme}${color} in ${WALLPAPER_DIR}... "
|
||||||
|
|
||||||
[[ -f ${WALLPAPER_DIR}/${theme}${color}.png ]] && rm -rf ${WALLPAPER_DIR}/${theme}${color}.png
|
[[ -f ${WALLPAPER_DIR}/${theme}${color}.png ]] && rm -rf ${WALLPAPER_DIR}/${theme}${color}.png
|
||||||
cp -r ${REPO_DIR}/${theme}${color}.png ${WALLPAPER_DIR}
|
cp -r ${REPO_DIR}/${screen}/${theme}${color}.png ${WALLPAPER_DIR}
|
||||||
}
|
}
|
||||||
|
|
||||||
uninstall() {
|
uninstall() {
|
||||||
|
@ -103,6 +121,33 @@ while [[ $# -gt 0 ]]; do
|
||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
|
-s|--screen)
|
||||||
|
shift
|
||||||
|
for screen in "$@"; do
|
||||||
|
case "$screen" in
|
||||||
|
1080p)
|
||||||
|
screens+=("${SCREEN_VARIANTS[0]}")
|
||||||
|
shift 1
|
||||||
|
;;
|
||||||
|
2k)
|
||||||
|
screens+=("${SCREEN_VARIANTS[1]}")
|
||||||
|
shift 1
|
||||||
|
;;
|
||||||
|
4k)
|
||||||
|
screens+=("${SCREEN_VARIANTS[2]}")
|
||||||
|
shift 1
|
||||||
|
;;
|
||||||
|
-*)
|
||||||
|
break
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "ERROR: Unrecognized color variant '$1'."
|
||||||
|
echo "Try '$0 --help' for more information."
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
;;
|
||||||
-h|--help)
|
-h|--help)
|
||||||
usage
|
usage
|
||||||
exit 0
|
exit 0
|
||||||
|
@ -123,10 +168,16 @@ if [[ "${#colors[@]}" -eq 0 ]] ; then
|
||||||
colors=("${COLOR_VARIANTS[@]}")
|
colors=("${COLOR_VARIANTS[@]}")
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [[ "${#screens[@]}" -eq 0 ]] ; then
|
||||||
|
screens=("${SCREEN_VARIANTS[0]}")
|
||||||
|
fi
|
||||||
|
|
||||||
install_wallpaper() {
|
install_wallpaper() {
|
||||||
for theme in "${themes[@]}"; do
|
for theme in "${themes[@]}"; do
|
||||||
for color in "${colors[@]}"; do
|
for color in "${colors[@]}"; do
|
||||||
install "$theme" "$color"
|
for screen in "${screens[@]}"; do
|
||||||
|
install "$theme" "$color" "$screen"
|
||||||
|
done
|
||||||
done
|
done
|
||||||
done
|
done
|
||||||
}
|
}
|
||||||
|
|
35
wallpapers/render-wallpapers.sh
Executable file
|
@ -0,0 +1,35 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
INKSCAPE="$(command -v inkscape)" || true
|
||||||
|
OPTIPNG="$(command -v optipng)" || true
|
||||||
|
|
||||||
|
for theme in 'Monterey' 'WhiteSur'; do
|
||||||
|
for screen in '1080p' '2k' '4k'; do
|
||||||
|
for color in '-light' '-dark'; do
|
||||||
|
|
||||||
|
if [[ "${screen}" == '1080p' ]]; then
|
||||||
|
DPI="96"
|
||||||
|
elif [[ "${screen}" == '2k' ]]; then
|
||||||
|
DPI="128"
|
||||||
|
elif [[ "${screen}" == '4k' ]]; then
|
||||||
|
DPI="192"
|
||||||
|
fi
|
||||||
|
|
||||||
|
SRC_FILE="${theme}${color}.svg"
|
||||||
|
PNG_file="${screen}/${theme}${color}.png"
|
||||||
|
|
||||||
|
if [[ -f "$PNG_file" ]]; then
|
||||||
|
echo "'$PNG_file' exist! "
|
||||||
|
else
|
||||||
|
echo "Rendering '$PNG_file'"
|
||||||
|
"$INKSCAPE" --export-dpi="$DPI" \
|
||||||
|
--export-filename="$PNG_file" "$SRC_FILE" >/dev/null
|
||||||
|
|
||||||
|
if [[ -n "${OPTIPNG}" ]]; then
|
||||||
|
"$OPTIPNG" -o7 --quiet "$PNG_file"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
done
|
||||||
|
done
|
||||||
|
done
|