With respect to automation, ubiquity, the desktop CD installer, works much in the same way that debian-installer, the alternate CD installer does. Therefore, it is recommended that you first read the debian-installer installation guide and create a working preseed file for that before continuing here.
Using preseed files
Like debian-installer, you have three options for passing your preseed file to the installer. You can place it in the root of the initrd as the preseed.cfg file, you can place it on the CD-ROM and specify its location using the file= boot parameter, or you can specify its location on a web server using the url= boot parameter.
Unlike debian-installer, ubiquity may be invoked several times in a session without restarting the computer, such as when the user chooses to cancel the install and return later to finish it. For this reason, ubiquity ignores the 'seen' flag (which is used by debconf to indicate that a question should not be asked again) by default. This is usually inappropriate for preseeding, so you need to arrange for ubiquity to start up in "automatic mode", either by adding the 'automatic-ubiquity' option as a boot parameter, or by passing the --automatic argument to ubiquity if you are starting it up in some other way. In automatic mode, ubiquity will respect the seen flag and will not present pages where all of the questions have been successfully answered.
Available preseeding keys
Ubiquity uses a subset of the components that Ubuntu's version of debian-installer uses and therefore asks the same questions for those components. However, there are some additional questions provided. These are as follows:
ubiquity/summary: preseed empty to avoid the summary page.
ubiquity/reboot: automatically reboot when the installer completes. Be sure to add 'noprompt' to the kernel command line to also skip the "please remove the disc, close the tray (if any) and press ENTER to continue" usplash prompt.
ubiquity/failure_command: specify a command to be run should the install fail.
ubiquity/success_command: similar to preseed/late_command. Specify a command to be run when the install completes successfully (runs outside of /target, but /target is mounted when the command is invoked).
Furthermore, there are a few other components necessary for an automated installation with ubiquity:
languagechooser/language-name: choose among the available languages, eg English
countrychooser/shortlist: choose a country, territory or area, eg US
localechooser/supported-locales: choose other locales to be supported, eg en_US.UTF-8
Preseeding keys for the following installer components will not be used in Ubiquity, usually because they do not fit with Ubiquity's mode of operation:
- LVM and RAID partitioning
You can use preseed/early_command with the live CD; it will be run by "casper" (the component which sets up a live environment at boot time) from the initramfs. Please note that, if you want to affect files in the live environment, this means that you must prefix their filenames with /root.
- Evan needs to add a "a bit later than early command" preseed variable so that testing scripts can run once the desktop is available.