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

Re: dummy packages and "Replaces:" field



On 6/23/05, Steve Greenland <steveg@moregruel.net> wrote:
> > The one I can think of is honouring the "Replaces:" field, meaning
> > that when a package states that it replaces another one, apt,
> > aptitude, dselect, and all the others would  install it to replace of
> > the old one.
> That is not what "Replaces:" means, and changing dpkg to do what you
> want would break a lot of existing packages that are NOT mis-using it.
> See the dpkg docs for what "Replaces:" actually does.

The documentation for this is in the Debian Policy:
http://www.debian.org/doc/debian-policy/ch-relationships.html#s7.5.2

And basically, what it says is that if a package "Replaces:" and
"Conflicts:" with another package, the new one is completely replacing
the old one.

So, when both "Replaces:" and "Conflicts:" are there, and it is not a
virtual-package, it would trigger apt replacing the package.

> > Is there a better solution to this?
> I think that there have been proposals for a new header that
> accomplishes what you want, 

Well, a new header would be nice, of course.  But it would mean a
change in policy, that's why I was thinking of using the existing
ones.
Having the "Real-Replaces:" or whatever field might be clearer than
having a set of nested ifs.  And would not cause any problems with
packages that are already using the Replaces field for something else.

> but it's never gone anywhere. I suspect that the effort has not been viewed as 
> worthwhile, given that there's no new functionality. Dummy packages work, 
> and have the advantage that it's very clear what is going on.

It's not really _that_ clear to the end user, and dummy packages are
an unnecesary hassle in the archive.  They work, yes, but they're an
ugly hack, and I think we can do better than that.

-- 
Besos,
Marga



Reply to: