Re: disappearing packages, seamless renames
David Kalnischkies wrote:
> I don't include the depends thing as the root cause for dpkg
> to even consider to disappear the package is that it has
> no files left. That it has also no dependencies is "just" an
> (important) safety-net.
Makes sense. Actually my reaction was that the label seems a bit
long. So leaving that detail out was a good idea; sorry to mislead.
> Jonathan Nieder wrote:
>> I still prefer the idea of transitional packages having the "auto"
>> bit passed on to dependencies.
> It can't be used for auto-bit passing as the section as requested
> is for metapackages - if it gets implemented as in ubuntu currently
> this will only mark the dependencies of a metapackage as manual
> installed, so command series like
> $ apt-get install gnome
> $ apt-get remove epiphany-browser
> $ apt-get autoremove
> are no longer trashing the complete gnome stack as shown e.g.
> in the blocked bug.
Could you clarify this a little?
I was thinking of something similar but not identical: a section
for _transitional_ packages. If I explicitly install oldPkg, or so
the theory goes, then it really does make sense to mark newPkg as
manually installed, so I can remove the transitional oldPkg later
without bad consequences. On the other hand, if oldPkg is
automatically installed, then newPkg should be considered
automatically installed, too.
Marking the dependencies of a metapackage as manually installed has
the huge downside that there is no easy way to remove that suite of
For metapackages, as I think was discussed on debian-devel, it seems
better to use Recommends. I don’t know what APT does when a
recommended package is removed; maybe a "sticky" bit would also be
needed to avoid removing the metapackage just because one of its
components was removed.
> The rename case is different: If the oldPkg was manual installed
> the newPkg should be marked as manual also - but if it was
> auto-installed the newPkg should also be auto-installed.
Hmm, does it really make sense to mark everything from gnome as
manually installed just because some other (lazily made) package
depended on gnome?
> I am currently thinking about transferring the auto-bit for disappeared
> packages with the theory that a disappeared package only depends on
> the package(s) replacing it - beside packages needed for the maintainer
> scripts - but these should be eliminated with a check if the dependency
> replaces the package…
Sounds dangerous. Consider that every package implicitly Replaces the
empty directories from every other package, and you can see this
> Oh, and while i was able to add some logic to APT to eliminate the
> need for an ignore flag for APT i think it should still be added for the
> more simpler scripts and/or APT alternatives which don't want or can't
> parse the status-fd
Yes, I liked the patch, too :), though I like what you did even more.
If there is anything I can do to make it more suitable (e.g., making
the test script less ugly), I’d be glad to hear.