diff options
author | Juan RP <xtraeme@gmail.com> | 2015-11-05 11:16:18 +0100 |
---|---|---|
committer | Juan RP <xtraeme@gmail.com> | 2015-11-05 11:16:18 +0100 |
commit | 97ce376755fea3fcd577f3c2967e468cd34b106f (patch) | |
tree | d79463ecaa33fd1cde294f086170da568c51e7c0 /mklive.sh.in | |
parent | dae97a2d8194a951b1e7aff9bc0f9a78079a5538 (diff) | |
parent | d6a20ce1c80e4f2c3c9ee476e7598e9c2141e3c2 (diff) | |
download | hrmpf-97ce376755fea3fcd577f3c2967e468cd34b106f.tar.gz hrmpf-97ce376755fea3fcd577f3c2967e468cd34b106f.tar.xz hrmpf-97ce376755fea3fcd577f3c2967e468cd34b106f.zip |
Merge pull request #47 from the-maldridge/grub32
Add support for proper 32 bit grub
Diffstat (limited to 'mklive.sh.in')
-rw-r--r-- | mklive.sh.in | 39 |
1 files changed, 27 insertions, 12 deletions
diff --git a/mklive.sh.in b/mklive.sh.in index 21025ef..871c65f 100644 --- a/mklive.sh.in +++ b/mklive.sh.in @@ -28,7 +28,7 @@ #- trap "error_out $LINENO $?" INT TERM 0 -readonly REQUIRED_PKGS="base-files libgcc dash coreutils sed tar gawk syslinux grub-x86_64-efi squashfs-tools xorriso" +readonly REQUIRED_PKGS="base-files libgcc dash coreutils sed tar gawk syslinux grub-i386-efi grub-x86_64-efi squashfs-tools xorriso" readonly INITRAMFS_PKGS="binutils xz device-mapper" readonly PROGNAME=$(basename $0) @@ -208,18 +208,33 @@ generate_grub_efi_boot() { mount -o rw,flush -t vfat "${LOOP_DEVICE}" "${GRUB_EFI_TMPDIR}" >/dev/null 2>&1 cp -a $IMAGEDIR/boot $VOIDHOSTDIR - xbps-uchroot $VOIDHOSTDIR grub-mkstandalone -- \ - --directory="/usr/lib/grub/x86_64-efi" \ - --format="x86_64-efi" \ - --compression="xz" --output="/tmp/bootx64.efi" \ - "boot/grub/grub.cfg" - if [ $? -ne 0 ]; then - umount "$GRUB_EFI_TMPDIR" - losetup --detach "${LOOP_DEVICE}" - die "Failed to generate EFI loader" + if [ $BASE_ARCH = "i686" ]; then + xbps-uchroot $VOIDHOSTDIR grub-mkstandalone -- \ + --directory="/usr/lib/grub/i386-efi" \ + --format="i386-efi" \ + --compression="xz" --output="/tmp/bootia32.efi" \ + "boot/grub/grub.cfg" + if [ $? -ne 0 ]; then + umount "$GRUB_EFI_TMPDIR" + losetup --detach "${LOOP_DEVICE}" + die "Failed to generate EFI loader" + fi + mkdir -p ${GRUB_EFI_TMPDIR}/EFI/BOOT + cp -f $VOIDHOSTDIR/tmp/bootia32.efi ${GRUB_EFI_TMPDIR}/EFI/BOOT/BOOTIA32.EFI + else + xbps-uchroot $VOIDHOSTDIR grub-mkstandalone -- \ + --directory="/usr/lib/grub/x86_64-efi" \ + --format="x86_64-efi" \ + --compression="xz" --output="/tmp/bootx64.efi" \ + "boot/grub/grub.cfg" + if [ $? -ne 0 ]; then + umount "$GRUB_EFI_TMPDIR" + losetup --detach "${LOOP_DEVICE}" + die "Failed to generate EFI loader" + fi + mkdir -p ${GRUB_EFI_TMPDIR}/EFI/BOOT + cp -f $VOIDHOSTDIR/tmp/bootx64.efi ${GRUB_EFI_TMPDIR}/EFI/BOOT/BOOTX64.EFI fi - mkdir -p ${GRUB_EFI_TMPDIR}/EFI/BOOT - cp -f $VOIDHOSTDIR/tmp/bootx64.efi ${GRUB_EFI_TMPDIR}/EFI/BOOT/BOOTX64.EFI umount "$GRUB_EFI_TMPDIR" losetup --detach "${LOOP_DEVICE}" rm -rf $GRUB_EFI_TMPDIR |