Make sure apt caches are up2date before trying to install aptitude
[grml-live.git] / etc / grml / fai / config / hooks / updatebase.GRMLBASE
index 4bed873..063cae4 100755 (executable)
@@ -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,16 @@ 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 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