#!/bin/sh -e

. /usr/share/debconf/confmodule

log() {
    logger -t profilepreseed "info: $*"
}

log "fetching profile"

if db_get "debian-edu-install/profile" ; then 
  profiles="$RET"
  log "ok, found profiles $profiles"
else
  log "error, unable to fetch profiles $RET"
fi

tasksel=
preseed=
for profile in  $profiles ; do 
    case $profile in 
        Workstation,|Workstation)
            tasksel="${tasksel:+$tasksel, }DebianEdu networked workstation packages"
            preseeds="${preseed:+$preseed }workstation"
            networked=networked 
            log "Added task $profile"
            ;;
        Main-Server,|Main-Server)
            tasksel="${tasksel:+$tasksel, }DebianEdu Main Server packages"
            preseeds="${preseed:+$preseed }main-server"
            networked=networked 
            log "Added task $profile"
            ;;
        Thin-Client-Server,|Thin-Client-Server)
            tasksel="${tasksel:+$tasksel, }DebianEdu networked thin client server packages"
            preseeds="${preseed:+$preseed }thin-client-server"
            networked=networked 
            log "Added task $profile"
            ;;
        Standalone)
            tasksel="DebianEdu standalone workstation packages"
            preseeds="standalone"
            networked=
            log "Added task $profile"
            ;;
    esac
done

# Test if this is has working pcmcia, and if so assume that it's a laptop
if [ -e /proc/bus/pccard/drivers ]; then
    log "Found working pcmcia, assume it's a laptop"
    tasksel="${tasksel:+$tasksel, }Laptop"
fi

if [ "$tasksel" ] ; then 
    log "Preseeding tasksel with $tasksel"
    echo tasksel tasksel/first multiselect $tasksel | \
        chroot /target debconf-set-selections || \
        log "Failed to preseed taksel with $tasksel"
else
    log "No tasksel to preseed "
fi

for preseed in common $networked $preseeds ; do 
    if [ -f /usr/lib/debian-edu-install/defaults.$preseed ] ; then 
        log "Found preseeding for $preseed"
        cat /usr/lib/debian-edu-install/defaults.$preseed | \
            chroot /target debconf-set-selections || \
            log "Failed to preseed defaults for $preseed"
    else
        log "Unable to find preseeding for $preseed"
    fi
done
