[Fedora-livecd-list] Branch 'f14-branch' - 5 commits - Makefile tools/livecd-iso-to-disk.sh

Brian C. Lane bcl at fedoraproject.org
Thu Sep 29 18:08:30 UTC 2011


 Makefile                    |    2 +-
 tools/livecd-iso-to-disk.sh |   44 ++++++++++++++++++++++++++++++++++++++++----
 2 files changed, 41 insertions(+), 5 deletions(-)

New commits:
commit b0279fe749e120404c1925723e4f0e6b516abbcd
Author: Brian C. Lane <bcl at redhat.com>
Date:   Thu Sep 29 11:08:01 2011 -0700

    Version 14.5

diff --git a/Makefile b/Makefile
index b98b6eb..bd23bf8 100644
--- a/Makefile
+++ b/Makefile
@@ -1,5 +1,5 @@
 
-VERSION = 14.4
+VERSION = 14.5
 
 INSTALL = /usr/bin/install -c
 INSTALL_PROGRAM = ${INSTALL}


commit 1628d668c610a0106a6cab242c6400fd92468b5a
Author: Brian C. Lane <bcl at redhat.com>
Date:   Wed Mar 23 14:06:25 2011 -0700

    Images go into $SYSLINUXPATH
    
    Now that syslinux version check is fixed they end up in the correct
    place.

diff --git a/tools/livecd-iso-to-disk.sh b/tools/livecd-iso-to-disk.sh
index 4e6eaad..e093759 100755
--- a/tools/livecd-iso-to-disk.sh
+++ b/tools/livecd-iso-to-disk.sh
@@ -799,8 +799,8 @@ if [ "$isotype" = "installer" ]; then
     sed -i -e "s;initrd=initrd.img;initrd=initrd.img ${LANG:+LANG=$LANG} repo=hd:$USBLABEL:/;g" $BOOTCONFIG
     sed -i -e "s;stage2=\S*;;g" $BOOTCONFIG
     if [ -n "$efi" ]; then
-        # Images are in / now
-        sed -i -e "s;images/pxeboot/;;g" -e "s;vmlinuz;vmlinuz ${LANG:+LANG=$LANG} repo=hd:$USBLABEL:/;g" $BOOTCONFIG_EFI
+        # Images are in $SYSLINUXPATH now
+        sed -i -e "s;/images/pxeboot/;/$SYSLINUXPATH/;g" -e "s;vmlinuz;vmlinuz ${LANG:+LANG=$LANG} repo=hd:$USBLABEL:/;g" $BOOTCONFIG_EFI
     fi
 fi
 
@@ -811,11 +811,10 @@ if [ "$isotype" = "netinst" ]; then
     else
         # The initrd has everything, so no stage2
         sed -i -e "s;stage2=\S*;;g" $BOOTCONFIG
-
-        if [ -n "$efi" ]; then
-            # Images are in / now
-            sed -ie "s;images/pxeboot/;;g" $BOOTCONFIG_EFI
-        fi
+    fi
+    if [ -n "$efi" ]; then
+        # Images are in $SYSLINUXPATH now
+        sed -ie "s;/images/pxeboot/;/$SYSLINUXPATH/;g" $BOOTCONFIG_EFI
     fi
 fi
 


commit 4d35c3c55a959f2ed593d89bbd238276c02b2014
Author: Brian C. Lane <bcl at redhat.com>
Date:   Thu Mar 17 14:11:43 2011 -0700

    Add extracting BOOTX64.efi from iso (#688258)
    
    Some iso's (RHEL6) don't have the BOOTX64.efi binary in /EFI/BOOT,
    but it is in the eltorito image, so if it is missing from the iso
    extract it from the eltorito using the dumpet utility.

diff --git a/tools/livecd-iso-to-disk.sh b/tools/livecd-iso-to-disk.sh
index 8901b36..4e6eaad 100755
--- a/tools/livecd-iso-to-disk.sh
+++ b/tools/livecd-iso-to-disk.sh
@@ -755,6 +755,34 @@ if [ -n "$efi" ];then
     # this is a little ugly, but it gets the "interesting" named config file
     BOOTCONFIG_EFI=$USBMNT$EFI_BOOT/+(BOOT|boot)?*.conf
     rm -f $USBMNT$EFI_BOOT/grub.conf
+
+    # On some images (RHEL) the BOOT*.efi file isn't in $EFI_BOOT, but is in
+    # the eltorito image, so try to extract it if it is missing
+
+    # test for presence of *.efi grub binary
+    if [ ! -f $USBMNT$EFI_BOOT/+(BOOT|boot)?*.efi ]; then
+        if [ ! -x /usr/bin/dumpet ]; then
+            echo "No /usr/bin/dumpet tool found. EFI image will not boot."
+            echo "Source media is missing grub binary in /EFI/BOOT/*efi"
+            exitclean
+        else
+            # dump the eltorito image with dumpet, output is $ISO.1
+            dumpet -i $ISO -d
+            EFIMNT=$(mktemp -d /media/srctmp.XXXXXX)
+            mount -o loop $ISO.1 $EFIMNT
+
+            if [ -f $EFIMNT$EFI_BOOT/+(BOOT|boot)?*.efi ]; then
+                cp $EFIMNT$EFI_BOOT/+(BOOT|boot)?*.efi $USBMNT$EFI_BOOT
+            else
+                echo "No BOOT*.efi found in eltorito image. EFI will not boot"
+                umount $EFIMNT
+                rm $ISO.1
+                exitclean
+            fi
+            umount $EFIMNT
+            rm $ISO.1
+        fi
+    fi
 fi
 
 echo "Updating boot config file"


commit 4b40c726fdffdb02c9fa5494f8b2b7c9c3318188
Author: Brian C. Lane <bcl at redhat.com>
Date:   Thu Mar 17 10:22:41 2011 -0700

    Add repo to DVD EFI install config file (#688258)

diff --git a/tools/livecd-iso-to-disk.sh b/tools/livecd-iso-to-disk.sh
index f50c6d3..8901b36 100755
--- a/tools/livecd-iso-to-disk.sh
+++ b/tools/livecd-iso-to-disk.sh
@@ -770,6 +770,10 @@ if [ "$LIVEOS" != "LiveOS" ]; then sed -i -e "s;liveimg;liveimg live_dir=$LIVEOS
 if [ "$isotype" = "installer" ]; then
     sed -i -e "s;initrd=initrd.img;initrd=initrd.img ${LANG:+LANG=$LANG} repo=hd:$USBLABEL:/;g" $BOOTCONFIG
     sed -i -e "s;stage2=\S*;;g" $BOOTCONFIG
+    if [ -n "$efi" ]; then
+        # Images are in / now
+        sed -i -e "s;images/pxeboot/;;g" -e "s;vmlinuz;vmlinuz ${LANG:+LANG=$LANG} repo=hd:$USBLABEL:/;g" $BOOTCONFIG_EFI
+    fi
 fi
 
 # DVD Installer for netinst


commit 6bb43719fa8a1a717782b0232421e56cf9dace0a
Author: Brian C. Lane <bcl at redhat.com>
Date:   Wed Mar 16 17:22:30 2011 -0700

    Add EFI support to netboot (#688258)

diff --git a/tools/livecd-iso-to-disk.sh b/tools/livecd-iso-to-disk.sh
index 9a311d6..f50c6d3 100755
--- a/tools/livecd-iso-to-disk.sh
+++ b/tools/livecd-iso-to-disk.sh
@@ -768,17 +768,22 @@ if [ "$LIVEOS" != "LiveOS" ]; then sed -i -e "s;liveimg;liveimg live_dir=$LIVEOS
 
 # DVD Installer
 if [ "$isotype" = "installer" ]; then
-    sed -i -e "s;initrd=initrd.img;initrd=initrd.img ${LANG:+LANG=$LANG} repo=hd:$USBLABEL:/;g" $BOOTCONFIG $BOOTCONFIG_EFI
-    sed -i -e "s;stage2=\S*;;g" $BOOTCONFIG $BOOTCONFIG_EFI
+    sed -i -e "s;initrd=initrd.img;initrd=initrd.img ${LANG:+LANG=$LANG} repo=hd:$USBLABEL:/;g" $BOOTCONFIG
+    sed -i -e "s;stage2=\S*;;g" $BOOTCONFIG
 fi
 
 # DVD Installer for netinst
 if [ "$isotype" = "netinst" ]; then
     if [ "$imgtype" = "install" ]; then
-        sed -i -e "s;stage2=\S*;stage2=hd:$USBLABEL:/images/install.img;g" $BOOTCONFIG $BOOTCONFIG_EFI
+        sed -i -e "s;stage2=\S*;stage2=hd:$USBLABEL:/images/install.img;g" $BOOTCONFIG
     else
         # The initrd has everything, so no stage2
-        sed -i -e "s;stage2=\S*;;g" $BOOTCONFIG $BOOTCONFIG_EFI
+        sed -i -e "s;stage2=\S*;;g" $BOOTCONFIG
+
+        if [ -n "$efi" ]; then
+            # Images are in / now
+            sed -ie "s;images/pxeboot/;;g" $BOOTCONFIG_EFI
+        fi
     fi
 fi
 




More information about the livecd mailing list