Debian-Installer: Building the installer yourself

This page explains how to manually build specific images. The installer can of course also be built as any other package using for example dpkg-buildpackage or debuild.

First of all, debian-installer images should only be built in an environment that matches the version of the installer you want to build, so:

Note: Don't forget to mount /proc inside chroot. mkfs.vfat is failing if you are running a chroot in sid, so it is better to have a full lenny installation (you could use Virtual Box or qemu, roughly the same space as a chroot)

If you get this wrong, build errors or non-working images are almost guaranteed! It is sometimes possible to smuggle with testing and unstable, but don't expect any support from the D-I team if you do.

This same procedure can also be followed to build the installer from testing, using udebs from testing. But you should be aware that there are periods during which it is very likely that builds from testing are broken, especially: (1) the period after a new Debian stable release and before the first alpha release of D-I for the next Debian release and (2) when a new release of D-I is being prepared. Building the installer from testing is only really advisable when there is a Release Candidate (RC) release of debian-installer in testing.

/!\ If you build the installer for release purposes, make sure your build environment is "clean", i.e. that it is up-to-date and that you don't have any weird (versions of) packages installed from external repositories. If your system is not clean, use for example pbuilder or create a chroot environment.

Here are the steps to build debian-installer and download required udebs.

Get the source

See CheckOut.

Preparing the build system

Building an image

Because your build environment is for the same Debian release as the version of debian-installer you want to build, the build system should automatically generate a correct sources.list.udeb file based on your /etc/apt/sources.list. However, in some cases it may be necessary to create a sources.list.udeb.local. In some cases you have to explicitly provide main/debian-installer section in the sources.list file of your chroot or local installation.

Questions