Differences between revisions 22 and 23
Revision 22 as of 2007-02-19 21:29:20
Size: 5751
Editor: ?GeertStappers
Comment: the standalone babelbox
Revision 23 as of 2007-02-19 22:14:34
Size: 5748
Editor: ?FransPop
Comment:
Deletions are marked like this. Additions are marked like this.
Line 77: Line 77:
For questions about babelboxalt, contact Frans Pop (fjp@debian.org). For questions about babelbox, contact Frans Pop (fjp@debian.org).

BabelBox: automated DebianInstaller testing and demo machine

Principles

Babelbox is a system designed to show the automation capabilities of the Debian Installer.

It also focuses on the high number and the quality of translations currently available for the installer. As is, it is well suited for a living demo on a booth in an expo or any other event.

The original ["DebianInstaller/BabelBox"] setup is based on the netboot installation method and requires a separate server besides the actual demo machine. This alternative setup is based on the hd-media installation method and can be run off a single machine, even without networking.

For this setup using a single "clean" harddisk is recommended. A setup using two harddisks is also possible but will need some modifications in the preseed file and scripts.

Setting up the demo machine

The demo machine will be set up for two multi-boot systems:

  • a basic Debian installation that controls the demo and contains all files needed to run the demo;
  • the second system will be deleted and overwritten for each demo installation.

Installing the controlling system

Perform a basic installation using your preferred installation method. When you get to partitioning, exit to the main menu and use fdisk to partition the disk as follows:

   Device Boot   Start      End      Blocks   Id  System
/dev/sda1   *        1      486     3903763+  83  Linux
/dev/sda2          487      548      498015   82  Linux swap / Solaris
/dev/sda3          549      899     2819629    f  W95 Ext'd (LBA)
/dev/sda4          900     4998    32925217+  83  Linux

The idea here is to create a first partition to hold the controlling system and to leave the third (extended) partition free for the demo system. The fourth primary partition is just to fill up the harddisk so that formatting for the demo system will not take unnecessary long. The fourth primary partition must be defined, even if it is only one sector in size. Good guidelines for size are 1.5 to 4 GB for the controlling system and 2.5 to 3 GB for the demo system.

After you finish partitioning using fdisk, return to the installation menu and restart partman. Use the manual partitioning option to select the first partition for the root file system for the controlling system. Install the system with only the "Standard" task. Install GRUB into the MBR of the disk.

Setting up the controlling system to run Babelbox

Everything needed to run the demo will be placed in /srv on the controlling system.

Please take some time to look over the contents of the files in the /srv/babelbox directory that should now have been created.

Note that the default setup assumes your harddisk is /dev/sda. If this is not the case, you will have to do a search and replace before you continue.

Next, add two extra menu items at the end of the grub menu for booting babelbox:

$ cd babelbox
$ cat babelbox-grub >>/boot/grub/menu.lst

Note that the scripts assume that the babelbox options will be the 3rd and 4th options in the grub boot menu. You may want to reduce the timeout after you've completed setting up things.

After that there's a few more things that need to be done.

  • The files atomic_scheme.txt and use_biggest_free.txt in /srv/babelbox are used to include the correct localized strings in the preseed.cfg that is used for the demo installations. You need to make sure that the contents of these files match the current translations. If they do not match for some languages, partitioning may fail when the demo is run for these languages.?BRThe current translations are best taken from the /var/lib/cdebconf/templates.dat while running the actual hd-media installation you will be using.?BRThe following commands can be used to extract the templates:

    $ sed -n '/^Template: partman-auto.*atomic_scheme/,/^$/p' \
             templates.dat > atomic_scheme.txt
    $ sed -n '/^Template: partman-auto.*use_biggest_free/,/^$/p' \
             templates.dat > use_biggest_free.txt
  • Check the contents of the langlist file. You may want to add or remove languages. The language listed on the first line will be the one used for the next installation; after things have been set up for that language the top line is moved to the bottom of the file.

  • Generate an initial preseed.cfg file and set the correct kernel line in /boot/grub/menu.lst by running the cronscript script in /srv/babelbox. The preseed.cfg file is created from the babelbox-preseed.cfg file, so if you want to make changes, make sure you edit that file and rerun cronscript.

Errata

  • Not all font files that are needed for some languages are included on the first full CD. This means that Gnome can show missing glyphs when the installed system is booted.

Disclaimer

As part of a babelbox run, the third partition of the first detected disk will be deleted unconditionally. You have been warned!

The babelbox tarball has been updated to work with Etch RC2.


For questions about babelbox, contact Frans Pop (fjp@debian.org).