X-Git-Url: https://git.grml.org/?p=grml-live.git;a=blobdiff_plain;f=grml-live;h=07c1bd8a7d9af7599e5399ec8af4d67afb946341;hp=37f688b04e248227525f9400647fd05cc0d61237;hb=a6f58a0d9badd6e771ba16162286b06be5839d9c;hpb=152f1d98e09e062d74b1b1a0c2e19fdd8f5d7585 diff --git a/grml-live b/grml-live index 37f688b..07c1bd8 100755 --- a/grml-live +++ b/grml-live @@ -14,7 +14,7 @@ export LC_ALL=C # exit on any error: set -e -GRML_LIVE_VERSION='0.9.2' +GRML_LIVE_VERSION='0.9.4' PN="$(basename $0)" CMDLINE="$0 $@" ISO_DATE="$(date +%Y-%m-%d)" @@ -49,7 +49,7 @@ Usage examples: $PN $PN -c GRMLBASE,GRML_MEDIUM,I386 -o /dev/shm/grml - $PN -c GRMLBASE,GRML_SMALL,I386 -g grml-small -v 1.0 + $PN -c GRMLBASE,GRML_SMALL,REMOVE_DOCS,I386 -g grml-small -v 1.0 $PN -c GRMLBASE,GRML_FULL,I386 -i grml_0.0-1.iso -v 0.0-1 $PN -c GRMLBASE,GRML_FULL,I386 -s sid -V -r 'grml-live rocks' @@ -246,6 +246,10 @@ specify it on the command line using the -o option." # trim characters that are known to cause problems inside $GRML_NAME; # for example isolinux does not like '-' inside the directory name [ -n "$GRML_NAME" ] && export SHORT_GRML_NAME="$(echo $GRML_NAME | tr -d ',./;\- ')" + +# export variables to have them available in fai scripts: +[ -n "$GRML_NAME" ] && export GRML_NAME="$GRML_NAME" +[ -n "$RELEASENAME" ] && export RELEASENAME="$RELEASENAME" # }}} # clean/zero grml-live logfile {{{ @@ -424,8 +428,19 @@ else echo "$GRML_NAME $VERSION Release Codename $RELEASENAME [$ISO_DATE]" > $CHROOT_OUTPUT/etc/grml_version chmod 644 $CHROOT_OUTPUT/etc/grml_version einfo "Rebuilding initramfs" - chroot $CHROOT_OUTPUT update-initramfs -u -t # make sure new /etc/grml_version reaches the initramfs + # make sure new /etc/grml_version reaches the initramfs: + chroot $CHROOT_OUTPUT update-initramfs -u -t eend $? + # get rid of unnecessary files when building grml-small for final release: + if echo "$CLASSES" | grep -q GRML_SMALL && \ + echo "$CLASSES" | grep -q RELEASE ; then + einfo "Removing initrd and vmlinuz files in $CHROOT_OUTPUT/boot" + rm -f "$CHROOT_OUTPUT"/boot/initrd.img-* + rm -f "$CHROOT_OUTPUT"/boot/vmlinuz-* + eend $? + ewarn "Notice: you have to rebuild grml-small from scratch on next run." + eend 0 + fi fi # Remove all FAI logs from chroot if class RELEASE is used: @@ -477,11 +492,13 @@ if [ "$ARCH" = i386 ] || [ "$ARCH" = amd64 ] ; then ewarn "$BUILD_OUTPUT/boot exists already, skipping stage 'boot'" ; eend 0 else # booting stuff: - [ -d "$BUILD_OUTPUT"/boot/addons ] || mkdir -p "$BUILD_OUTPUT"/boot/addons [ -d "$BUILD_OUTPUT"/boot/isolinux ] || mkdir -p "$BUILD_OUTPUT"/boot/isolinux [ -d "$BUILD_OUTPUT"/boot/"${SHORT_GRML_NAME}" ] || mkdir -p "$BUILD_OUTPUT"/boot/"${SHORT_GRML_NAME}" - cp /boot/memtest86+.bin "$BUILD_OUTPUT"/boot/addons/memtest + if [ -z "$NO_ADDONS" ] ; then + [ -d "$BUILD_OUTPUT"/boot/addons ] || mkdir -p "$BUILD_OUTPUT"/boot/addons + cp /boot/memtest86+.bin "$BUILD_OUTPUT"/boot/addons/memtest + fi # if we don't have an initrd we a) can't boot and b) there was an error # during build, so check for the file: @@ -512,7 +529,10 @@ if [ "$ARCH" = i386 ] || [ "$ARCH" = amd64 ] ; then fi cp ${TEMPLATE_DIRECTORY}/boot/isolinux/* "$BUILD_OUTPUT"/boot/isolinux/ - cp ${TEMPLATE_DIRECTORY}/boot/addons/* "$BUILD_OUTPUT"/boot/addons/ + + if [ -z "$NO_ADDONS" ] ; then + cp ${TEMPLATE_DIRECTORY}/boot/addons/* "$BUILD_OUTPUT"/boot/addons/ + fi if ! [ -d "${BUILD_OUTPUT}/boot/grub" ] ; then cp -a ${TEMPLATE_DIRECTORY}/boot/grub "$BUILD_OUTPUT"/boot/