#!/bin/sh set -e 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/kali-logos 60 \ --slave /usr/share/icons/vendor/64x64/emblems/emblem-vendor.png \ emblem-vendor-64 \ /usr/share/icons/desktop-base/64x64/emblems/emblem-kali.png \ --slave /usr/share/icons/vendor/128x128/emblems/emblem-vendor.png \ emblem-vendor-128 \ /usr/share/icons/desktop-base/128x128/emblems/emblem-kali.png \ --slave /usr/share/icons/vendor/256x256/emblems/emblem-vendor.png \ emblem-vendor-256 \ /usr/share/icons/desktop-base/256x256/emblems/emblem-kali.png \ --slave /usr/share/icons/vendor/scalable/emblems/emblem-vendor.svg \ emblem-vendor-scalable \ /usr/share/icons/desktop-base/scalable/emblems/emblem-kali.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 kali 60 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 kali 1024x768.svg 67 kali 1280x720.svg 67 kali 1280x800.svg 67 kali 1280x1024.svg 67 kali 1600x1200.svg 67 kali 1920x1080.svg 67 kali 1920x1200.svg 67 kali 2560x1440.svg 67 kali 2560x1600.svg 67 kali 3840x2160.svg 67 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 kali 45 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 kali 45 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 kali 45 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 kali background.svg 45 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 kali 4x3 45 kali 16x9 45 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 # Set Kali as default plymouth theme if [ "${1}" = "configure" ] && dpkg --compare-versions "$2" lt "10.0.2+kali3"; then if which plymouth-set-default-theme > /dev/null; then plymouth-set-default-theme kali if which update-initramfs > /dev/null; then update-initramfs -u fi fi fi #DEBHELPER#