Subject: Managing lots of installed packages, buildlink and versions
To: None <>
From: Rick Byers <>
List: tech-pkg
Date: 05/17/2002 12:08:53
How do most people manage an installed set of packages that have a tight
set of interdependancies?  Are people expected to rebuild (with pkgchk)
all packages after updating their pkgsrc?

It used to be the case that I could update pkgsrc as often as a I want,
and not worry too much about having to update already installed packages.
Now, I think buildlink has made that very problematic.  Consider this
scenario: I installed gnome- a few months ago, which depends on
about 95 other packages.  Now, today (after updating pkgsrc several times
inbetween), I decide I want to install gaim.  Gaim uses buildling to
depend on gdk-pixbuf, so it requires the latest version of gdk_pixbuf
(whether it really needs the latest version or not), but I have an older
verison of gdk-pixbuf installed that gnome depends on.  So, the only way
for me to install gaim seems to be to delete and reinstall all of gnome.
Now, I'm lucky because on my Athalon 1.4Ghz, it'll probably only take a
few hours to do that - but an older computer it would probably take days!
Actually, its not the cpu time that I object to really, its my time.  If I
have to update (almost) every package installed on my system just to
install some little package like gaim - its gaurenteed that something will
go wrong often enough that I end up spending a lot of time (over the long
run) doing some manual intervention.

All this effort leave me wondering - did gaim really _need_ the latest
version of gdk-pixbuf?  I thought the whole point of all the nice package
versioning and dependancies (i.e. gdk-pixbuf>=0.11) was so that each
package could have the least restrictive set of dependancies as possible.

So, am I missing something here?  Isn't buildlink making life a lot more
difficult than it has to be (not that the the concept of buildlink itself
is bad, I'm sure it has many advantages - I'm just talking about one of
the side effects here)?  How do other people manage their packages?  Is it
expected that people will only update pkgsrc when they are prepared to
rebuild most of their installed packages?  Or is it OK to avoid updating
pkgsrc as a whole, but just updating the directories necessary for certain
packages (i.e. when I want the latest version of gaim, I could just update
pkgsrc/chat/gaim and leave the pixbuf directory alone).  Actually - if
thats acceptable (I thought I'd run into some mismatch problems in the
past with this approach), that might work nicely.  Is it generally
desirable to keep pkgsrc and installed packages in-sync?  Is this
discussed somewhere (i.e. in Packages.txt)?