#!/bin/sh
# postinst script for mypackage
#
# see: dh_installdeb(1)

#set -e

# summary of how this script can be called:
#        * <postinst> `configure' <most-recently-configured-version>
#        * <old-postinst> `abort-upgrade' <new version>
#        * <conflictor's-postinst> `abort-remove' `in-favour' <package>
#          <new-version>
#        * <postinst> `abort-remove'
#        * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
#          <failed-install-package> <version> `removing'
#          <conflicting-package> <version>
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package


case "$1" in
    configure)
	## Setting up diversions to protect from grub upgrades that remove multi-init support
	    for F in \
        /etc/default/grub    \
        /etc/grub.d/00_header    \
        /etc/grub.d/05_debian_theme    \
        /etc/grub.d/10_linux    \
        /etc/grub.d/20_linux_xen    \
        /etc/grub.d/20_memtest86+   \
        /etc/grub.d/25_bli   \
        /etc/grub.d/30_os-prober    \
        /etc/grub.d/30_uefi-firmware    \
        /etc/grub.d/40_custom    \
        /etc/grub.d/41_custom    \
        /etc/grub.d/README
    do
        dpkg-divert --quiet --package grub-init-diversity --rename \
                    --divert /usr/share/grub-init-diversity/grub-diversions$F --add $F || :
    done
    
    ## Updating antiX-MX live grub configuration
if [ -e /usr/local/share/live-files/general-files/etc/default ]; then
	echo "found antiX-MX live remastering GRUB configuration - updating for init-diversity"
	cat /usr/share/grub-init-diversity/etc/default/grub > /usr/local/share/live-files/general-files/etc/default/grub
	mkdir -p /usr/local/share/live-files/files/etc/grub.d
	for G in \
        00_header    \
        05_debian_theme    \
        10_linux    \
        20_linux_xen    \
        20_memtest86+   \
        25_bli   \
        30_os-prober    \
        30_uefi-firmware    \
        40_custom    \
        41_custom    \
        README
    do
       cat /usr/share/grub-init-diversity/etc/grub.d/$G > /usr/local/share/live-files/files/etc/grub.d/$G || :
    done
fi
    
    ## Running update-grub after changes have been made - skipping this if running in Live/Frugal mode
		if mountpoint -q /live/aufs; then
			echo "Live/Frugal system detected - Not updating GRUB"
			exit 0
		elif [ "$(stat -c %d/%i /)" != "$(stat -Lc %d/%i /proc/1/root 2>/dev/null)" ]; then
			echo "A chroot environment has been detected - Not updating GRUB"
			exit 0
		else	
			if [ -x /usr/sbin/update-grub ]; then 
			echo "Updating GRUB to reveal the updated init entries"
			update-grub
			fi
		fi
    ;;

    abort-upgrade|abort-remove|abort-deconfigure)
    ;;

    *)
        echo "postinst called with unknown argument \`$1'" >&2
        exit 1
    ;;
esac

# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.



#DEBHELPER#

exit 0
