Op woensdag 7 mei 2014 12:59:57 schreef Jonas Smedegaard: > Hi Wouter, > > Quoting Wouter Verhelst (2014-05-07 11:34:23) > > > What you seem to want is a unified and standardized way for one > > package to provide an API for changing things about how the package > > will function, to other packages. > > Correct. > > > While a worthwhile effort, I don't think this is what debconf (in its > > current state, at least) can do. > > I still believe debconf us possible to use for this - in its current > form but with aid of additional logic (which possibly fits your view).
I'm afraid not.
You *could* have a script do db_set <something> to change the defaults and then run the postinst script (through dpkg-reconfigure), but that would run against the spirit of 10.7.4 IMO.
> > After all, the problem with reconfiguring another package in the way > > you seem to suggest is that if it were to be effective for what you > > want to see realized, it would run afoul of the requirement in Policy > > 10.7.4 that > > > > The maintainer scripts must not alter a `conffile' of _any_ package, > > including the one the scripts belong to. > > > > (at least in spirit) > > That text talks about _conffiles_ specifically,
Hence the "in spirit"
> and one way to avoid > that specific rule is using... debconf!
Yes, but only for users configuring things, or by way of "shared debconf templates".
> > That same section 10.7.4 also explains how packages who wish to change > > configuration files of other packages should work, currently: there > > should be an interface provided by the package through which other > > packages can then change the relevant configuration. > > Where debconf is one such interface provided by the package.
_Only_ if you use shared debconf templates.
Doing that is fairly complicated, and _requires_ support from every package involved. The only instance where this is being used that I know of, is the "choice of display manager" set of templates.
> I believe the spirit of §10.7.4 is to ensure that any configuration of a > package not done explicitly by the user is done through the package > itself. > > One reason for that is to ensure that there is one well-defined place to > report any bugs: the package!
Yes, clearly.
-- It is easy to love a country that is famous for chocolate and beer
-- Barack Obama, speaking in Brussels, Belgium, 2014-03-26
|