Subject: Re: Really annoying package situation
To: Charlie Allom , <netbsd-help@netbsd.org>
From: Richard Rauch <rauch@rice.edu>
List: netbsd-help
Date: 03/31/2002 23:24:54
I think that doing a ``make && make update'' combination will only help
over simply doing ``make update'' in the case of the current package, yes?

If the current package requirs a newer vesion of XXXlib, ``make'' won't
work, will it?  And when you do the ``make update'',
that's going to immediately remove (and try to rebuild) everything that
*depends* on the current package.

pkgsrc could probably be taught to deal with the second problem (it sounds
straightforward, but I'm not volunteering to do it...(^&).  But the first
problem looks harder.  (I seem to recall something about an idea from the
FreeBSD or OpenBSD camps, for building and installing packages in an
alternate location.  Could this be used to build/install one's way up the
dependancy graph?  Then when everything required is built (or known to
build), you could install for real.)


Perhaps the best thing to do at the moment is to backup your pkgsrc tree
(known to build everything that you currently have installed), then delete
all packages as well as the pkgsrc tree (might as well preserve the
distfiles, though), and install a new pkgsrc.  Then have a script run to
rebuild every package that you formerly had installed.  If everything is
okay, then keep the new pkgsrc (and updated packages).  Else, revert.  If
you manually prioritize the rebuilding, critical packages could be brought
back online quickly enough that this might not be too bad of an approach.

If you did this on a frequent basis, it might be worth while building
binary packages of everything as you go, so that reverting would be a
little less trouble.


  ``I probably don't know what I'm talking about.'' --rauch@math.rice.edu