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

[PATCH 1/3] lorax: Add support for building EFI hybrid images



From: Matthew Garrett <mjg redhat com>

If we're producing EFI bootable images then we should also support
making them bootable from USB sticks. This adds support for doing so.
---
 lorax.spec            |    2 +-
 src/pylorax/images.py |    4 +++-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/lorax.spec b/lorax.spec
index cffea11..93ab71f 100644
--- a/lorax.spec
+++ b/lorax.spec
@@ -29,7 +29,7 @@ Requires:       gzip
 Requires:       xz
 
 %ifarch %{ix86} x86_64
-Requires:       syslinux
+Requires:       syslinux >= 4.02-5
 %endif
 
 %ifarch %{sparc}
diff --git a/src/pylorax/images.py b/src/pylorax/images.py
index 7aae553..aaaf461 100644
--- a/src/pylorax/images.py
+++ b/src/pylorax/images.py
@@ -546,10 +546,12 @@ class X86(object):
     def create_boot(self, efiboot=None):
         # define efiargs and efigraft
         efiargs, efigraft = [], []
+        efihybridargs = []
         if efiboot:
             efiargs = ["-eltorito-alt-boot", "-e",
                        joinpaths(IMAGESDIR, "efiboot.img"), "-no-emul-boot"]
             efigraft = ["EFI/BOOT={0}/EFI/BOOT".format(self.outputroot)]
+            efihybridargs = ["-u"]
 
         # create boot image
         boot_fpath = joinpaths(self.outputroot, IMAGESDIR, "boot.iso")
@@ -571,7 +573,7 @@ class X86(object):
 
         if os.path.exists(ISOHYBRID):
             # run isohybrid
-            cmd = [ISOHYBRID, boot_fpath]
+            cmd = [ISOHYBRID] + efihybridargs + [boot_fpath]
             p = subprocess.Popen(cmd, stdin=subprocess.PIPE,
                                  stdout=subprocess.PIPE)
             p.wait()
-- 
1.7.6


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