Permalink
Browse files

Drop support for Etch, simplify grub handling

  • Loading branch information...
1 parent 7540b11 commit cbf40a49324ae7feb468e528a7845465304faaff @mika mika committed Oct 28, 2009
Showing with 74 additions and 246 deletions.
  1. +9 −101 chroot-script
  2. +10 −18 config
  3. +7 −0 debian/changelog
  4. +27 −96 grml-debootstrap
  5. +19 −27 grml-debootstrap.8.txt
  6. +1 −1 packages
  7. +0 −1 releasetable.txt
  8. +1 −2 zsh-completion
View
@@ -379,121 +379,28 @@ initrd() {
# generate initrd
if [ -n "$INITRD" ] ; then
- if [ "$RELEASE" = 'sarge' ] ; then
- echo "Release sarge detected, will not create an initrd."
- else
- echo "Generating initrd."
- update-initramfs -c -t -k $KERNELVER
- if [ -f "/boot/initrd.img-$KERNELVER" ] ; then
- GRUBINITRD="initrd /boot/initrd.img-$KERNELVER"
- LILOINITRD=" initrd=/boot/initrd.img-$KERNELVER"
- fi
- fi
+ echo "Generating initrd."
+ update-initramfs -c -t -k $KERNELVER
fi
}
# }}}
# grub configuration/installation {{{
-grub() {
- if [ -z "$GROOT" ] ; then
- echo "Warning: \$GROOT is not defined, will not adjust grub configuration therefore."
+grub_config() {
+ if [ -z "$GRUB" ] ; then
+ echo "Warning: \$GRUB is not defined, will not adjust grub configuration therefore."
else
- echo "Adjusting grub configuration for use on ${GROOT}."
-
- # copy stage-files to /boot/grub/
- [ -d /boot/grub/ ] || mkdir /boot/grub
- # i386 specific:
- [ -d /usr/lib/grub/i386-pc ] && cp /usr/lib/grub/i386-pc/* /boot/grub/
- # amd64 specific:
- [ -d /usr/lib/grub/x86_64-pc ] && cp /usr/lib/grub/x86_64-pc/* /boot/grub/
- # sarge ships grub files in another directory
- [ "$RELEASE" = 'sarge' ] && cp /lib/grub/i386-pc/* /boot/grub/
+ echo "Adjusting grub configuration for use on ${GRUB}."
# finally install grub
if [ -x /usr/sbin/update-grub ] ; then
UPDATEGRUB='/usr/sbin/update-grub'
else
UPDATEGRUB='/sbin/update-grub'
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
- # do NOT use uuid with SW-RAID
- /dev/md*)
- sed -i "s|^# kopt=root=.*|# kopt=root=${TARGET} ro ${BOOT_APPEND}|g" /boot/grub/menu.lst
- ;;
- *)
- if [ -n "$TARGET_UUID" ] ; then
- sed -i "s|^# kopt=root=.*|# kopt=root=UUID=${TARGET_UUID} ro ${BOOT_APPEND}|g" /boot/grub/menu.lst
- else
- sed -i "s|^# kopt=root=.*|# kopt=root=${TARGET} ro ${BOOT_APPEND}|g" /boot/grub/menu.lst
- fi
- ;;
- esac
-
- # not sure why savedefault does not work for me; any ideas?
- 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_CMDLINE_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
- fi
+ $UPDATEGRUB
fi
}
# }}}
@@ -534,7 +441,8 @@ finalize() {
# execute the functions {{{
for i in chrootmirror grmlrepos kernelimg_conf makedev install_policy_rcd \
kernel packages extrapackages mkinitrd reconfigure hosts interfaces \
- timezone fstab hostname initrd grub passwords custom_scripts services ; do
+ timezone fstab hostname initrd grub_config passwords custom_scripts \
+ services ; do
if stage $i ; then
$i && stage $i done || exit 1
fi
View
28 config
@@ -13,32 +13,24 @@
#
# Usually you want to use a partition. If you specify a string *without* /dev/
# in the beginning, grml-debootstrap assumes you want to install Debian into a
-# directory. If so then MKFS, TUNE2FS, GRUB, GROOT and FSCK won't apply, no
-# matter of the configuration variables. Make sure the TARGET-directory is on a
-# partition with present dev and exec mount options.
+# directory. If so then MKFS, TUNE2FS, GRUB and FSCK won't apply, no matter of
+# the configuration variables. Make sure the TARGET-directory is on a partition
+# with present dev and exec mount options.
#
# usage examples:
# TARGET='/dev/hda1'
# TARGET='/mnt/grml'
TARGET=''
-## Do you want to install grub? Then adjust the variables GRUB and GROOT.
-## If you do not set the variables grub will not be installed.
-# Where do you want to install grub to? Use grub syntax for specifying
-# hints: hd0,0 is the first partition on the first disk
-# hd0 is the MBR of the first disk
-# usage example:
-# GRUB='hd0'
+## Do you want to install grub? Just specify the device you'd like to use.
+## Example: Specify /dev/sda to install into MBR (master boot record) of
+## /dev/sda. If you do not set the variable grub will not be installed.
+## Please note that grub can NOT be installed into a partition (like /dev/sda2)
+## but in the master boot record only (/dev/sda, /dev/sdb,...).
+# Usage example:
+# GRUB='/dev/sda'
GRUB=''
-# specify root device for usage in grub (corresponds with $TARGET)
-# notice: if you install Debian for example to /dev/hda1 use hd0,0
-# hd0,0 is the first partition on the first disk
-# hd0 is the MBR of the first disk
-# usage example:
-# GROOT='hd0,0'
-GROOT=''
-
# specifiy additional bootparameters for usage in grub
# e.g. "pci=nomsi"
BOOT_APPEND=''
View
@@ -1,3 +1,10 @@
+grml-debootstrap (0.32) unstable; urgency=low
+
+ * Drop support for old-stable/etch.
+ * Simplify usage for grub handling, now it's just GRUB="/dev/sdX[#]".
+
+ -- Michael Prokop <mika@grml.org> Wed, 28 Oct 2009 21:40:46 +0100
+
grml-debootstrap (0.31) unstable; urgency=low
* Adjust grub handling and install grub-pc package for
Oops, something went wrong.

0 comments on commit cbf40a4

Please sign in to comment.