--- a/debian/postinst	2012-08-06 14:55:57.225921175 +0800
+++ b/debian/postinst	2012-08-06 14:59:32.697926026 +0800
@@ -76,13 +76,18 @@
 	tasksel_start=50
 else
 	upgrade_type="$RET"
+	# Convert to apt-get command names.
+	case "$RET" in
+	safe-upgrade) upgrade_type=upgrade;;
+	full-upgrade) upgrade_type=dist-upgrade;;
+	esac
 	db_progress INFO pkgsel/progress/upgrade
 	sleep 2 # allow the message to be seen
 
 	log "checking for (security) updates to the base system"
 	# Exclude Recommends to avoid installing new packages as part of
         # an upgrade.
-	in-target sh -c "debconf-apt-progress --from 50 --to 100 --logstderr -- aptitude -q --without-recommends -y -o DPkg::options=--force-confnew '$upgrade_type'" || aptfailed
+	in-target sh -c "debconf-apt-progress --from 50 --to 100 --logstderr -- apt-get -q --no-install-recommends -y -o DPkg::options=--force-confnew '$upgrade_type'" || aptfailed
 	tasksel_start=100
 fi
 
@@ -145,7 +150,7 @@
 	# Allow comma-separation so that this can more easily be preseeded
 	# at the kernel command line.
 	RET="$(printf '%s' "$RET" | sed 's/,/ /g')"
-	in-target sh -c "debconf-apt-progress --from 900 --to 950 --logstderr -- aptitude -q -y install -- $RET" || aptfailed
+	in-target sh -c "debconf-apt-progress --from 900 --to 950 --logstderr -- apt-get -q -y install -- $RET" || aptfailed
 fi
 
 log "finishing up"
