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

Re: dummy packages and "Replaces:" field



On Thu, Jun 23, 2005 at 11:45:26AM -0300, Margarita Manterola wrote:
> 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.

But there is nothing in policy that says you can't have multiple packages
that Conflicts: and Replaces: the same package.  How is apt supposed to know
which of these packages to install as the replacement?

Also, the Conflicts: and Replaces: fields are frequently overused and abused
in packages currently.  Adding an additional meaning will only make the
problem worse.

> > > 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.

Changing the meaning of existing fields is far worse than changing policy to
accomodate a new field.

-- 
Steve Langasek
postmodern programmer

Attachment: signature.asc
Description: Digital signature


Reply to: