Subject: Re: When DEPENDS can be upgraded in place
To: Hubert Feyrer <>
From: Frederick Bruckman <>
List: tech-pkg
Date: 09/04/2000 22:26:33
On Tue, 5 Sep 2000, Hubert Feyrer wrote:

> > for building and installing the package at all. Another is that the
> > package no longer contains the information of exactly which packages
> > it was built against. Even if you track down the RCS ID's in the
> > +BUILD_INFO file, you can not know what was installed on the build
> > system.
> You're jumping from a observation to proposal of a solution without saying
> first what you want to solve/fix. Please explain.

Fair enough.
> As to your observation of a pkg "needs to know which pkg we built against
> exactly": why do you need this? The pkg will probably still be there even
> if you use "pkg_delete -r".

For reference. By that I mean, we may be able to figure out what went
wrong after a disaster like this

It would not be needed by the pkg_* tools at all, unless an option
were added to "pkg_info" to simply list it. It would especially _not_
be used by "pkg_delete -R", since for that case, you would certainly
want to remove all installed packages that match the package's @pkgdep
or DEPENDS wildcards, and not the exact package(s) it was built
against (which may not even exist on the system).

> Don't mix up pkg_delete's -r and -R
> switch. -r goes +REQUIRED_BY, -R goes @pkgdep.

It's the +REQUIRED_BY that I object to, as it makes it impossible to
update binary packages "out of order". It should be possible to
reconstruct the +REQUIRED_BY file from the @pkgdep entries in all the
other +CONTENTS files (for the purpose of installing packages out of
order), but I suppose that would be too time consuming to do on every
install. Once it's resolved to replace the +REQUIRED_BY with a
database, it's a short step to replace the @pkgdep entries with the
same database.