from optparse import OptionParser
from inspect import isroutine, isclass
import datetime, logging, os, re, subprocess, sys, tempfile, time, os.path
from optparse import OptionParser
from inspect import isroutine, isclass
import datetime, logging, os, re, subprocess, sys, tempfile, time, os.path
## flavour specific configuration for %(grml_flavour)s [grml2usb for %(grml_flavour)s: %(local_datestamp)s]
menuentry "%(grml_flavour)s-debug - enable debugging options" {
set gfxpayload=1024x768x16,1024x768
## flavour specific configuration for %(grml_flavour)s [grml2usb for %(grml_flavour)s: %(local_datestamp)s]
menuentry "%(grml_flavour)s-debug - enable debugging options" {
set gfxpayload=1024x768x16,1024x768
## flavour specific configuration for %(grml_flavour)s [grml2usb for %(grml_flavour)s: %(local_datestamp)s]
menuentry "%(grml_flavour)s-failsafe - disable hardware detection" {
## flavour specific configuration for %(grml_flavour)s [grml2usb for %(grml_flavour)s: %(local_datestamp)s]
menuentry "%(grml_flavour)s-failsafe - disable hardware detection" {
- linux /boot/release/%(grml_flavour)s/linux26 apm=power-off boot=live nomce quiet live-media-path=/live/%(grml_flavour)s/ vga=normal boot=live noautoconfig atapicd noapic noacpi acpi=off nomodules nofirewire noudev nousb nohotplug noapm nopcmcia nosmp maxcpus=0 noscsi noagp nodma ide=nodma noswap nofstab nosound nogpm nosyslog nodhcp nocpu nodisc nomodem xmodule=vesa noraid nolvm noresume selinux=0 edd=off pci=nomsi %(bootoptions)s
+ linux /boot/release/%(grml_flavour)s/linux26 apm=power-off boot=live nomce quiet live-media-path=/live/%(grml_flavour)s/ vga=normal noautoconfig atapicd noapic noacpi acpi=off nomodules nofirewire noudev nousb nohotplug noapm nopcmcia nosmp maxcpus=0 noscsi noagp nodma ide=nodma noswap nofstab nosound nogpm nosyslog nodhcp nocpu nodisc nomodem xmodule=vesa noraid nolvm noresume selinux=0 edd=off pci=nomsi %(bootoptions)s
## flavour specific configuration for %(grml_flavour)s [grml2usb for %(grml_flavour)s: %(local_datestamp)s]
title %(grml_flavour)s-debug
## flavour specific configuration for %(grml_flavour)s [grml2usb for %(grml_flavour)s: %(local_datestamp)s]
title %(grml_flavour)s-debug
initrd (hd0,%(install_partition)s)/boot/release/%(grml_flavour)s/initrd.gz
## flavour specific configuration for %(grml_flavour)s [grml2usb for %(grml_flavour)s: %(local_datestamp)s]
initrd (hd0,%(install_partition)s)/boot/release/%(grml_flavour)s/initrd.gz
## flavour specific configuration for %(grml_flavour)s [grml2usb for %(grml_flavour)s: %(local_datestamp)s]
## flavour specific configuration for %(grml_flavour)s [grml2usb for %(grml_flavour)s: %(local_datestamp)s]
title %(grml_flavour)s-failsafe
## flavour specific configuration for %(grml_flavour)s [grml2usb for %(grml_flavour)s: %(local_datestamp)s]
title %(grml_flavour)s-failsafe
-kernel (hd0,%(install_partition)s)/boot/release/%(grml_flavour)s/linux26 apm=power-off boot=live nomce quiet live-media-path=/live/%(grml_flavour)s/ vga=normal boot=live noautoconfig atapicd noapic noacpi acpi=off nomodules nofirewire noudev nousb nohotplug noapm nopcmcia nosmp maxcpus=0 noscsi noagp nodma ide=nodma noswap nofstab nosound nogpm nosyslog nodhcp nocpu nodisc nomodem xmodule=vesa noraid nolvm noresume selinux=0 edd=off pci=nomsi %(bootoptions)s
+kernel (hd0,%(install_partition)s)/boot/release/%(grml_flavour)s/linux26 apm=power-off boot=live nomce quiet live-media-path=/live/%(grml_flavour)s/ vga=normal noautoconfig atapicd noapic noacpi acpi=off nomodules nofirewire noudev nousb nohotplug noapm nopcmcia nosmp maxcpus=0 noscsi noagp nodma ide=nodma noswap nofstab nosound nogpm nosyslog nodhcp nocpu nodisc nomodem xmodule=vesa noraid nolvm noresume selinux=0 edd=off pci=nomsi %(bootoptions)s
initrd (hd0,%(install_partition)s)/boot/release/%(grml_flavour)s/initrd.gz
## flavour specific configuration for %(grml_flavour)s [grml2usb for %(grml_flavour)s: %(local_datestamp)s]
initrd (hd0,%(install_partition)s)/boot/release/%(grml_flavour)s/initrd.gz
## flavour specific configuration for %(grml_flavour)s [grml2usb for %(grml_flavour)s: %(local_datestamp)s]
append_re = re.compile("^(\s*append.*)$", re.I)
boot_re = re.compile("/boot/([a-zA-Z0-9_]+/)+([a-zA-Z0-9._]+)")
flavour_re = re.compile("(label.*)(grml\w+)")
default_re = re.compile("(default.cfg)")
append_re = re.compile("^(\s*append.*)$", re.I)
boot_re = re.compile("/boot/([a-zA-Z0-9_]+/)+([a-zA-Z0-9._]+)")
flavour_re = re.compile("(label.*)(grml\w+)")
default_re = re.compile("(default.cfg)")
line = boot_re.sub(r'/boot/release/%s/\2 ' % flavour, line)
line = flavour_re.sub(r'\1 %s-\2' % flavour, line)
line = default_re.sub(r'%s-\1' % flavour, line)
line = append_re.sub(r'\1 live-media-path=/live/%s/ ' % flavour, line)
line = append_re.sub(r'\1 boot=live %s ' % bootopt, line)
line = boot_re.sub(r'/boot/release/%s/\2 ' % flavour, line)
line = flavour_re.sub(r'\1 %s-\2' % flavour, line)
line = default_re.sub(r'%s-\1' % flavour, line)
line = append_re.sub(r'\1 live-media-path=/live/%s/ ' % flavour, line)
line = append_re.sub(r'\1 boot=live %s ' % bootopt, line)
for filename in 'grml.cfg', 'default.cfg', 'hidden.cfg':
old_filename = "%s/%s" % (syslinux_target, filename)
new_filename = "%s/%s-%s" % (syslinux_target, grml_flavour, filename)
for filename in 'grml.cfg', 'default.cfg', 'hidden.cfg':
old_filename = "%s/%s" % (syslinux_target, filename)
new_filename = "%s/%s-%s" % (syslinux_target, grml_flavour, filename)
- adjust_syslinux_bootoptions(old_filename, new_filename, grml_flavour)
- os.unlink(old_filename)
+ os.rename(old_filename, new_filename)
+ adjust_syslinux_bootoptions(new_filename, grml_flavour)