- 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)
+ # 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')
+
+ bootloader_dirs = ['/boot/isolinux/', '/boot/syslinux/']
+ source_dir = None
+ for dir in bootloader_dirs:
+ if glob.glob(iso_mount + dir + '*default.cfg'):
+ source_dir = dir
+ break
+ else:
+ 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 '*default.cfg', 'distri.cfg', \
+ '*grml.cfg', 'grml.png', 'hd.cfg', 'isolinux.cfg', 'isolinux.bin', \
+ 'isoprompt.cfg', 'options.cfg', \
+ 'prompt.cfg', 'vesamenu.c32', 'vesamenu.cfg', 'grml.png':
+ 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')
+