Use apt-get instead of dpkg in removal of packages in grml-small.
[grml-live.git] / etc / grml / fai / config / scripts / GRMLBASE / 98-clean-chroot
index 8acb574..902bd02 100755 (executable)
@@ -4,7 +4,7 @@
 # Authors:       grml-team (grml.org), (c) Michael Prokop <mika@grml.org>
 # Bug-Reports:   see http://grml.org/bugs/
 # License:       This file is licensed under the GPL v2 or any later version.
-# Latest change: Sun Dec 16 20:00:39 CET 2007 [mika]
+# Latest change: Thu Sep 18 01:32:11 CEST 2008 [mika]
 ################################################################################
 
 set -e
@@ -23,11 +23,12 @@ if ! ifclass NO_ONLINE ; then
    rm $target/root/grml_cleanup_chroot.online
 fi
 
-# remove /usr/share/doc, /usr/share/info,... only in class REMOVE_DOCS:
-if ifclass REMOVE_DOCS ; then
-   cp /etc/grml/fai/grml/grml_cleanup_chroot.remove_docs $target/root/
-   $ROOTCMD  /root/grml_cleanup_chroot.remove_docs
-   rm $target/root/grml_cleanup_chroot.remove_docs
+# make sure to drop from grml-small what's unnecessary:
+if ifclass GRML_SMALL ; then
+   $ROOTCMD apt-get -y --purge remove aptitude
+   for pkg in groff-base info locales man-db manpages nano; do
+     $ROOTCMD apt-get --purge $pkg || true
+   done
 fi
 
 # drop unnecessary software:
@@ -39,11 +40,14 @@ if ifclass GRML_SMALL || ifclass DEBORPHAN ; then
    fi
 fi
 
-# make sure to drop from grml-small what's unnecessary:
-if ifclass GRML_SMALL ; then
-   $ROOTCMD apt-get -y --purge remove groff-base man-db info  man-db  manpages nano
+# remove /usr/share/doc, /usr/share/info,... only in class REMOVE_DOCS:
+# (important: remove them *after* deinstalling packages, otherwise
+# removing packages might fail due to lack of /usr/share/man/...)
+if ifclass REMOVE_DOCS ; then
+   cp /etc/grml/fai/grml/grml_cleanup_chroot.remove_docs $target/root/
+   $ROOTCMD  /root/grml_cleanup_chroot.remove_docs
+   rm $target/root/grml_cleanup_chroot.remove_docs
 fi
-
 # misc cleanup:
 if [ -f /etc/grml/fai/grml/grml_cleanup_chroot ] ; then
    cp /etc/grml/fai/grml/grml_cleanup_chroot $target/root/