It's really good news that someone is writing on this. Since Debian is
somewhat hard to install and configure for unexperienced user, but
otherwise Debian is The Best :), I guess many people are doing custom
Debain installation tools.

>  - Preconfigure the packages we install
> 
>      Using two different approaches: (1) Load answers into the debconf
>      database before the packages are installed using some home-make
>      scripts, and (2) rewrite/replace configuration files using
>      cfengine at the end of the installation if the package is unable
>      to configure what we want using debconf.  I'm fairly satisfied
>      with this solution, but am not sure if the method used to feed
>      the debconf database is the best available.  I believe the best
>      option would be to extend all the packages we use to make it
>      possible to configure everything we need using debconf answers.

I'm not sure that everything can be done this way.

E.g. in a "distribution" (better to say - custom installation CD) I maintain
here I expect users to use kppp to connect to their ISPs. To make this work
by default, I have to comment out whole contents of /etc/ppp/options during
the last stage of the installation. I don't think that pppd maintainer will
agree that such thing should be provided by debconf.

Another thing is replacing "#!/bin/sh" by "#!/bin/bash --login" in
/etc/kde3/kdm/Xsession (and other dm's Xsession files). This is the only
way I know to make login shell startup files evaluated during X logins.
This issue is known for ages, but it seems that people who make decisions
don't thing it is necessary. So this isn't likely to be fixed with debconf
questions.

>  - Automatic X configuration
> 
>      Using home-brewed script filling the debconf database, and then
>      call dexconf from the xfree86 package to generate the
>      configuration file.  The HW detection info is fetched from
>      various packages (discover, kudzu, detect, etc).

Could you give an URL to such script?
I need one badly. Unfortunatly, discover/mdetect/read-edid based dexconf is
far from perfect, especcialy in detecting capabilities of the monitor. And
hadrware detection is not what I am an expert in :(.

>  - CD building
> 
>      Using a heavily patched version of debian-cd to create the CDs.
>      Most of the patches is to include the d-i boot floppies.  This
>      should now be possible with the standard version of debian-cd,
>      but no one in Skolelinux have taken the time to update our copy
>      of the scripts.

The thing I really don't like in debian-cd is the requirement to have a
local mirror. I prefer to use apt-get (+apt-proxy) to fetch packages while
building CD. I have a (currently ugly) script to do so; if anyone is
interested I can (try to) clean it up and make it available. 

>  - Configure default language for all users
> 
>      Using a custom script to rewrite config files to modify the
>      default language/locale.

Seems that feeding correct value to debconf for "locales" package fixes
this. At least for me.

Currently I install "locales" and "console-cyrrillic" (with all
dependencies) very early - I modified debootstrap to do so. Default values
to debconf database also are written by modified debootstrap. So I have
russian properly set up already when base-config runs.

> There are probably others, but this should be a good starting point.
> Are these issues common to other custom distros?

Main problems I current have are related to hardware detection and
configuration.

Users want to configure their X display easily (resolution, frequency, etc).
E.g. from KDE control center. They complain that other distros let them to
do so. I am not familar with distros other than Debian so I don't know what
to do.

Also users want all their hardware to be detected and configured
automatically. Well, discover does something, but again, users complain
that XXX is not detected/configured/working properly, while everything is
ok with other distros.
Maybe there are better tools? Please share your experiense.


Reply via email to