- for filename in 'addons.cfg', 'default.cfg', 'distri.cfg', 'hidden.cfg', 'grml.cfg', 'grml.png', 'hd.cfg', 'isoprompt.cfg', 'options.cfg','vesamenu.c32', 'vesamenu.cfg', 'grml.png':
- path = search_file(filename, iso_mount)
- exec_rsync(path, syslinux_target + filename)
+ loopback_cfg = search_file("loopback.cfg", iso_mount)
+ if loopback_cfg:
+ directory = os.path.dirname(loopback_cfg)
+ directory = directory.replace(iso_mount, "")
+ if not os.path.isdir(target + "/" + directory):
+ os.mkdir(target + os.path.sep + directory)
+ exec_rsync(loopback_cfg, target + os.path.sep + directory)
+
+ # avoid the "file is read only, overwrite anyway (y/n) ?" question
+ # of mtools by syslinux ("mmove -D o -D O s:/ldlinux.sys $target_file")
+ if os.path.isfile(syslinux_target + 'ldlinux.sys'):
+ os.unlink(syslinux_target + 'ldlinux.sys')
+
+ source_dir, name = get_defaults_file(iso_mount, GRML_DEFAULT, "default.cfg")
+ (source_dir,options) = get_defaults_file(iso_mount, GRML_DEFAULT, "grml.cfg")
+
+ if not source_dir:
+ logging.critical("Fatal: file default.cfg could not be found.")
+ logging.critical("Note: this grml2usb version requires an ISO generated by grml-live >=0.9.24 ...")
+ logging.critical(" ... either use grml releases >=2009.10 or switch to an older grml2usb version.")
+ logging.critical(" Please visit http://grml.org/grml2usb/#grml2usb-compat for further information.")
+ raise
+
+ for expr in name, 'distri.cfg', \
+ options, 'grml.png', 'hd.cfg', 'isolinux.cfg', 'isolinux.bin', \
+ 'isoprompt.cfg', 'options.cfg', \
+ 'prompt.cfg', 'vesamenu.c32', 'vesamenu.cfg', 'grml.png', '*.c32':
+ files = glob.glob(iso_mount + source_dir + expr)
+ for path in files:
+ filename = os.path.basename(path)
+ exec_rsync(path, syslinux_target + filename)
+
+ # copy the addons_*.cfg file to the new syslinux directory
+ for filename in glob.glob(iso_mount + source_dir + 'addon*.cfg'):
+ exec_rsync(filename, syslinux_target)
+
+ path = search_file('hidden.cfg', iso_mount + source_dir)
+ if path:
+ exec_rsync(path, syslinux_target + "new_" + 'hidden.cfg')
+