Re: Debian Configuration Packaging System
Timothy G Abbott <tabbott <at> MIT.EDU> writes:
> Anders Kaseorg and I created a system of CDBS modules (which we've
> tentatively packaged as the config-package-dev package) for creating
> Debian configuration packages. By configuration packages, we mean
> packages that configure an existing Debian system by applying dpkg-divert
> to configuration files. Our configuration package system makes the
> process of creating configuration packages efficient.
Uh, you can dpkg-divert conffiles, but not generally configuration files, since
many won't even be known to dpkg. I must admit I'm a bit sceptical about a
proposal on configuration, written by someone who lets this important
distinction slip by...
Later on you wrote something about symlinks, do you use them, too? Here's one
more complication: While I think that "preserve local changes" also includes the
symlink-or-not state of a file and thus must be respected by maintainer scripts,
I do not think that this is usually done. In particular, every configuration
file handling that was first written for sarge (where sed -i wouldn't work)
probably used tempfiles and mv, and I have not seen a single case where the
script checked whether it was dealing with a symlink.
> Since this package is adding a new feature to Debian itself, we think our
> system should be discussed before we submit an ITP bug. There are some
> changes to Debian that would enhance the effectiveness of this system,
> (such as having all packages include md5sums and making ucf interact well
> with dpkg-divert'ed configuration files), which should perhaps be
> discussed in this context as well.
It's not just ucf, it's also perfectly possible that a maintainer script edits a
configuration file, e.g. after debconf prompting, in order to take over user
changes from a related package's configuration file, or similar.
How do you deal with that?