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

Re: New sections and frontend behaviour [Was: Re: New sections]



On Sun, Dec 04, 2011 at 11:47:30PM +0100, Goswin von Brederlow wrote:
> Joerg Jaspert <joerg@ganneff.de> writes:
> 
> > metapackages, which is for metapackages so that apt can do special
> >               handling on them.
> 
> On IRC Joerg mentioned that transitional packages could/should also go
> to the metapackages section.
> 
> The reasoning being that both metapackages and transitional packages
> should have their dependencies marked as non-automatic so they don't get
> removed when the top package is removed.
> 
> I think mixing the two types of packages would be a mistake as one wants
> quite a different behaviour from them:
> 
> metapackages: keep them installed
> transitional: remove after upgrade once nothing depends on it
> 
> So maybe there should be a "transitional" section to keep the two types
> of packages apart. If there are seconds to this please someone open a
> bug about it.

Ubuntu uses metapackages and oldlibs with that option of APT
apparently (APT::Never-MarkAuto-Sections).


> 
> 
> 
> Personally I'm also not quite sure about the validity of marking all
> dependencies of metapackages non-automatic. As mentioned in the
> bugreport what happens if I want to remove gnome and install something
> else? Then I have to manually remove all the dependencies of gnome.

There's also the problem that if a meta package removes a dependency
in a later version, that package will still stay of the system with
the current implementation.

> 
> I think dependencies of metapackages should be left as automatic but
> frontends should ask wether to turn them all to non-automatic when the
> meta package is selected for removal. So at removal time one would get
> the choice of keeping all/some or removing them all. This could also
> only ask if the metapackage was non-automatic.

There's also the problem that if a meta package removes a dependency
in a later version, that package will still stay of the system with
the current implementation

> 
> Transitional packages on the other hand should just be removed with
> their dependencies set to the same state the transitional package was in
> (automatic -> leave them alone, non-automatic -> set them
> non-automatic).

I guess something like this works already if the package disappears (no
files on the system anymore IIRC) during the upgrade.

> 
> MfG
>         Goswin
> 
> PS: shouldn't frontends use the Tag: role::metapackage, special::meta?

We don't read tags in APT and thus do not have them in the cache, so
that's a bit harder to implement sanely. The metapackages section was
in use by Ubuntu already, so I did not think about it further.

-- 
Julian Andres Klode  - Debian Developer, Ubuntu Member

See http://wiki.debian.org/JulianAndresKlode and http://jak-linux.org/.


Reply to: