#!/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