These are simple utils for debian-installer:

di-utils-shell: Interactive shell. Appears in the main menu, and the
postinst does all the work. Only funny trick is we need to steal control
from debconf by grabbing back the original stdio file descriptors.

mapdevfs: Given a devfs device name, returns the name that would be used on
a non devfs system. Only works for some devices, used by eg, boot loader
installers.

anna-install: Each parameter is a udeb that anna should install. If this
command is run before anna has configured a default retriever, the udebs
will be queued for the future anna run. If it's run after a default
retriever is configured, the specified udebs will be installed immediately.

apt-install: The parameter is a deb to queue for installation into /target.
Or, if /target is already set up, the package will be installed
straightaway (and noninteractively).

in-target: Runs the specified command in /target and returns its exit
status. The debconf passthrough frontend is used to make debconf questions
be asked using cdebconf in the installer. This is especially useful for
running things like dpkg-reconfigure, debconf-apt-progress, and tasksel.

debconf-get: Prints out the value of a debconf question.

debconf-set: Sets a debconf question to a value.

register-module: Register a module to go in /etc/modules on the target.
May be called before the target is mounted. Can optionally pass parameters
that should be passed to the module on load; these are added to
/etc/modules.conf.

user-params: Output the parameters the user passed to the kernel on boot,
one per line. This should include only parameters the user entered by hand,
and will skip over parameters used to pre-seed debconf values. For any of
the user's parameters to be recognised, the kernel command line must
include "--" in it, and then all parameters after the -- are assumed to be
user input. Therefore, the installer's boot loader should pass "--" at the
end of its kernel command line to make this work.

log-output: Runs a command, logging any stdout/stderr output to the syslog,
and preserving the command's exit code. If you use the --pass-stdout option,
it will pass stdout through rather than logging it, so that you can redirect
it to a file or pipe it to another process. Note that the command must be
in the path, shell builtins won't work.

debconf-disconnect: Scripts running under the control of debconf can use
this to execute a command disconnected from debconf, with its standard file
descriptors the same as those of the debconf frontend itself. This is most
useful for starting interactive shells.

update-dev: Make sure that new device nodes have been created after loading
modules. This is particularly important for userdevfs, where disk device
nodes are not created automatically at all, but it is also important for
udev where there may be an asynchronous delay between loading the module and
udev getting around to creating the device node.
