305 lines
12 KiB
Bash
Executable File
305 lines
12 KiB
Bash
Executable File
#!/bin/sh
|
||
set -e
|
||
|
||
# Tag to allow some debhelper commands to inject relevant code
|
||
# Automatically added by dh_icons/12.1.1
|
||
if [ "$1" = "configure" ] || [ "$1" = "abort-upgrade" ] || [ "$1" = "abort-deconfigure" ] || [ "$1" = "abort-remove" ] ; then
|
||
if which update-icon-caches >/dev/null 2>&1 ; then
|
||
update-icon-caches /usr/share/icons/desktop-base
|
||
fi
|
||
fi
|
||
# End automatically added section
|
||
# Automatically added by dh_installdeb/12.1.1
|
||
dpkg-maintscript-helper rm_conffile /etc/default/kdm.d/10_desktop-base 9.0.0\~ desktop-base -- "$@"
|
||
# End automatically added section
|
||
|
||
|
||
if [ "${1}" = "configure" ] && [ ! -z "${2}" ]; then
|
||
if dpkg --compare-versions ${2} le "9.0.0~exp1"; then
|
||
# Try remove folder if empty, left after 9.0.0~exp1 conf suppression
|
||
# by debhelper conffile handling
|
||
OLD_KDM_DIR=/etc/default/kdm.d
|
||
if [ -d ${OLD_KDM_DIR} ] ; then
|
||
echo "Removing old KDM configuration directory \"${OLD_KDM_DIR}\""
|
||
rmdir ${OLD_KDM_DIR} || true
|
||
fi
|
||
fi
|
||
fi
|
||
|
||
if [ "$1" = "configure" ] || [ "$1" = "abort-upgrade" ] || [ "$1" = "abort-remove" ]; then
|
||
# Vendor logo alternative
|
||
update-alternatives --install \
|
||
/usr/share/images/vendor-logos \
|
||
vendor-logos \
|
||
/usr/share/desktop-base/debian-logos 50 \
|
||
--slave /usr/share/icons/vendor/64x64/emblems/emblem-vendor.png \
|
||
emblem-vendor-64 \
|
||
/usr/share/icons/desktop-base/64x64/emblems/emblem-debian.png \
|
||
--slave /usr/share/icons/vendor/128x128/emblems/emblem-vendor.png \
|
||
emblem-vendor-128 \
|
||
/usr/share/icons/desktop-base/128x128/emblems/emblem-debian.png \
|
||
--slave /usr/share/icons/vendor/256x256/emblems/emblem-vendor.png \
|
||
emblem-vendor-256 \
|
||
/usr/share/icons/desktop-base/256x256/emblems/emblem-debian.png \
|
||
--slave /usr/share/icons/vendor/scalable/emblems/emblem-vendor.svg \
|
||
emblem-vendor-scalable \
|
||
/usr/share/icons/desktop-base/scalable/emblems/emblem-debian.svg \
|
||
--slave /usr/share/icons/vendor/64x64/emblems/emblem-vendor-symbolic.png \
|
||
emblem-vendor-symbolic-64 \
|
||
/usr/share/icons/desktop-base/64x64/emblems/emblem-debian-symbolic.png \
|
||
--slave /usr/share/icons/vendor/128x128/emblems/emblem-vendor-symbolic.png \
|
||
emblem-vendor-symbolic-128 \
|
||
/usr/share/icons/desktop-base/128x128/emblems/emblem-debian-symbolic.png \
|
||
--slave /usr/share/icons/vendor/256x256/emblems/emblem-vendor-symbolic.png \
|
||
emblem-vendor-symbolic-256 \
|
||
/usr/share/icons/desktop-base/256x256/emblems/emblem-debian-symbolic.png \
|
||
--slave /usr/share/icons/vendor/scalable/emblems/emblem-vendor-symbolic.svg \
|
||
emblem-vendor-symbolic-scalable \
|
||
/usr/share/icons/desktop-base/scalable/emblems/emblem-debian-symbolic.svg \
|
||
--slave /usr/share/icons/vendor/64x64/emblems/emblem-vendor-white.png \
|
||
emblem-vendor-white-64 \
|
||
/usr/share/icons/desktop-base/64x64/emblems/emblem-debian-white.png \
|
||
--slave /usr/share/icons/vendor/128x128/emblems/emblem-vendor-white.png \
|
||
emblem-vendor-white-128 \
|
||
/usr/share/icons/desktop-base/128x128/emblems/emblem-debian-white.png \
|
||
--slave /usr/share/icons/vendor/256x256/emblems/emblem-vendor-white.png \
|
||
emblem-vendor-white-256 \
|
||
/usr/share/icons/desktop-base/256x256/emblems/emblem-debian-white.png \
|
||
--slave /usr/share/icons/vendor/scalable/emblems/emblem-vendor-white.svg \
|
||
emblem-vendor-white-scalable \
|
||
/usr/share/icons/desktop-base/scalable/emblems/emblem-debian-white.svg
|
||
|
||
# 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
|
||
futureprototype 50
|
||
moonlight 40
|
||
softwaves 40
|
||
lines 40
|
||
joy 40
|
||
joy-inksplat 40
|
||
spacefun 40
|
||
EOF
|
||
|
||
# Use active theme as highest priority for background
|
||
active_background=/usr/share/desktop-base/active-theme/wallpaper/contents/images/1920x1080.svg
|
||
if [ -e ${active_background} ]; then
|
||
update-alternatives --install \
|
||
/usr/share/images/desktop-base/desktop-background \
|
||
desktop-background ${active_background} 70
|
||
fi
|
||
# 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
|
||
futureprototype 1920x1080.svg 65
|
||
moonlight 1920x1080.svg 65
|
||
softwaves 1024x768.svg 50
|
||
softwaves 1280x720.svg 50
|
||
softwaves 1280x800.svg 50
|
||
softwaves 1280x1024.svg 50
|
||
softwaves 1600x1200.svg 50
|
||
softwaves 1920x1080.svg 50
|
||
softwaves 1920x1200.svg 50
|
||
softwaves 2560x1440.svg 50
|
||
softwaves 2560x1600.svg 50
|
||
lines 1280x1024.svg 50
|
||
lines 1600x1200.svg 50
|
||
lines 1920x1080.svg 50
|
||
lines 1920x1200.svg 50
|
||
lines 2560x1080.svg 50
|
||
joy 1280x720.svg 50
|
||
joy 1280x1024.svg 50
|
||
joy 1600x1200.svg 50
|
||
joy 1920x1080.svg 50
|
||
joy 1920x1200.svg 50
|
||
joy-inksplat 1280x720.svg 50
|
||
joy-inksplat 1280x1024.svg 50
|
||
joy-inksplat 1600x1200.svg 50
|
||
joy-inksplat 1920x1080.svg 50
|
||
joy-inksplat 1920x1200.svg 50
|
||
spacefun 1280x720.svg 50
|
||
spacefun 1280x1024.svg 50
|
||
spacefun 1920x1080.svg 50
|
||
spacefun 1920x1200.svg 50
|
||
EOF
|
||
|
||
# Set up an alternative for the XML version of the background
|
||
# (for GNOME)
|
||
# Highest priority for active theme
|
||
active_background_xml=/usr/share/desktop-base/active-theme/wallpaper/gnome-background.xml
|
||
if [ -e ${active_background_xml} ]; then
|
||
update-alternatives --install \
|
||
/usr/share/images/desktop-base/desktop-background.xml \
|
||
desktop-background.xml ${active_background_xml} 50
|
||
fi
|
||
# 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
|
||
futureprototype 40
|
||
moonlight 30
|
||
softwaves 30
|
||
lines 30
|
||
joy 30
|
||
joy-inksplat 30
|
||
spacefun 30
|
||
EOF
|
||
|
||
# Set up an alternative for the XML version of the lock screen
|
||
# (for GNOME)
|
||
# Highest priority for active theme
|
||
active_lockscreen=/usr/share/desktop-base/active-theme/lockscreen/gnome-background.xml
|
||
if [ -e ${active_lockscreen} ]; then
|
||
update-alternatives --install \
|
||
/usr/share/images/desktop-base/desktop-lockscreen.xml \
|
||
desktop-lockscreen.xml ${active_lockscreen} 50
|
||
fi
|
||
# 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
|
||
futureprototype 40
|
||
moonlight 30
|
||
softwaves 30
|
||
lines 30
|
||
joy 30
|
||
spacefun 30
|
||
EOF
|
||
|
||
# Set up an alternative for the wallpaper for Plasma 5/KDE
|
||
# Highest priority for active theme
|
||
active_plasma_wallpaper=/usr/share/desktop-base/active-theme/wallpaper
|
||
if [ -e ${active_plasma_wallpaper} ]; then
|
||
update-alternatives --install \
|
||
/usr/share/wallpapers/DebianTheme \
|
||
desktop-plasma5-wallpaper ${active_plasma_wallpaper} 50
|
||
fi
|
||
# 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
|
||
futureprototype 40
|
||
moonlight 30
|
||
softwaves 30
|
||
lines 30
|
||
joy 30
|
||
joy-inksplat 30
|
||
spacefun 30
|
||
EOF
|
||
|
||
# Login theme
|
||
# Highest priority for active theme
|
||
active_login_background=/usr/share/desktop-base/active-theme/login/background.svg
|
||
if [ -e ${active_login_background} ]; then
|
||
update-alternatives --install /usr/share/images/desktop-base/login-background.svg \
|
||
desktop-login-background ${active_login_background} 50
|
||
fi
|
||
# Alternatives for theme packages
|
||
while read theme background 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
|
||
done << EOF
|
||
futureprototype background.svg 40
|
||
moonlight background.svg 40
|
||
softwaves background.svg 30
|
||
lines background.svg 30
|
||
lines background-nologo.svg 30
|
||
joy background.svg 30
|
||
spacefun background.svg 30
|
||
EOF
|
||
|
||
# Set up an alternative for the GRUB background/colors config
|
||
# Highest priority for active theme
|
||
# Favor widescreen / hi-res background for efi installations detected
|
||
# by the presence of grub-efi* packages (not the grub-efi*-bin which don’t
|
||
# necessary account for grub being the active bootloader).
|
||
if dpkg-query --list grub-efi* | grep -v "^... grub-efi[^[:space:]]*-bin" | grep -q "^[ih][HUFWti] " ; then
|
||
echo "grub-efi* packages found, using 16/9 as default grub background ratio"
|
||
grub_first_ratio="16x9"
|
||
grub_second_ratio="4x3"
|
||
else
|
||
echo "No grub-efi* package found, using 4/3 as default grub background ratio"
|
||
grub_first_ratio="4x3"
|
||
grub_second_ratio="16x9"
|
||
fi
|
||
active_grub_background=/usr/share/desktop-base/active-theme/grub/grub_background.sh
|
||
active_grub_first_ratio=/usr/share/desktop-base/active-theme/grub/grub-${grub_first_ratio}.png
|
||
if [ -e ${active_grub_first_ratio} ] && [ -e ${active_grub_background} ]; then
|
||
update-alternatives --install \
|
||
/usr/share/images/desktop-base/desktop-grub.png \
|
||
desktop-grub ${active_grub_first_ratio} 50 \
|
||
--slave /usr/share/desktop-base/grub_background.sh \
|
||
desktop-grub.sh ${active_grub_background}
|
||
fi
|
||
active_grub_second_ratio=/usr/share/desktop-base/active-theme/grub/grub-${grub_second_ratio}.png
|
||
if [ -e ${active_grub_second_ratio} ] && [ -e ${active_grub_background} ]; then
|
||
update-alternatives --install \
|
||
/usr/share/images/desktop-base/desktop-grub.png \
|
||
desktop-grub ${active_grub_second_ratio} 45 \
|
||
--slave /usr/share/desktop-base/grub_background.sh \
|
||
desktop-grub.sh ${active_grub_background}
|
||
fi
|
||
# 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
|
||
futureprototype 4x3 40
|
||
futureprototype 16x9 40
|
||
moonlight 4x3 30
|
||
moonlight 16x9 30
|
||
softwaves 4x3 30
|
||
softwaves 16x9 30
|
||
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
|
||
# Try detecting active grub packages (so not -doc, -common, -bin) as a hint
|
||
# that GRUB is being used as bootloader before calling update-grub.
|
||
# Some people use the *-bin packages without using GRUB as bootloader
|
||
# (see #851893 for more context).
|
||
if dpkg-query --list "grub-*" | grep -v "^... grub\(-common\|-emu\|[^[:space:]]*\(-bin\|-doc\)\)" | grep -q "^[ih][HUFWti] " \
|
||
&& which update-grub > /dev/null ; then
|
||
# Ensure the background image file has actually been written to disc
|
||
# before updating.
|
||
sync
|
||
# Report success whatever grub return status. This is needed at least
|
||
# in live systems fon installation to succeed (see #850601).
|
||
# Until we find a better solution like detecting we’re in a live image
|
||
# and not calling update-grub at all.
|
||
update-grub || echo "Updating grub failed, report success anyway!"
|
||
fi
|
||
|
||
if which update-initramfs > /dev/null; then
|
||
update-initramfs -u
|
||
fi
|
||
|
||
fi
|