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

Re: predepends/depends order



On Tue, Aug 16, 2005 at 03:31:42PM +0200, Goswin von Brederlow wrote:
> Impossible. What you need is for the packages you want to preconfigure
> to Depend on isi-ldap-pre. Which means rebuilding all of them.
OH.  I see.

> Sandro Dentella <sandro@e-den.it> writes:
> 
> > hi,
> >
> >   I'm preparing a package that is meant to setup a PDC with ldap and samba
> >   mainly for schools. The target that will use it is fairly anaware of most
> >   of the quantity of things that should be configured in such a setup and I
> >   don't mean to explain more than necessary.
> >
> >   My package (isi-ldap3) depends on a veriety of other packages (pkg1,
> >   pkg2...)  that place questions via debconf, so I thought to fill debconf
> >   variable (of pkgN) via a package isi-ldap3-pre) that should place very
> >   simple questions and take decision that I consider "difficoult" for my
> >   target (super?)user.
You mean you want THOSE packages to depend on YOUR package, not your
package depending on them?

That doesn't happen.  Low-level things must not depend on high-level
things; it doesn't make any sense.  Otherwise, someone who wanted to
use samba without using your package wouldn't be able to.

Maybe what you should do is to write a short perl-gtk configuration
tool.  After samba+ldap+slapd... are installed, the admin can run your
tool, which will modify the conffiles of the other packages.  (And
possibly modify the configuration files which are not conffiles by
using the well-defined interface).

Note that the admin _must_ run the tool manually; it must not run
automatically in postinst or some such.  Doing so would violate policy
by fudging with other packages conffiles (it is allowed to modify
other packages conffiles, if it is a specialized editor which is used
manually only).

Note also that modifying configuration files which are not conffiles
must be done through a well-defined interface, which would probably be
provided by the other packages.  Such an interface is usually
/usr/{s,}bin/update-foo.  Modifying such a file any other way is a
policy violation.

Justin



Reply to: