X-Git-Url: https://git.grml.org/?p=grml-live.git;a=blobdiff_plain;f=etc%2Fgrml%2Ffai%2Fconfig%2Fhooks%2Finstsoft.GRMLBASE;h=cf730400d93f99f805be042f8ed3a6efd2ca7b82;hp=473d8bcbeb829c61f09ffdf4391f9ed465fd22c7;hb=91e9fb27abd062d995110c8e03bfd1e60c6813c4;hpb=f3b335ea5c94d5cf24ec6b9184106b298849f311 diff --git a/etc/grml/fai/config/hooks/instsoft.GRMLBASE b/etc/grml/fai/config/hooks/instsoft.GRMLBASE index 473d8bc..cf73040 100755 --- a/etc/grml/fai/config/hooks/instsoft.GRMLBASE +++ b/etc/grml/fai/config/hooks/instsoft.GRMLBASE @@ -9,9 +9,6 @@ set -u set -e -GRML_SOURCES_LIST="$target/etc/apt/sources.list.d/grml.list" -DEBIAN_SOURCES_LIST="$target/etc/apt/sources.list.d/debian.list" - # if hooks/updatebase.GRMLBASE fails for whatever reason # and can't skip instsoft.GRMLBASE we have to make sure # we exit here as well @@ -63,22 +60,6 @@ if [ "$FAI_ACTION" = "softupdate" ] ; then //DPkg::Tools::Options::/usr/sbin/apt-listbugs::Version "2"; EOF - # FAI softupdate executes upgrade only with the sources.list being - # present in the chroot - so let's do it on our own: - fcopy /etc/apt/sources.list - - # when re-running grml-live with the -u option we do not want to use the - # sources.list config of the live system but grml-live's config instead, - # therefore temporarly move known files and restore them again later on - # through /etc/grml/fai/config/scripts/GRMLBASE/33-aptsetup: - if [ -r "$GRML_SOURCES_LIST" ] ; then - mv "$GRML_SOURCES_LIST" "${GRML_SOURCES_LIST}.unused" - fi - - if [ -r "$DEBIAN_SOURCES_LIST" ] ; then - mv "$DEBIAN_SOURCES_LIST" "${DEBIAN_SOURCES_LIST}.unused" - fi - # run it on our own, as updatebase is used at the wrong stage for our needs, # see ${GRML_FAI_CONFIG}/hooks/updatebase.GRMLBASE # the apt-get update might return an error if there's for example @@ -88,22 +69,30 @@ EOF echo "Warning: there was an error executing apt-get update, continuing anyway." fi + # work around /etc/kernel/postinst.d/zz-update-grub failing + # inside openvz environment, see #597084 + if ! $ROOTCMD dpkg-divert --list | grep -q '/usr/sbin/update-grub' ; then + echo "Diverting update-grub executable" + $ROOTCMD dpkg-divert --rename --add /usr/sbin/update-grub + $ROOTCMD ln -s /bin/true /usr/sbin/update-grub + fi + # newer aptitude versions won't remove essential packages using # 'aptitude -f -y install file-rc' anymore, therefore force it: $ROOTCMD aptitude -o Aptitude::ProblemResolver::Keep-All-Tier=60000 -f -y install file-rc - if ! [ -x $target/usr/bin/aptitude ] ; then + if ! $ROOTCMD test -x /usr/bin/aptitude ; then $ROOTCMD apt-get -y install aptitude fi - if [ -x $target/usr/bin/aptitude ] ; then + if $ROOTCMD test -x /usr/bin/aptitude ; then if $ROOTCMD aptitude --help | grep -q safe-upgrade ; then APT_LISTCHANGES_FRONTEND=none APT_LISTBUGS_FRONTEND=none $ROOTCMD aptitude -y safe-upgrade else APT_LISTCHANGES_FRONTEND=none APT_LISTBUGS_FRONTEND=none $ROOTCMD aptitude -y upgrade fi else - APT_LISTCHANGES_FRONTEND=none APT_LISTBUGS_FRONTEND=none $ROOTCMD apt-get -y upgrade + APT_LISTCHANGES_FRONTEND=none APT_LISTBUGS_FRONTEND=none $ROOTCMD apt-get -y --force-yes upgrade fi exit # make sure we don't continue behind the following "fi"