From: Patrick Schleizer Date: Mon, 27 Aug 2018 20:26:44 +0000 (+0000) Subject: support skipping installation of grub using GRUB_INSTALL='no' X-Git-Tag: v0.83~1^2~1 X-Git-Url: https://git.grml.org/?p=grml-debootstrap.git;a=commitdiff_plain;h=0b1b798eb35cfc23f12819b55a11fff507b1e190 support skipping installation of grub using GRUB_INSTALL='no' split finalize_vm into grub_install and umount_target --- diff --git a/grml-debootstrap b/grml-debootstrap index 1c5d8b7..1a44c7b 100755 --- a/grml-debootstrap +++ b/grml-debootstrap @@ -80,6 +80,7 @@ MNTPOINT="/mnt/debootstrap.$$" [ -n "$TUNE2FS" ] || TUNE2FS='tune2fs -c0 -i0' [ -n "$UPGRADE_SYSTEM" ] || UPGRADE_SYSTEM='yes' [ -n "$VMSIZE" ] || VMSIZE="2G" +[ -n "$GRUB_INSTALL" ] || GRUB_INSTALL='yes' # inside the chroot system locales might not be available, so use minimum: export LANG=C @@ -1441,11 +1442,14 @@ prepare_vm() { } # }}} -# make VM image bootable and unmount it {{{ -finalize_vm() { +# make VM image bootable {{{ +grub_install() { if [ -z "${VIRTUAL}" ] ; then return 0 fi + if [ ! "$GRUB_INSTALL" = "yes" ]; then + return 0 + fi if ! mount "${TARGET}" "${MNTPOINT}" ; then eerror "Error: Mounting ${TARGET} failed, can not continue." ; eend 1 @@ -1514,6 +1518,16 @@ fi umount "${MNTPOINT}"/sys umount "${MNTPOINT}"/dev/pts try_umount 3 "${MNTPOINT}"/dev + +} +# }}} + +# unmount VM image {{{ +umount_target() { + if [ -z "${VIRTUAL}" ] ; then + return 0 + fi + umount "${MNTPOINT}" kpartx -d "${ORIG_TARGET}" >/dev/null } @@ -1881,7 +1895,7 @@ remove_configs() { for i in format_efi_partition prepare_vm mkfs tunefs \ mount_target mountpoint_to_blockdevice debootstrap_system \ preparechroot execute_pre_scripts chrootscript execute_post_scripts \ - remove_configs umount_chroot finalize_vm fscktool ; do + remove_configs umount_chroot grub_install umount_target fscktool ; do if stage "${i}" ; then if "$i" ; then stage "${i}" 'done' && rm -f "${STAGES}/${i}"