Differences between revisions 2 and 3
Revision 2 as of 2008-11-11 11:15:40
Size: 4944
Editor: FranklinPiat
Comment: multiple improvements.
Revision 3 as of 2009-03-16 03:30:27
Size: 4946
Editor: anonymous
Comment: converted to 1.6 markup
Deletions are marked like this. Additions are marked like this.
Line 13: Line 13:
[[BR]] <<BR>>
Line 17: Line 17:
[[BR]] <<BR>>
Line 43: Line 43:
Some other entries, currently listed in the [http://ftp.fr.debian.org/debian/dists/lenny/main/installer-i386/current/images/MANIFEST MANIFEST] file. Some other entries, currently listed in the [[http://ftp.fr.debian.org/debian/dists/lenny/main/installer-i386/current/images/MANIFEST|MANIFEST]] file.
Line 48: Line 48:
 * netboot/xen/initrd.gz -- initrd for installing under Xen [[BR]]  * netboot/xen/initrd.gz -- initrd for installing under Xen <<BR>>

Currently, the netboot images are just .tar.gz files, that contains a linux kernel, an initrd, and some pre-configured bootloader configuration files.

This page contain a proposal to add some metadata to those images. This would allow to build bootloaders' menus automatically.

The purpose would be:

  • Describe images, to make it easier to build tools to download/install boot images (netboot, xen as well as raw images like iso, usb-storage... ).
  • Provide information to build menu to the image to boot
    • And allow the system administrator to provide extra options to be passed as kernel argument (preseeding, etc..)


  • <!> This is an early draft.


Package List

dists/squeeze/main/installer-i386/current/images/Packages

For each package:

Package: netboot-linux-i386-gtk-lenny
Priority: optional
Sction: utils
Installed-Size: 2048
Maintainer: Debian Install System Team <debian-boot@lists.debian.org>
Architecture: all
X-Boot-Image-Type: netboot
X-Client-Architecture: i386
X-Client-Sub-Architecture: 486
Version: 5.0~2008-10-29-rc1
Filename: dists/lenny/main/installer-i386/current/images/netboot/gtk/netboot.tar.gz
Size: 1024
MD5sum: 07bce47e217017749622e02f75cff0d7
SHA1: 80b9ff12999d69be075de6e51b69c069a9a106a7
SHA256: 409b7e5e1efff1e8196ce5151a4cfa63dd2bd6a6f611e2a6c611a0a73d3e83f9
Description: PXE boot directory for tftp server (graphical installer)

Some other entries, currently listed in the MANIFEST file.

  • hd-media/boot.img.gz -- 256 mb image (compressed) for USB memory stick
    • similar, but X-Boot-Image-Type: hd-media

  • netboot/gtk/mini.iso -- not so tiny CD image that boots the graphical netboot installer
    • similar, but X-Boot-Image-Type: netboot-mini-iso

  • netboot/xen/initrd.gz -- initrd for installing under Xen

    • netboot/xen/vmlinuz -- kernel image for installing under Xen
    • similar, but X-Boot-Image-Type: xen.

    • Problem: we have multiple files here.

Package Metadata

Here's a sample meta-data file, that should be included in the tarball.

  • Package: netboot-linux-i386-gtk-lenny
    Description: Linux netboot image for i386 architecture (flavour: gtk)
    
    Comment: Any comment??
    Architecture: i386
    Sub-Architecture: Foobar
    X-OS-Name: Debian
    Distribution: lenny, testing
    Version: 5.0~2008-10-29-rc1
    Preferred-Bootloader: syslinux (>= 2.0)
    X-Kernel: debian-installer/i386/linux
    X-Initrd: debian-installer/i386/initrd.gz
    X-Initrd: [none|
    Maintainer: Debian Install System Team <debian-boot@lists.debian.org>
    Default: install
    Standards-Version: 0.1
    
    Menu-Entry: install
    Description: Install
    Comment: Any comment??
    X-Append: video=vesa:ywrap,mtrr vga=788 -- quiet
    X-Hot-Key: i
    
    Menu-Entry: expert
    Description: Expert
    X-Append: priority=low video=vesa:ywrap,mtrr vga=788 
    Section: admin
    X-Hot-Key: e
    
    Menu-Entry: rescue
    Description: Rescue mode
    X-Initrd: debian-installer/i386/initrd.gz
    Comment: Any comment??
    X-Append: video=vesa:ywrap,mtrr vga=788 rescue/enable=true -- quiet
    Section: admin
    X-Hot-Key: r
    
    Menu-Entry: ssh
    Description: Start DI in SSH client mode only
    X-Initrd: debian-installer/i386/initrd.gz
    Comment: Any comment??
    X-Append: video=vesa:ywrap,mtrr vga=788 rescue/enable=true -- quiet
    Section: utils
    
    Menu-Entry: Help overview
    X-Hot-Key: f1
    X-Append: debian-installer/i386/boot-screens/f1.txt
    Section: text
    
    Menu-Entry: Pre-requisites for Installing Debian
    X-Hot-Key: f2
    Append: debian-installer/i386/boot-screens/f2.txt
    Section: text
    
    Menu-Entry: help
    Description: Help
    X-Kernel: less.c32
    Comment: there is no help browser at the moment ;(
    X-Append: debian-installer/i386/boot-screens/f1.txt
    Section: doc
    X-Hot-Key: h

Todo / questions remaining

  • These format should not be limited to describe netboot images: it should be possible to describe cd menu, and may be hypervisors (Xen) boot images.
  • How to describe sub menu? (see freedesktop / debian menu?)
  • How to describe the help pages?
  • How to address features like syslinux' "default64"
    • hardware hints?
  • How to describe/define keyboard shortcut
  • Internationalization ?
  • Firmware
    • Note: Ethernet MAC address can be used to determine the network card manufacturer (and therefore, the firmware needed).

Implementation TODO list

  • add kernel parameters:
    • kernel and initrd's CRC32 (to identify cd images)
  • cdrom: add a "test cdrom checksum" entry
  • memtest
  • add option to merge firmware in netboot initrds.
  • LTSE