X-Git-Url: https://git.grml.org/?p=grml2usb.git;a=blobdiff_plain;f=grml2usb;h=c53f58ba8e50181832b5033428c3d6f44906cf5c;hp=db067d4d8964671a33379dfc2bf99a6c8bdd102e;hb=ed5b633be961ef6b3;hpb=25c3bf7f43e285c2a6ab997a44efd8d21a514207 diff --git a/grml2usb b/grml2usb index db067d4..c53f58b 100755 --- a/grml2usb +++ b/grml2usb @@ -56,7 +56,10 @@ DATESTAMP = time.mktime(datetime.datetime.now().timetuple()) # unique identifie GRML_FLAVOURS = set() # which flavours are being installed? GRML_DEFAULT = None UUID = None -SYSLINUX_LIBS = "/usr/lib/syslinux/modules/bios/" +SYSLINUX_LIBS = [ + "/usr/lib/syslinux/modules/bios/", # Debian + "/usr/lib/syslinux/bios/", # Arch Linux +] GPT_HEADER = b"\x55\xaa\x45\x46\x49\x20\x50\x41\x52\x54" # original GPT header GRUB_INSTALL = None @@ -138,6 +141,8 @@ parser.add_option("--syslinux", dest="syslinux", action="callback", default=True help="install syslinux bootloader (deprecated as it's the default)") parser.add_option("--syslinux-mbr", dest="syslinuxmbr", action="store_true", help="install syslinux master boot record (MBR) instead of default") +parser.add_option("--syslinux-libs", dest="syslinuxlibs", action="append", default=[], + help="syslinux modules directory path") parser.add_option("--tmpdir", dest="tmpdir", default="/tmp", help="directory to be used for temporary files") parser.add_option("--verbose", dest="verbose", action="store_true", @@ -1127,8 +1132,11 @@ def copy_bootloader_files(iso_mount, target, grml_flavour): 'prompt.cfg', 'vesamenu.cfg', 'grml.png', '*.c32': glob_and_copy(iso_mount + source_dir + expr, syslinux_target) - for filename in glob.glob1(syslinux_target, "*.c32"): - copy_if_exist(os.path.join(SYSLINUX_LIBS, filename), syslinux_target) + for modules_dir in options.syslinuxlibs + SYSLINUX_LIBS: + if os.path.isdir(modules_dir): + for filename in glob.glob1(syslinux_target, "*.c32"): + copy_if_exist(os.path.join(modules_dir, filename), syslinux_target) + break # copy the addons_*.cfg file to the new syslinux directory glob_and_copy(iso_mount + source_dir + 'addon*.cfg', syslinux_target)