X-Git-Url: https://git.grml.org/?p=grml-live.git;a=blobdiff_plain;f=etc%2Fgrml%2Ffai%2Fconfig%2Fscripts%2FGRMLBASE%2F98-clean-chroot;h=a8d807d62694aa3781d78b3e09a461adba3f785a;hp=46275291170c8f7b9f3faa7d8a5e016bcc34bbfe;hb=8efad5c2d113d02caea9de491a267f068b52f8f2;hpb=b68164e384f6c7d682212995fc96ab919a2677f0 diff --git a/etc/grml/fai/config/scripts/GRMLBASE/98-clean-chroot b/etc/grml/fai/config/scripts/GRMLBASE/98-clean-chroot index 4627529..a8d807d 100755 --- a/etc/grml/fai/config/scripts/GRMLBASE/98-clean-chroot +++ b/etc/grml/fai/config/scripts/GRMLBASE/98-clean-chroot @@ -4,11 +4,18 @@ # Authors: grml-team (grml.org), (c) Michael Prokop # 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 17:37:09 CET 2007 [mika] ################################################################################ set -e +# check for policy-rc.d workaround of +# /etc/grml/fai/config/hooks/updatebase.GRMLBASE +if [ -r $target/usr/sbin/policy-rc.d ] ; then + if grep -q 'FAI_ACTION=updatebase' $target/usr/sbin/policy-rc.d ; then + rm -f $target/usr/sbin/policy-rc.d + fi +fi + # remove some big directories when using class LATEX_CLEANUP: if ifclass LATEX_CLEANUP ; then cp /etc/grml/fai/grml/grml_cleanup_chroot.latex_cleanup $target/root/ @@ -23,11 +30,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 remove --yes $pkg || true + done fi # drop unnecessary software: @@ -39,6 +47,14 @@ if ifclass GRML_SMALL || ifclass DEBORPHAN ; then fi fi +# 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/