208 lines
7.5 KiB
Bash
208 lines
7.5 KiB
Bash
#!/bin/bash -e
|
|
set -e
|
|
|
|
# Tag to allow some debhelper commands to inject relevant code
|
|
#DEBHELPER#
|
|
|
|
if [[ "$1" = "configure" || "$1" = "abort-upgrade" || "$1" = "abort-remove" ]]; then
|
|
# Theme package alternatives
|
|
while read theme priority; do
|
|
update-alternatives --install \
|
|
/usr/share/desktop-base/active-theme \
|
|
desktop-theme \
|
|
/usr/share/desktop-base/$theme-theme $priority
|
|
done << EOF
|
|
softwaves 50
|
|
lines 40
|
|
EOF
|
|
|
|
# Use active theme as highest priority for background
|
|
update-alternatives --install \
|
|
/usr/share/images/desktop-base/desktop-background \
|
|
desktop-background \
|
|
/usr/share/desktop-base/active-theme/wallpaper/contents/images/1920x1080.svg 70
|
|
# Alternatives for the background in theme packages
|
|
while read theme filename priority; do
|
|
update-alternatives --install \
|
|
/usr/share/images/desktop-base/desktop-background \
|
|
desktop-background \
|
|
/usr/share/desktop-base/$theme-theme/wallpaper/contents/images/$filename $priority
|
|
done << EOF
|
|
softwaves 1280x720.svg 65
|
|
softwaves 1280x800.svg 65
|
|
softwaves 1920x1080.svg 65
|
|
softwaves 1920x1200.svg 65
|
|
softwaves 2560x1440.svg 65
|
|
softwaves 2560x1600.svg 65
|
|
lines 1280x1024.svg 60
|
|
lines 1600x1200.svg 60
|
|
lines 1920x1080.svg 60
|
|
lines 1920x1200.svg 60
|
|
lines 2560x1080.svg 60
|
|
EOF
|
|
# Old alternatives for the background
|
|
while read background priority; do
|
|
update-alternatives --install \
|
|
/usr/share/images/desktop-base/desktop-background \
|
|
desktop-background \
|
|
/usr/share/images/desktop-base/$background $priority
|
|
done << EOF
|
|
joy-wallpaper_1600x1200.svg 50
|
|
joy-wallpaper_1280x1024.svg 50
|
|
joy-wallpaper_1920x1080.svg 50
|
|
joy-wallpaper_1920x1200.svg 50
|
|
joy-inksplat-wallpaper_1920x1080.svg 50
|
|
spacefun-wallpaper.svg 50
|
|
spacefun-wallpaper-widescreen.svg 50
|
|
EOF
|
|
|
|
# Set up an alternative for the XML version of the background
|
|
# (for GNOME)
|
|
# Highest priority for active theme
|
|
update-alternatives --install \
|
|
/usr/share/images/desktop-base/desktop-background.xml \
|
|
desktop-background.xml \
|
|
/usr/share/desktop-base/active-theme/wallpaper/gnome-background.xml 50
|
|
# Alternatives for theme packages
|
|
while read theme priority; do
|
|
update-alternatives --install \
|
|
/usr/share/images/desktop-base/desktop-background.xml \
|
|
desktop-background.xml \
|
|
/usr/share/desktop-base/$theme-theme/wallpaper/gnome-background.xml $priority
|
|
done << EOF
|
|
softwaves 40
|
|
lines 30
|
|
EOF
|
|
# Old alternatives
|
|
while read desktopbackground priority; do
|
|
update-alternatives --install \
|
|
/usr/share/images/desktop-base/desktop-background.xml \
|
|
desktop-background.xml \
|
|
/usr/share/images/desktop-base/$desktopbackground $priority
|
|
done << EOF
|
|
joy.xml 20
|
|
EOF
|
|
|
|
# Set up an alternative for the XML version of the lock screen
|
|
# (for GNOME)
|
|
# Highest priority for active theme
|
|
update-alternatives --install \
|
|
/usr/share/images/desktop-base/desktop-lockscreen.xml \
|
|
desktop-lockscreen.xml \
|
|
/usr/share/desktop-base/active-theme/lockscreen/gnome-background.xml 50
|
|
# Alternatives for theme packages
|
|
while read theme priority; do
|
|
update-alternatives --install \
|
|
/usr/share/images/desktop-base/desktop-lockscreen.xml \
|
|
desktop-lockscreen.xml \
|
|
/usr/share/desktop-base/$theme-theme/lockscreen/gnome-background.xml $priority
|
|
done << EOF
|
|
softwaves 40
|
|
lines 30
|
|
EOF
|
|
|
|
# Set up an alternative for the wallpaper for Plasma 5/KDE
|
|
# Highest priority for active theme
|
|
update-alternatives --install \
|
|
/usr/share/wallpapers/DebianTheme \
|
|
desktop-plasma5-wallpaper \
|
|
/usr/share/desktop-base/active-theme/wallpaper 50
|
|
# Alternatives for theme packages
|
|
while read theme priority; do
|
|
update-alternatives --install \
|
|
/usr/share/wallpapers/DebianTheme \
|
|
desktop-plasma5-wallpaper \
|
|
/usr/share/desktop-base/$theme-theme/wallpaper $priority
|
|
done << EOF
|
|
softwaves 40
|
|
lines 30
|
|
EOF
|
|
|
|
# Login theme
|
|
# Highest priority for active theme
|
|
update-alternatives --install /usr/share/images/desktop-base/login-background.svg \
|
|
desktop-login-background \
|
|
/usr/share/desktop-base/active-theme/login/background.svg 50 \
|
|
--slave /usr/share/sddm/themes/debian-theme/sddm-preview.jpg \
|
|
desktop-sddm-preview \
|
|
/usr/share/desktop-base/active-theme/login/sddm-preview.jpg
|
|
# Alternatives for theme packages
|
|
while read theme background sddm_preview priority; do
|
|
update-alternatives --install /usr/share/images/desktop-base/login-background.svg \
|
|
desktop-login-background \
|
|
/usr/share/desktop-base/$theme-theme/login/$background $priority \
|
|
--slave /usr/share/sddm/themes/debian-theme/sddm-preview.jpg \
|
|
desktop-sddm-preview \
|
|
/usr/share/desktop-base/$theme-theme/login/$sddm_preview
|
|
done << EOF
|
|
softwaves background.svg sddm-preview.jpg 40
|
|
lines background.svg sddm-preview.jpg 30
|
|
lines background-nologo.svg sddm-preview-nologo.jpg 30
|
|
EOF
|
|
# Old alternatives
|
|
## Joy
|
|
update-alternatives --install /usr/share/images/desktop-base/login-background.svg \
|
|
desktop-login-background \
|
|
/usr/share/desktop-base/joy-theme/login-background.svg 20 \
|
|
--slave /usr/share/sddm/themes/debian-theme/sddm-preview.jpg \
|
|
desktop-sddm-preview \
|
|
/usr/share/desktop-base/joy-theme/sddm-preview.jpg
|
|
|
|
# Set up an alternative for the GRUB background/colors config
|
|
# Highest priority for active theme
|
|
## Favor widescreen / hi-res background for efi installations
|
|
num_grub_efi_installed=$(dpkg-query --list "grub-efi*" 2> /dev/null | grep "^i" | wc -l)
|
|
if [ $num_grub_efi_installed -gt 0 ] ; then
|
|
grub_prio_4x3=45
|
|
grub_prio_16x9=50
|
|
else
|
|
grub_prio_4x3=50
|
|
grub_prio_16x9=45
|
|
fi
|
|
update-alternatives --install \
|
|
/usr/share/images/desktop-base/desktop-grub.png \
|
|
desktop-grub \
|
|
/usr/share/desktop-base/active-theme/grub/grub-4x3.png $grub_prio_4x3 \
|
|
--slave /usr/share/desktop-base/grub_background.sh \
|
|
desktop-grub.sh \
|
|
/usr/share/desktop-base/active-theme/grub/grub_background.sh
|
|
update-alternatives --install \
|
|
/usr/share/images/desktop-base/desktop-grub.png \
|
|
desktop-grub \
|
|
/usr/share/desktop-base/active-theme/grub/grub-16x9.png $grub_prio_16x9 \
|
|
--slave /usr/share/desktop-base/grub_background.sh \
|
|
desktop-grub.sh \
|
|
/usr/share/desktop-base/active-theme/grub/grub_background.sh
|
|
# Alternatives for theme packages
|
|
while read theme ratio priority; do
|
|
update-alternatives --install /usr/share/images/desktop-base/desktop-grub.png \
|
|
desktop-grub \
|
|
/usr/share/desktop-base/$theme-theme/grub/grub-$ratio.png $priority \
|
|
--slave /usr/share/desktop-base/grub_background.sh \
|
|
desktop-grub.sh \
|
|
/usr/share/desktop-base/$theme-theme/grub/grub_background.sh
|
|
done << EOF
|
|
softwaves 4x3 40
|
|
softwaves 16x9 40
|
|
lines 4x3 30
|
|
lines 16x9 30
|
|
joy 4x3 30
|
|
joy 16x9 30
|
|
spacefun 4x3 30
|
|
spacefun 16x9 30
|
|
EOF
|
|
|
|
# Apply GRUB background update into /boot
|
|
if which update-grub2 > /dev/null ; then
|
|
# Ensure the background image file has actually been written to disc
|
|
# before updating.
|
|
sync
|
|
update-grub2 || true
|
|
fi
|
|
|
|
if which update-initramfs > /dev/null; then
|
|
update-initramfs -u
|
|
fi
|
|
|
|
fi
|