- if not os.geteuid()==0:
- sys.exit("Error: please run this script with uid 0 (root).")
-
-
-def mkfs_fat16(device):
- """Format specified device with VFAT/FAT16 filesystem.
-
- @device: partition that should be formated"""
-
- # syslinux -d boot/isolinux /dev/sdb1
- logging.info("Formating partition with fat16 filesystem")
- logging.debug("mkfs.vfat -F 16 %s" % device)
- proc = subprocess.Popen(["mkfs.vfat", "-F", "16", device])
- proc.wait()
- if proc.returncode != 0:
- raise CriticalException("error executing mkfs.vfat")
-
-
-def generate_main_grub2_config(grml_flavour, install_partition, bootoptions):
- """Generate grub2 configuration for use via grub.cfg
-
- @grml_flavour: name of grml flavour the configuration should be generated for
- @install_partition: partition number for use in (hd0,X)
- @bootoptions: additional bootoptions that should be used by default"""
-
- local_datestamp = DATESTAMP
-
- return("""\
-## main grub2 configuration - generated by grml2usb [main config generated at: %(local_datestamp)s]
-set default=0
-set timeout=5
-
-insmod fat
-
-if font (hd0,%(install_partition)s)/boot/grub/ascii.pff ; then
- insmod png
- set gfxmode=640x480
- insmod gfxterm
- insmod vbe
- terminal gfxterm
-fi
-
-if background_image (hd0,%(install_partition)s)/boot/grub/grml.png ; then
- set color_normal=black/black
- set color_highlight=red/black
-else
- set menu_color_normal=white/black
- set menu_color_highlight=black/yellow
-fi
-
-menuentry "%(grml_flavour)s (default)" {
- set root=(hd0,%(install_partition)s)
- linux /boot/release/%(grml_flavour)s/linux26 apm=power-off lang=us vga=791 quiet boot=live nomce live-media-path=/live/%(grml_flavour)s/ %(bootoptions)s
- initrd /boot/release/%(grml_flavour)s/initrd.gz
-}
-
-menuentry "Memory test (memtest86+)" {
- set root=(hd0,%(install_partition)s)
- linux /boot/addons/memtest
-}
-
-menuentry "Grub - all in one image" {
- set root=(hd0,%(install_partition)s)
- linux /boot/addons/memdisk
- initrd /boot/addons/allinone.img
-}
-
-menuentry "FreeDOS" {
- set root=(hd0,%(install_partition)s)
- linux /boot/addons/memdisk
- initrd /boot/addons/balder10.imz
-}
-
-menuentry "MirBSD" {
- set root=(hd0,%(install_partition)s)
- linux /boot/addons/bsd4grml/ldbsd.com
-}
-
-menuentry "Boot OS of first partition on first disk" {
- set root=(hd0,1)
- chainloader +1
-}
-
-""" % {'grml_flavour': grml_flavour, 'local_datestamp': local_datestamp,
- 'bootoptions': bootoptions, 'install_partition': install_partition } )
-
-
-def generate_flavour_specific_grub2_config(grml_flavour, install_partition, bootoptions):
- """Generate grub2 configuration for use via grub.cfg
-
- @grml_flavour: name of grml flavour the configuration should be generated for
- @install_partition: partition number for use in (hd0,X)
- @bootoptions: additional bootoptions that should be used by default"""
-
- local_datestamp = DATESTAMP
-
- return("""\
-## flavour specific configuration for %(grml_flavour)s [grml2usb for %(grml_flavour)s: %(local_datestamp)s]
-menuentry "%(grml_flavour)s" {
- set root=(hd0,%(install_partition)s)
- linux /boot/release/%(grml_flavour)s/linux26 apm=power-off boot=live nomce vga=791 quiet live-media-path=/live/%(grml_flavour)s/ %(bootoptions)s
- initrd /boot/release/%(grml_flavour)s/initrd.gz
-}
-
-## flavour specific configuration for %(grml_flavour)s [grml2usb for %(grml_flavour)s: %(local_datestamp)s]
-menuentry "%(grml_flavour)s2ram" {
- set root=(hd0,%(install_partition)s)
- linux /boot/release/%(grml_flavour)s/linux26 apm=power-off boot=live nomce vga=791 quiet live-media-path=/live/%(grml_flavour)s/ toram=%(grml_flavour)s %(bootoptions)s
- initrd /boot/release/%(grml_flavour)s/initrd.gz
-}
-
-## flavour specific configuration for %(grml_flavour)s [grml2usb for %(grml_flavour)s: %(local_datestamp)s]
-menuentry "%(grml_flavour)s-debug" {
- set root=(hd0,%(install_partition)s)
- linux /boot/release/%(grml_flavour)s/linux26
- initrd /boot/release/%(grml_flavour)s/initrd.gz apm=power-off boot=live nomce vga=791 quiet live-media-path=/live/%(grml_flavour)s/ debug boot=live initcall_debug%(bootoptions)s
-}
-
-## flavour specific configuration for %(grml_flavour)s [grml2usb for %(grml_flavour)s: %(local_datestamp)s]
-menuentry "%(grml_flavour)s-x" {
- set root=(hd0,%(install_partition)s)
- linux /boot/release/%(grml_flavour)s/linux26
- initrd /boot/release/%(grml_flavour)s/initrd.gz apm=power-off boot=live nomce vga=791 quiet live-media-path=/live/%(grml_flavour)s/ startx=wm-ng %(bootoptions)s
-}
-
-## flavour specific configuration for %(grml_flavour)s [grml2usb for %(grml_flavour)s: %(local_datestamp)s]
-menuentry "%(grml_flavour)s-nofb" {
- set root=(hd0,%(install_partition)s)
- linux /boot/release/%(grml_flavour)s/linux26
- initrd /boot/release/%(grml_flavour)s/initrd.gz apm=power-off boot=live nomce quiet live-media-path=/live/%(grml_flavour)s/ vga=normal video=ofonly %(bootoptions)s
-}
-
-## flavour specific configuration for %(grml_flavour)s [grml2usb for %(grml_flavour)s: %(local_datestamp)s]
-menuentry "%(grml_flavour)s-failsafe" {
- set root=(hd0,%(install_partition)s)
- linux /boot/release/%(grml_flavour)s/linux26
- initrd /boot/release/%(grml_flavour)s/initrd.gz apm=power-off boot=live nomce quiet live-media-path=/live/%(grml_flavour)s/ vga=normal lang=us boot=live noautoconfig atapicd noacpi acpi=off nomodules nofirewire noudev nousb nohotplug noapm nopcmcia maxcpus=1 noscsi noagp nodma ide=nodma noswap nofstab nosound nogpm nosyslog nodhcp nocpu nodisc nomodem xmodule=vesa noraid nolvm %(bootoptions)s
-}
-
-## flavour specific configuration for %(grml_flavour)s [grml2usb for %(grml_flavour)s: %(local_datestamp)s]
-menuentry "%(grml_flavour)s-forensic" {
- set root=(hd0,%(install_partition)s)
- linux /boot/release/%(grml_flavour)s/linux26
- initrd /boot/release/%(grml_flavour)s/initrd.gz apm=power-off boot=live nomce vga=791 quiet live-media-path=/live/%(grml_flavour)s/ nofstab noraid nolvm noautoconfig noswap raid=noautodetect %(bootoptions)s
-}
-
-## flavour specific configuration for %(grml_flavour)s [grml2usb for %(grml_flavour)s: %(local_datestamp)s]
-menuentry "%(grml_flavour)s-serial" {
- set root=(hd0,%(install_partition)s)
- linux /boot/release/%(grml_flavour)s/linux26
- initrd /boot/release/%(grml_flavour)s/initrd.gz apm=power-off boot=live nomce quiet live-media-path=/live/%(grml_flavour)s/ vga=normal video=vesafb:off console=tty1 console=ttyS0,9600n8 %(bootoptions)s
-}
-
-""" % {'grml_flavour': grml_flavour, 'local_datestamp': local_datestamp,
- 'bootoptions': bootoptions, 'install_partition': install_partition } )
-
-
-def generate_flavour_specific_grub1_config(grml_flavour, install_partition, bootoptions):
- """Generate grub1 configuration for use via menu.lst
-
- @grml_flavour: name of grml flavour the configuration should be generated for
- @install_partition: partition number for use in (hd0,X)
- @bootoptions: additional bootoptions that should be used by default"""