Subject: Re: CVS commit: pkgsrc/mk/bulk
To: Jeremy C. Reed <reed@reedmedia.net>
From: Todd Vierling <tv@duh.org>
List: tech-pkg
Date: 03/30/2005 15:45:20
On Wed, 30 Mar 2005, Jeremy C. Reed wrote:

> Is there any way to list some packages we don't want to ever be removed?
>
> I want to do some bulk builds using this mechanism with LOCALBASE=/usr. I
> have been using LOCALBASE=/usr for a couple years. I want to use
> mk/bulk/build for it now but I have a small set of packages that must
> never be removed (even in chroot environment).

BULK_PREREQ is one step towards that, but I found out the hard way on
Interix (where pkgsrc's gawk and GNU coreutils are rather important) that
unless you also list all their dependencies, the "pkg_delete -r" of the
lower level dependencies kills the upper level packages.

And this still doesn't address keeping packages installed "at all times".

Two things would bring us to your goal:

* A BULK_PRESERVE (name arbitrarily chosen) variable listing packages which
  must not be removed, for any reason, including rebuilding that package
  itself.

* Evaluating PULK_PRESERVE through some sort of recursion that also prevents
  removal of the explicitly listed packages' dependencies.

The second point should make it easier to prevent accidental recursive
deletes from killing to-be-preserved packages.  Now, if such recursive
expansion existed, applying it also to BULK_PREREQ would be a nice thing to
me.  8-)

-- 
-- Todd Vierling <tv@duh.org> <tv@pobox.com>