BootLoader

Revision 5 as of 2005-12-07 10:12:38

Clear message

Summary

Design an UbuntuExpress component to install the boot loader.

Rationale

The Ubuntu installer already has a substantial volume of code to handle boot loader installation (including a number of sanity checks) which we should reuse. This is currently part of udeb maintainer scripts.

LILO will not be supported; on i386/amd64, we will only support GRUB. Expert users who wish to use LILO are likely to be able to install it manually from the comfort of the live environment.

Scope

This specification considers only the boot loader installation component of UbuntuExpress. This is a required component of an installer and (in this case) will have no user interface, so no use cases are specified.

Design

We will modify several components of the installer to produce suitable ubuntu-express-* packages:

  • grub-installer needs minor changes to avoid failing if mapdevfs is not present. These can probably go upstream. It needs to produce an ubuntu-express-grub.deb.
  • yaboot-installer needs minor changes to avoid failing if archdetect or mapdevfs is not present. (For the first version, we can produce a simple archdetect shim that checks /proc/cpuinfo for NewWorld PowerMacs or PReP systems, which are all we care about for now.) At least the mapdevfs changes can go upstream. It needs to produce an ubuntu-express-yaboot.deb.

  • os-prober needs minor changes to avoid failing if mapdevfs is not present. These can probably go upstream. It needs to produce an ubuntu-express-os-prober.deb.
  • parted needs to be modified to optionally produce output in the style of /usr/lib/partconf/find-partitions --flag, for yaboot-installer. We hope that this can go upstream.

Implementation status

  • 2005-12-07 ColinWatson: parted patch prepared and sent upstream (but in the meantime I've incorporated partconf-find-partitions into partman.deb, so this is not a blocker). os-prober modified upstream to work outside d-i.