[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#775316: Use of grub2 bootloader broken



Package: live-build
Version: 5.0~a2-1
Tags: patch

Using a live cdrom image built with the grub2 bootloader results in an
error upon booting the disk, with grub complaining that it can't find a
file. The problem is that the grub2 script is copying all grub files
into /boot/grub when most of the grub2 bootloader files should be in
/boot/grub/i386-pc which is where it is looking and failing to find the
file, as per the error message seen.

Patch attached.
commit 372e09553489ad52083df002884a7dd8acbd08b2
Author: jnqnfe <jnqnfe@gmail.com>
Date:   Tue Jan 13 20:32:27 2015 +0000

    Fix grub2 bootloading (files copied to wrong directory)

diff --git a/scripts/build/binary_grub2 b/scripts/build/binary_grub2
index 61e8169..90a35d9 100755
--- a/scripts/build/binary_grub2
+++ b/scripts/build/binary_grub2
@@ -212,7 +212,7 @@ then
 fi
 
 # Copying templates
-mkdir -p binary/boot/grub
+mkdir -p binary/boot/grub/i386-pc
 cp -r "${TEMPLATES}"/* binary/boot/grub
 
 case ${LIVE_IMAGE_TYPE} in
@@ -231,7 +231,7 @@ then
 fi
 
 # Copying grub
-cp ${FILES} binary/boot/grub
+cp ${FILES} binary/boot/grub/i386-pc
 
 sed -i -e "s|LINUX_LIVE|${LINUX_LIVE}|" -e "s|LINUX_INSTALL|${LINUX_INSTALL}|" -e "s|MEMTEST|${MEMTEST}|" binary/boot/grub/grub.cfg
 sed -i -e "s#LB_BOOTAPPEND_INSTALL#${LB_BOOTAPPEND_INSTALL}#" -e "s#LB_BOOTAPPEND_LIVE#${LB_BOOTAPPEND_LIVE}#" binary/boot/grub/grub.cfg
diff --git a/scripts/build/binary_iso b/scripts/build/binary_iso
index 9e41686..33c8e1f 100755
--- a/scripts/build/binary_iso
+++ b/scripts/build/binary_iso
@@ -172,7 +172,7 @@ for file in \${input_dir}/*.mod \${input_dir}/efiemu??.o \
 do
 	if test -f "\$file"
 	then
-		cp -f "\$file" binary/boot/grub
+		cp -f "\$file" binary/boot/grub/i386-pc
 	fi
 done
 EOF

Reply to: