the art of pkgdb -F

Kevin Kinsey kdk at
Thu Mar 29 03:31:48 UTC 2007

Michael P. Soulier wrote:
> On 28/03/07 Kevin Kinsey said:
>> Here is a time-honored and rather canonical diatribe on "The Art of 
>> Pkgdb -F" (a great thread title, BTW).  Note also that it is nearly
>> six years old, and that additional package-management tools have been
>> proposed, created, and released to the public, and some may have already
>> been EOL'ed and buried, but the rest of them aren't considered "standard" 
>> by any means, and currently the FreeBSD world is in a pseudo-Biblical
>> "every man did as he saw fit" state these days[1].
> I suppose I'm curious as to how my ports got into this state in the first
> place, since I would have expected a package managements system to have
> prevented it. 

Good point, perhaps --- if I understand the problem (and there is no
guarantee that I do), it would seem, upon a first, furtive, tentative
and cursory examination that the fact you might need to run "pkgdb -F"
violates the "POLA".  Maybe you should qualify and say "I would have 
expected a *perfect* package management system to...."

However, ports get moved, dropped, re-named, re-categorized and so on
(somewhat) frequently --- perhaps no *one* port, but taken as a whole
(what, +15K ports now?) the tree is rather a "moving" target.  In the
case of a "moved" or "deleted" port, I see no particular way that you
would miss out on at least a "missing origin" warning from the pkgtools
after obtaining an updated tree.

Otherwise, I suppose that, canonically, if one does the "right" thing
every time, you might come close.  But I bet I'm not the only one who,
once upon a time, happened to try "portupgrade -arR" or equivalent
after forgetting to read UPDATING and ended up with more to do than I
originally thought.

And, of course, this is the point where the various disciples/proponents
(and possibly even the maintainers/authors) of the increasing variety of
"package management" tools come forth to sing the praises of their 
favorite software.

So far we've heard from "portupgrade", "portmanager", and "portmaster".
Any "portscout", "managepkg", or "porteasy" advocates wanna speak up?
[What did I miss, and, no, sorry, I didn't read every pkg-descr....]

As I mentioned earlier, it's no secret that:

1.  The Ports Collection is large, dynamic, and somewhat complex.
2.  Different tools exist for ports management (in fact, there are now
so many that a new ports category was recently created to store all of them).
3.  One "set" of tools existed for a long time before the others pretty much
"by itself", and became the "accepted" (or at least the documented) way to 
upgrade 3rd-party software.  It wasn't perfect, but it continues to be
improved, as do the newer "management" programs.
4.  The future of "package management" remains to be seen, but the various
and occasional "pitfalls" of the system have given rise to varied paths 
to "package nirvana" (I, for one, haven't yet decided which to take).
This is actually a Good Thing for BSD,  insofar as it continues to 
exemplify another UNIX principle, "tools, not policy".

I might expect, given this philosophy, that development on several
programs for the management of installed 3rd-party software will
continue, and that, unless one shows itself to be very superior to
the others, a variety of programs will continue in general use, much
to the chagrin of the FDP people, who will have to decide if the
current approach should be changed, and, if so, how.  Doesn't sound
like as much fun as, say, beachcombing on Fiji or strolling through
downtown {$nice_city} in spring, though.

Full circle, Kinda back to "every man for himself" ---

Kevin Kinsey
The things that interest people most are usually none of their business.

More information about the freebsd-questions mailing list