X-Git-Url: https://git.grml.org/?p=grml2usb.git;a=blobdiff_plain;f=grml2usb;h=39e441f7eb9c80a35908354ecdf4ebcfb850ca32;hp=ea6ae820a452e48f65334087b861574ceb5b7768;hb=b82aaee3ab8ef0969df67adce5f857874ca3685e;hpb=bd89fc4660e6e0ea6a298dfc894572dd35ee5181 diff --git a/grml2usb b/grml2usb index ea6ae82..39e441f 100755 --- a/grml2usb +++ b/grml2usb @@ -943,28 +943,19 @@ def copy_system_files(grml_flavour, iso_mount, target): else: exec_rsync(filesystem_module, squashfs_target + 'filesystem.module') + kernel = search_file('vmlinuz', iso_mount) + if kernel is None: + # compat for releases < 2011.12 + kernel = search_file('linux26', iso_mount) - release_path = 'boot/release/' + grml_flavour.replace('-', '') - release_target = target + "/" + release_path - execute(mkdir, release_target) - - prefix = "" - if os.path.isdir(iso_mount + '/boot/release'): - prefix = release_path + '/' - - kernel = search_file(prefix + 'linux26', iso_mount) if kernel is None: - logging.critical("Fatal kernel not found") + logging.critical("Fatal: kernel not found") raise CriticalException("error locating kernel file") - else: - exec_rsync(kernel, release_target + '/linux26') - initrd = search_file(prefix + 'initrd.gz', iso_mount) - if initrd is None: - logging.critical("Fatal: initrd not found") - raise CriticalException("error locating initrd file") - else: - exec_rsync(initrd, release_target + '/initrd.gz') + source = os.path.dirname(kernel) + '/' + dest = target + '/' + os.path.dirname(kernel).replace(iso_mount,'') + '/' + execute(mkdir, dest) + exec_rsync(source, dest) def update_grml_versions(iso_mount, target): @@ -1295,7 +1286,7 @@ def modify_grub_config(filename): for regex in options.removeoption: regexe.append(re.compile(r'%s' % regex)) - option_re = re.compile(r'(.*/boot/release/.*linux26.*)') + option_re = re.compile(r'(.*/boot/.*(linux26|vmlinuz).*)') for line in fileinput.input(filename, inplace=1): if regexe and option_re.search(line): @@ -1431,8 +1422,7 @@ def adjust_syslinux_bootoptions(src, flavour): @flavour: grml flavour """ - append_re = re.compile("^(\s*append.*/boot/release.*)$", re.I) - boot_re = re.compile("/boot/([a-zA-Z0-9_]+/)+([a-zA-Z0-9._]+)") + append_re = re.compile("^(\s*append.*/boot/.*)$", re.I) # flavour_re = re.compile("(label.*)(grml\w+)") default_re = re.compile("(default.cfg)") bootid_re = re.compile("bootid=[\w_-]+") @@ -1443,13 +1433,12 @@ def adjust_syslinux_bootoptions(src, flavour): regexe = [] option_re = None if options.removeoption: - option_re = re.compile(r'/boot/release/.*/initrd.gz') + option_re = re.compile(r'/boot/.*/(initrd.gz|initrd.img)') for regex in options.removeoption: regexe.append(re.compile(r'%s' % regex)) for line in fileinput.input(src, inplace=1): - line = boot_re.sub(r'/boot/release/%s/\2 ' % flavour.replace('-', ''), line) # line = flavour_re.sub(r'\1 %s-\2' % flavour, line) line = default_re.sub(r'%s-\1' % flavour, line) line = bootid_re.sub('', line) @@ -1492,7 +1481,7 @@ def add_syslinux_entry(filename, grml_flavour): data.close() def modify_filenames(grml_flavour, target, filenames): - """Replace the standarf filenames with the new ones + """Replace the standard filenames with the new ones @grml_flavour: grml-flavour strin @target: directory where the files are located @@ -1569,7 +1558,7 @@ def handle_syslinux_config(grml_flavour, target): entry = 'include %s\n' % new_default defaults_file = '%s/defaults.cfg' % syslinux_target new_default_with_path = "%s/%s" % (syslinux_target, new_default) - new_grml_cfg = "%s/%s_grml.cfg" % ( syslinux_target, flavour_filename) + new_grml_cfg = "%s/%s_grml.cfg" % (syslinux_target, flavour_filename) if os.path.isfile(defaults_file):