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=ae2d0c1fe46919732b39af71add277044a182914;hp=02665f6b63d7ed9f847e591745204c971945ddec;hb=3e5fb2360b0df8563ade7c0ec43acf655698fc13;hpb=7280b17f3796971162b0da54e0a5d5d43878f394 diff --git a/etc/grml/fai/config/scripts/GRMLBASE/98-clean-chroot b/etc/grml/fai/config/scripts/GRMLBASE/98-clean-chroot index 02665f6..ae2d0c1 100755 --- a/etc/grml/fai/config/scripts/GRMLBASE/98-clean-chroot +++ b/etc/grml/fai/config/scripts/GRMLBASE/98-clean-chroot @@ -1,25 +1,78 @@ -#!/bin/sh -# Filename: /etc/grml/fai/config/scripts/GRML/98-clean-chroot +#!/bin/bash +# Filename: /etc/grml/fai/config/scripts/GRMLBASE/98-clean-chroot # Purpose: clean up chroot system # 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: Mon Sep 17 17:36:13 CEST 2007 [mika] ################################################################################ -set -u set -e -# supported environment variables for grml_cleanup_chroot: -# NOCOLORS: if set it disables colors in (debugging) output -# LATEX_CLEANUP: remove some big directories of texlive (/usr/share/doc/texlive-*) -# NOONLINE: disable functions that require working network setup -# FAST: skip some longer tasks -# REMOVE_DOCS: rm -rf /usr/share/doc + /usr/share/info +# 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 -cp /etc/grml/fai/grml/grml_cleanup_chroot $target/root/ -$ROOTCMD sh -c "NOCOLORS=1 /root/grml_cleanup_chroot" -rm $target/root/grml_cleanup_chroot +# 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/ + $ROOTCMD /root/grml_cleanup_chroot.latex_cleanup + rm $target/root/grml_cleanup_chroot.latex_cleanup +fi + +# skip tasks which require only when using class NO_ONLINE: +if ! ifclass NO_ONLINE ; then + cp /etc/grml/fai/grml/grml_cleanup_chroot.online $target/root/ + $ROOTCMD /root/grml_cleanup_chroot.online + rm $target/root/grml_cleanup_chroot.online +fi + +# 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: +if ifclass GRML_SMALL || ifclass DEBORPHAN ; then + if [ -f /etc/grml/fai/grml/grml_cleanup_chroot.deborphan ] ; then + cp /etc/grml/fai/grml/grml_cleanup_chroot.deborphan $target/root/ + $ROOTCMD /root/grml_cleanup_chroot.deborphan + rm $target/root/grml_cleanup_chroot.deborphan + 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/ + $ROOTCMD /root/grml_cleanup_chroot + rm $target/root/grml_cleanup_chroot +fi + +# make sure GRML_SMALL uses the appropriate configuration: +if ifclass GRML_SMALL ; then + cp $target/etc/inittab.small $target/etc/inittab +fi + +if ifclass RELEASE ; then + # Remove all FAI logs from chroot via grml-live later then: + touch $target/etc/grml_fai_release + # Remove all files inside /root/ of chroot: + rm -rf $target/root && mkdir -m 0755 $target/root +fi ## END OF FILE ################################################################# # vim:ft=sh expandtab ai tw=80 tabstop=4 shiftwidth=3