X-Git-Url: https://git.grml.org/?p=grml-live.git;a=blobdiff_plain;f=etc%2Fgrml%2Ffai%2Fconfig%2Fhooks%2Fupdatebase.GRMLBASE;h=7255a2fbc039c39e578048361d2b39d0d632d81f;hp=4bed8739652b01479d4a2525b46ce305bbc4f540;hb=d039e207a6fea49a966168e7d31487b86840af11;hpb=2861f16a0d24d2c7f6a7f43abf6710fae3dbc286 diff --git a/etc/grml/fai/config/hooks/updatebase.GRMLBASE b/etc/grml/fai/config/hooks/updatebase.GRMLBASE index 4bed873..7255a2f 100755 --- a/etc/grml/fai/config/hooks/updatebase.GRMLBASE +++ b/etc/grml/fai/config/hooks/updatebase.GRMLBASE @@ -8,14 +8,11 @@ set -u set -e +. "$GRML_LIVE_CONFIG" # visualize chroot inside zsh: echo grml_chroot > $target/etc/debian_chroot -HOSTNAME='' -[ -r /etc/grml/grml-live.conf ] && . /etc/grml/grml-live.conf -[ -r /etc/grml/grml-live.local ] && . /etc/grml/grml-live.local -[ -n "$HOSTNAME" ] || HOSTNAME=grml echo "$HOSTNAME" > $target/etc/hostname if [ -n "${APT_PROXY:-}" ] ; then @@ -27,7 +24,7 @@ fi if [ "$FAI_ACTION" = "softupdate" ] ; then echo "Action $FAI_ACTION of FAI (hooks/updatebase.GRMLBASE) via grml-live running" - ## we want to use our own sources.list: + # otherwise we're running 'aptitude update' even on with -b option skiptask updatebase ## based on FAI's lib/updatebase: @@ -44,6 +41,11 @@ if [ "$FAI_ACTION" = "softupdate" ] ; then mount --bind /dev $FAI_ROOT/dev || true fi + if [ -d $FAI_ROOT/run ] ; then + mount -t tmpfs tmpfs $FAI_ROOT/run + mkdir $FAI_ROOT/run/lock + fi + mount -t devpts devpts $FAI_ROOT/dev/pts || true # skip the task if we want to build a new ISO only, @@ -51,8 +53,6 @@ if [ "$FAI_ACTION" = "softupdate" ] ; then if [ -n "$BUILD_ONLY" ] ; then skiptask instsoft || true fi - - exit # make sure we don't continue behind the following "fi" fi if [ -n "$BOOTSTRAP_ONLY" ] ; then @@ -60,9 +60,6 @@ if [ -n "$BOOTSTRAP_ONLY" ] ; then skiptask configure fi -# no softupdate but updating chroot e.g. based on ${GRML_FAI_CONFIG}/basefiles/* -echo "Action $FAI_ACTION of FAI (hooks/updatebase.GRMLBASE) via grml-live running" - # work around #632624: udev fails to install on systems with old kernel versions if ! [ -e ${target}/etc/udev/kernel-upgrade ] ; then echo "Working around udev package bug, creating /etc/udev/kernel-upgrade" @@ -70,10 +67,27 @@ if ! [ -e ${target}/etc/udev/kernel-upgrade ] ; then fi # install all apt related files -fcopy -B -v -r /etc/apt +fcopy -i -B -v -r /etc/apt + +# install packages from a repository of a specific date +if [ -n "${WAYBACK_DATE:-}" ] ; then + echo "Wayback date '$WAYBACK_DATE' identified, enabling for snapshot.debian.org usage." + + perl -pi -e "s#^(\s+)(deb.* )(.*://ftp.debian.org.*?)\s+([a-z-]+)\s+(.*)\$#\$1\$2 [check-valid-until=no] http://snapshot.debian.org/archive/debian/$WAYBACK_DATE/ \$4 \$5#" \ + "${target}/etc/apt/sources.list.d/debian.list" + + perl -pi -e "s#^(\s+)(deb.* )(.*://security.debian.org.*?)\s+([a-z-/]+)\s+(.*)\$#\$1\$2 [check-valid-until=no] http://snapshot.debian.org/archive/debian-security/$WAYBACK_DATE/ \$4 \$5#" \ + "${target}/etc/apt/sources.list.d/debian.list" +fi # install Grml gpg key: $ROOTCMD apt-key add /etc/apt/grml.key +if ! $ROOTCMD test -x /usr/bin/aptitude ; then + echo "aptitude binary is not available, installing to make sure further FAI actions continue to work" + $ROOTCMD apt-get update + $ROOTCMD apt-get -y install aptitude +fi + ## END OF FILE ################################################################# # vim:ft=sh expandtab ai tw=80 tabstop=4 shiftwidth=2