#!/bin/sh
#
#  Configure the new image to be a minimal image, by removing packages
# not necessarily needed - and installing less resource-hungry ones
#
#  Still far away from perfect. Less personal than in the past, but
# for now still based on gut feeling.

prefix=$1



#
#  Source our common functions - this will let us install a Debian package.
#
if [ -e /usr/share/xen-tools/common.sh ]; then
    . /usr/share/xen-tools/common.sh
else
    echo "Installation problem"
fi




#
#  Install some new packages - do this first to avoid dependency errors
#

# Minimalst possible syslog service
installDebianPackage ${prefix} busybox-syslogd

#
#  Remove some standard packages.
#

# PPP stuff.
removeDebianPackage ${prefix} pppconfig
removeDebianPackage ${prefix} pppoeconf
removeDebianPackage ${prefix} pppoe
removeDebianPackage ${prefix} ppp
removeDebianPackage ${prefix} libpcap0.7

# Editors, keep only a minimal vi, namely nvi
installDebianPackage ${prefix} nvi
removeDebianPackage ${prefix} ed nano
removeDebianPackage ${prefix} vim-tiny vim-common vim-runtime

# Syslog
removeDebianPackage ${prefix} klogd sysklogd
removeDebianPackage ${prefix} rsyslog
removeDebianPackage ${prefix} logrotate

# Man pages
removeDebianPackage ${prefix} manpages man-db groff-base
removeDebianPackage ${prefix} info

# misc
removeDebianPackage ${prefix} tasksel tasksel-data
removeDebianPackage ${prefix} pciutils
removeDebianPackage ${prefix} fdutils
removeDebianPackage ${prefix} util-linux-locales locales
removeDebianPackage ${prefix} debconf-i18n
removeDebianPackage ${prefix} netcat-traditional netcat-openbsd
removeDebianPackage ${prefix} whiptail

# Unnecessary stuff only installed by default on Ubuntu
removeDebianPackage ${prefix} sudo
removeDebianPackage ${prefix} resolvconf
removeDebianPackage ${prefix} console-setup keyboard-configuration kbd xkb-data ureadahead
removeDebianPackage ${prefix} python python3 dh-python

# General cleanup
chroot ${prefix} aptitude -y markauto \
    '~n -common' \
    '~s libs' \
    '~s localization' \
    '~s misc' \
    '~s perl' \
    '~s python'
chroot ${prefix} apt-mark auto \
    cpio \
    crda \
    debconf \
    install-info \
    kmod \
    lsb-base \
    makedev \
    mime-support \
    module-init-tools \
    plymouth

chroot ${prefix} aptitude -y purge '~c'
removeDebianPackage ${prefix} aptitude aptitude-common

chroot ${prefix} apt-get autoremove --purge
chroot ${prefix} apt-get clean
