CdBootloader

Differences between revisions 6 and 7
Revision 6 as of 2005-11-05 14:34:26
Size: 3874
Editor: 209
Comment: initial draft
Revision 7 as of 2005-11-23 10:07:24
Size: 4037
Editor: 83-216-156-196
Comment: CD timeout restored
Deletions are marked like this. Additions are marked like this.
Line 47: Line 47:

== Implementation status ==

 * ColinWatson 2005-11-23: `colin.watson@canonical.com--2005/debian-cd--ubuntu--0--patch-227` sets the CD timeout to 30 seconds.

Summary

Make the i386/amd64 CD boot loader more user-friendly.

Rationale

The current i386/amd64 CD boot loader (isolinux) and configuration are not very user-friendly. Prompts can only be displayed in one language, and responses must be typed in by the user.

We should evaluate available options for replacements, and ways to simplify the process for the user, including:

  • Displaying a countdown and automatically continuing after a timeout
  • Allowing language selection from the boot loader
  • Localized help

GRUB has been suggested before as a possible replacement boot loader, but this approach was tried in the Warty live CD where we observed significant regressions in bootability versus the ISOLINUX-using install CD. We feel that sticking with solutions based on ISOLINUX is the most appropriate approach for a long-term-supported release.

Use cases

  • A user wants to put the live CD into her computer, go away without pressing any keys and make a cup of coffee, and have the live CD be ready for use when she returns.
  • Once the live CD has been [:SimplifiedLiveCD:simplified to ask no questions], a Japanese user still wants to ask the live CD to display messages in Japanese.

  • A German user cannot boot his laptop with the default boot options, and wants to read help text in German at the boot prompt to find out what special options are available.

Scope

This specification only considers improvements that can be made to the i386/amd64 boot loader. The powerpc boot loader (yaboot), and boot loaders for ports architectures, are out of scope since third-party work is not believed to be available there to integrate.

Design

gfxboot

We will incorporate gfxboot from SuSE ([http://kanotix.com/files/debian/pool/main/g/gfxboot/ package available]) and the [http://ftp.opensuse.org/pub/opensuse/distribution/SL-OSS-edge/inst-source/suse/src/syslinux-2.11-16.src.rpm corresponding syslinux patch] as above very early in the dapper cycle. SuSE's syslinux patch will need to be reduced to just the necessary parts. Fabianx has an [http://debian.tu-bs.de/knoppix/experiments/gfxboot/suse-knoppix.diff additional patch] to add fallback to text mode on failure, which we will also integrate.

As a modification to this patch, we will investigate the possibility of disabling the use of a VESA framebuffer by default, and rely on a VGA framebuffer for graphical display. While VGA only provides 16 colours, VESA is difficult to support on many video cards and can corrupt video memory to the point where you have to reboot and disable VESA to recover. We will find a few machines as early as possible in the cycle that cannot handle VESA (laptops are good candidates) and test the ISO image at http://debian.tu-bs.de/knoppix/experiments/gfxboot/ with them to see whether Fabianx's fallback code works. If it does, then we can skip this modification.

To support gfxboot, we will move all boot text from the debian-installer package to either debian-cd or some other package in the distribution, and add .pot files so that we can use Rosetta for translations. gfxboot uses a UTF-8 font on the framebuffer so we can even support non-Latin languages.

CD timeout

Our CD timeout was removed due to [http://bugzilla.ubuntu.com/show_bug.cgi?id=1290 bug #1290], but it was a bug that the timeout kicked in even after pressing a key; this bug has apparently been fixed. We will restore the timeout and set it to 30 seconds rather than the previous 10.

Implementation status

  • ColinWatson 2005-11-23: colin.watson@canonical.com--2005/debian-cd--ubuntu--0--patch-227 sets the CD timeout to 30 seconds.

CdBootloader (last edited 2008-08-06 16:32:14 by localhost)