X-Git-Url: https://git.grml.org/?p=grml-debootstrap.git;a=blobdiff_plain;f=chroot-script;h=e1c183a635d82e043db5982bcb50d27cd34eef25;hp=1a74aef6be2550296f3d6057429ef1c17b0362e2;hb=15a11433dd0fc15f7a16130578d1a50bd1cdcdcf;hpb=5adf8f682756357f82f26b7400b1c140f1924bcf diff --git a/chroot-script b/chroot-script index 1a74aef..e1c183a 100755 --- a/chroot-script +++ b/chroot-script @@ -1,4 +1,4 @@ -#!/bin/sh +#!/bin/bash # Filename: /etc/debootstrap/chroot-script # Purpose: script executed in chroot when installing Debian via grml-debootstrap # Authors: grml-team (grml.org), (c) Michael Prokop @@ -9,6 +9,14 @@ # this script as /bin/chroot-script on your new installed system ################################################################################ +# error_handler {{{ +if [ "$REPORT_TRAP_ERR" = "yes" ] || [ "$FAIL_TRAP_ERR" = "yes" ]; then + set -E + set -o pipefail + trap "error_handler" ERR +fi +# }}} + . /etc/debootstrap/config || exit 1 . /etc/debootstrap/variables || exit 1 @@ -70,7 +78,7 @@ chrootmirror() { fi if [ -z "$COMPONENTS" ] ; then - COMPONENTS='main contrib non-free' + COMPONENTS='main' fi echo "Using repository components $COMPONENTS" @@ -154,8 +162,8 @@ EOF apt-get update $DPKG_OPTIONS else # make sure we have the keys available for aptitude - gpg --keyserver subkeys.pgp.net --recv-keys F61E2E7CECDEA787 - gpg --export F61E2E7CECDEA787 | apt-key add - || true # not yet sure + gpg --keyserver subkeys.pgp.net --recv-keys 709BCE51568573EBC160E590F61E2E7CECDEA787 + gpg --export 709BCE51568573EBC160E590F61E2E7CECDEA787 | apt-key add - || true # not yet sure # why it's necessary, sometimes we get an error even though it works [mika] fi @@ -343,7 +351,11 @@ kernel() { KVER=$(get_kernel_version) if [ -n "$KVER" ] ; then # note: install busybox to be able to debug initramfs - KERNELPACKAGES="linux-image-$KVER linux-headers-$KVER busybox firmware-linux-free firmware-linux" + KERNELPACKAGES="linux-image-$KVER linux-headers-$KVER busybox firmware-linux-free" + # only add firmware-linux if we have non-free as a component + if expr "$COMPONENTS" : '.*non-free' >/dev/null ; then + KERNELPACKAGES="$KERNELPACKAGES firmware-linux" + fi DEBIAN_FRONTEND=$DEBIAN_FRONTEND $APTINSTALL $KERNELPACKAGES else echo "Warning: Could not find a kernel for your system. Your system won't be able to boot itself!" @@ -575,7 +587,16 @@ grub_install() { done else echo "Installing grub on ${GRUB}:" - grub-install --no-floppy "$GRUB" + case "$RELEASE" in + lenny|squeeze|wheezy) + grub-install --no-floppy "$(readlink -f "${GRUB}")" + ;; + *) + echo "(hd0) ${GRUB}" > /boot/grub/device.map + grub-install "(hd0)" + rm /boot/grub/device.map + ;; + esac fi echo "Adjusting grub configuration for use on ${GRUB}."