fi
$UPDATEGRUB -y
+ # grub1:
if [ -f /boot/grub/menu.lst ] ; then
sed -i "s/^# groot=.*/# groot=(${GROOT})/g" /boot/grub/menu.lst
case "$TARGET" in
sed -i "s/^savedefault.*/# &/g" /boot/grub/menu.lst
$UPDATEGRUB -y
fi
+
+ # grub2:
+ if [ -f /etc/default/grub ] ; then
+ # create a copy of the original:
+ cp /etc/default/grub /etc/default/grub.orig
+
+ case "$TARGET" in
+ # do NOT use uuid with SW-RAID
+ /dev/md*)
+ GRUB_CMDLINE="root=${TARGET} ro ${BOOT_APPEND}"
+ ;;
+ *)
+ if [ -n "$TARGET_UUID" ] ; then
+ GRUB_CMDLINE="root=UUID=${TARGET_UUID} ro ${BOOT_APPEND}"
+ else
+ GRUB_CMDLINE="root=${TARGET} ro ${BOOT_APPEND}"
+ fi
+ ;;
+ esac
+
+ cat > /etc/default/grub << EOF
+ # Note: this file has been generated by chroot-script of grml-debootstrap.
+ # This configuration file is a workaround being necessary as the device.map
+ # generated by the live system might not correspond with your harddisk
+ # installation.
+ #
+ # Please restore the original Debian configuration executing the following
+ # commands when running your harddisk installation:
+ #
+ # grub-mkdevicemap
+ # mv /etc/default/grub.orig /etc/default/grub
+ # update-grub
+ #
+GRUB_DEFAULT=0
+GRUB_TIMEOUT=5
+GRUB_DISTRIBUTOR=Debian
+GRUB_DISABLE_LINUX_UUID=true
+GRUB_CMDLLINE_LINUX="$GRUB_CMDLINE"
+EOF
+
+ [ -n "$INSTALL_NOTES" ] && echo "
+
+The grub2 configuration has been adjusted so you should
+be able to boot into your Debian installation now.
+After rebooting into your Debian installation please execute:
+
+ grub-mkdevicemap
+ mv /etc/default/grub.orig /etc/default/grub
+ update-grub
+
+to finalise configuration. This instructions are available
+in the header of /etc/default/grub as well.
+" >> $INSTALL_NOTES
+
+ $UPDATEGRUB -y
+ fi
fi
}
# }}}
grml-debootstrap (0.31) unstable; urgency=low
- * Adjust grubdevice() handling and install grub-pc package for
+ * Adjust grub handling and install grub-pc package for
supporting grub2. [Closes: issue747]
* Use cdn.debian.net as default mirror.
+ * Support config variable INSTALL_NOTES to catch information during
+ installation which is reported at the end of the installation process.
- -- Michael Prokop <mika@grml.org> Sat, 24 Oct 2009 02:05:26 +0200
+ -- Michael Prokop <mika@grml.org> Sat, 24 Oct 2009 02:47:00 +0200
grml-debootstrap (0.30) unstable; urgency=low
if which grub >/dev/null 2>&1 ; then
echo 'quit' | grub --device-map="$device_map" >/dev/null 2>&1
elif which grub-mkdevicemap >/dev/null 2>&1 ; then
- grub-mkdevicemap --device-map="$device_map" >/dev/null 2>&1
+ grub-mkdevicemap --no-floppy --device-map="$device_map" >/dev/null 2>&1
else
echo "Error: neither grub nor grub-mkdevicemap command found." >&2
return 1
touch $CHROOT_VARIABLES
chmod 600 $CHROOT_VARIABLES # make sure nobody except root can read it
echo "# Configuration of ${PN}" > $CHROOT_VARIABLES
- [ -n "$ARCH" ] && echo "ARCH=$ARCH" >> $CHROOT_VARIABLES
- [ -n "$GROOT" ] && echo "GROOT=$GROOT" >> $CHROOT_VARIABLES
- [ -n "$GRUB" ] && echo "GRUB=$GRUB" >> $CHROOT_VARIABLES
- [ -n "$HOSTNAME" ] && echo "HOSTNAME=$HOSTNAME" >> $CHROOT_VARIABLES
- [ -n "$ISODIR" ] && echo "ISODIR=$ISO" >> $CHROOT_VARIABLES
- [ -n "$ISO" ] && echo "ISO=$ISO" >> $CHROOT_VARIABLES
- [ -n "$MIRROR" ] && echo "MIRROR=$MIRROR" >> $CHROOT_VARIABLES
+ [ -n "$ARCH" ] && echo "ARCH=$ARCH" >> $CHROOT_VARIABLES
+ [ -n "$GROOT" ] && echo "GROOT=$GROOT" >> $CHROOT_VARIABLES
+ [ -n "$GRUB" ] && echo "GRUB=$GRUB" >> $CHROOT_VARIABLES
+ [ -n "$HOSTNAME" ] && echo "HOSTNAME=$HOSTNAME" >> $CHROOT_VARIABLES
+ [ -n "$INSTALL_NOTES" ] && echo "INSTALL_NOTES=$INSTALL_NOTES" >> $CHROOT_VARIABLES
+ [ -n "$ISODIR" ] && echo "ISODIR=$ISO" >> $CHROOT_VARIABLES
+ [ -n "$ISO" ] && echo "ISO=$ISO" >> $CHROOT_VARIABLES
+ [ -n "$MIRROR" ] && echo "MIRROR=$MIRROR" >> $CHROOT_VARIABLES
[ -n "$KEEP_SRC_LIST" ] && echo "KEEP_SRC_LIST=$KEEP_SRC_LIST" >> $CHROOT_VARIABLES
- [ -n "$PACKAGES" ] && echo "PACKAGES=$PACKAGES" >> $CHROOT_VARIABLES
- [ -n "$ROOTPASSWORD" ] && echo "ROOTPASSWORD=$ROOTPASSWORD" >> $CHROOT_VARIABLES
- [ -n "$TARGET" ] && echo "TARGET=$TARGET" >> $CHROOT_VARIABLES
- [ -n "$TARGET_UUID" ] && echo "TARGET_UUID=$TARGET_UUID" >> $CHROOT_VARIABLES
+ [ -n "$PACKAGES" ] && echo "PACKAGES=$PACKAGES" >> $CHROOT_VARIABLES
+ [ -n "$ROOTPASSWORD" ] && echo "ROOTPASSWORD=$ROOTPASSWORD" >> $CHROOT_VARIABLES
+ [ -n "$TARGET" ] && echo "TARGET=$TARGET" >> $CHROOT_VARIABLES
+ [ -n "$TARGET_UUID" ] && echo "TARGET_UUID=$TARGET_UUID" >> $CHROOT_VARIABLES
cp $VERBOSE $CONFFILES/chroot-script $MNTPOINT/bin/chroot-script
chmod 755 $MNTPOINT/bin/chroot-script
sed -i "s#GRUB=.*#GRUB=\"$GRUB\"#" $MNTPOINT/etc/debootstrap/config
sed -i "s#GROOT=.*#GROOT=\"$GROOT\"#" $MNTPOINT/etc/debootstrap/config
+ # install notes:
+ if [ -n "$INSTALL_NOTES" ] ; then
+ [ -r "$INSTALL_NOTES" ] && cp "$INSTALL_NOTES" $MNTPOINT/etc/debootstrap/
+ fi
+
# package selection:
cp $VERBOSE ${_opt_packages:-$CONFFILES/packages} \
$MNTPOINT/etc/debootstrap/packages
fi
# }}}
+# display installation notes {{{
+if [ -n "$INSTALL_NOTES" ] ; then
+ [ -r "$INSTALL_NOTES" ] && cat "$INSTALL_NOTES"
+fi
+# }}}
+
# end dialog of autoinstallation {{{
if [ -n "$AUTOINSTALL" ] ; then
dialog --title "$PN" --msgbox \