[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

debconf .config scripts, preconfiguring and package order



Hi debian-mentors,

is there any guarantee as to the order in which the debconf .config
scripts are run when preconfiguring from apt? Specifically, are the
.config scripts of a package's dependencies run before the .config script
of the package itself?

I have an actual use case with request-tracker3.6 and dbconfig-common
that I'm happy to explain in more detail to anybody interested, but
I'll cut some corners for now. The main point is that I'd like to limit
the choices of a 'select' question asked in the .config script to those
actually available.

 Package: request-tracker3.6
 Depends: rt3.6-db-mysql | rt3.6-db-postgresql | rt3.6-db-sqlite

The available choices would be determined by those rt3.6-db-* packages
that are already installed or are being installed at the same time as
request-tracker3.6.

My plan is to set an internal debconf variable like
'rt3.6-db-mysql/available' in the .config script of each rt3.6-db-*
package and then have the request-tracker3.6 .config script look
at those to determine the available choices. 

This generally works, but I'm a bit worried that the request-tracker3.6
.config script might get run before the rt3.6-db-* ones
when preconfiguring from apt (via DPkg::Pre-Install-Pkgs and
dpkg-preconfigure).

All my simple-minded tries indicate that apt feeds the package list to
dpkg-preconfigure with the dependencies before the dependant, but can
this behaviour be relied upon? Or should I just forget about this
and accept that the .config scripts must really be standalone?

Obviously, if there's another way for the .config script to find out
what's being installed at the same time, that would be very welcome.

Thanks for any insight,
-- 
Niko Tyni   ntyni@debian.org


Reply to: