#! /bin/bash

# copyright Thomas Lange 2001-2015, lange@debian.org

error=0; trap 'error=$(($?>$error?$?:$error))' ERR # save maximum error code

# check if mdadm has been forgotten
if grep -q active /proc/mdstat 2>/dev/null; then
    if [ ! -d $target/etc/mdadm ]; then
	echo ERROR: Found Software RAID, but the mdadm package was not installed
	error=1
    fi
fi

usedm=$(dmsetup ls | egrep -v '^live-rw|^live-base|^No devices found' | wc -l)
if [ $usedm -ne 0 ]; then
    if [ ! -d $target/etc/lvm ]; then
	echo ERROR: Found lvm devices, but the lvm2 package was not installed
	error=1
    fi
fi

# remove backup files from cfengine, but only if cfengine is installed
if [ -x /usr/sbin/cfagent ] || [ -x $target/usr/sbin/cfagent ] ; then
    dirs="root etc var"
    for path in $dirs; do
        find $target/$path -maxdepth 20 -name \*.cfedited -o -name \*.cfsaved | xargs -r rm
    done
fi

[ "$FAI_DEBMIRROR" ] &&
  ainsl /etc/fstab "#$FAI_DEBMIRROR $MNTPOINT nfs ro 0 0"

# set bios clock
if [ $do_init_tasks -eq 1 ] ; then
    case "$UTC" in
       no|"") hwopt="--localtime" ;;
       yes)   hwopt="--utc"       ;;
    esac
    hwclock $hwopt --systohc || true
fi

# Make sure everything is configured properly
if ifclass DEBIAN ; then
        echo "Running \"apt-get -f install\" for the last time."
        $ROOTCMD apt-get -f install
fi

if [ $FAI_ACTION = "install" ]; then
    lskernels=$(echo $target/boot/vmlinu*)
    [ -f ${lskernels%% *} ] || echo "ERROR: No kernel was installed. Have a look at shell.log" >&2
fi

# copy sources.list
fcopy -iM /etc/apt/sources.list

exit $error
