This is a description on how to do an installation of debian-edu using netboot.

Separate mirror

To use netboot/netinstallation we need files from both Debian upstream and Debian Edu, so we need to prepare our own repository. If we for Lenny are able to complete (and get included) debian-edu-install, debian-edu-config and education-tasks before lenny is frozen, we might do with a normal Debian mirror, and only provide some preseeding.

The repository need to hold the needed udebs, the packages used for the very basic debian-installation, and a few others. I have a repository set up at http://apt.bzzware.org/debian-edu/ which meets these requirements. My repository holds normal packages availible from upstream debian or debian-edu, with one change. The debian-archive-keyring-package, which is used to check that the packages comes from a signed repository, is patched to also include key used on my mirror.

On DebianEdu/HowTo/NetbootInstall/BuildMirror, I've documented how I built my mirror.

Debian installer

Since the installer requires a signed repository, and I cant sign my repository with the debian archive key, I need to build my own installer. that is, I need to use the availible udebs, and build a new initrd.gz.. The only change from an upstream (Debian) installer is that I've included the key used to sign my repository into the installer. The installer and kernel is availible from http://apt.bzzware.org/debian-edu/netboot/debian-installer/i386

On DebianEdu/HowTo/NetbootInstall/BuildInstaller, I've documented how I built the installer.

Doing the installation

The trick is to use a mirror that includes our udebs, and getting the questions of which installer components to fetch. We of course need to fetch our udebs, debian-edu-installation-udeb and debian-edu-profile-udeb. This is done by either using a preseed file, or lower the debconf-priority, so that you get a question of which installer components to include. To use a preseed file, you can add this option to the kernel when you boot the installer:

url=http://apt.bzzware.org/debian-edu/preseed/installer.dat

To lower the debconf-priority to get more questions, you add this option when you boot the installer

DEBCONF_PRIORITY=medium

The important part is not to use the default mirror the installer wants you to use (choosen by the localization/language you selected), but to enter a custom installer mirror, like apt.bzzware.org, and using the correct url to the mirror. When you get to "Choose a mirror of the Debian archive", you select "enter information manually", then enter apt.bzzware.org as "Debian archive mirror hostname" , and /debian-edu as "Debian archive mirror directory"

Testing using qemu

I've mostly tested this stuff using qemu like this

/usr/bin/qemu -kernel /tftpboot/deinst/linux \
             -initrd /tftpboot/deinst/initrd.gz \
             -append "url=http://apt.bzzware.org/debian-edu/preseed/installer.dat" \
             -m 256 qemu.img