chris at chrismaness.com
Sat Apr 29 22:01:32 UTC 2006
Kris Kennaway wrote:
> On Sat, Apr 29, 2006 at 08:58:58AM -0700, Chris Maness wrote:
>> Currently, I download the tarballs for each specific application by
>> hand, delete the old folder, then untar the new directory in the ports
>> tree. Is there an app that does this without having to do this by
>> hand. I know about cvs syncing the whole ports tree, but I prefer to
>> upgrade the specific applications that have issues not the whole tree.
> This is much harder than you might think; often applications depend on
> other applications and infrastructure elements in complex and
> unintuitive ways, so you will easily get your system into an
> inconsistent, unbuildable state following this method.
> The only foolproof way to do it is to update the entire tree; tools
> like portsnap and cvsup make this *really easy*, so why add extra
> effort and risks?
I do this because it is not necessary to build every third party
application just because I have a problem with one. I have ran into
this UNIX version of DLL hell, but it was easy to fix after I synced the
whole tree and ran portupgrade -a. That just rebuilt everything
installed, and made everything current. I have been upgrading single
apps by hand with no ill results for a while. The only time igot into
trouble was after I synced the whole tree and tried only upgrading some
of the apps. It just seems like re-compiling every application every
time portaudit finds a security hole is a waste of processor time.
p.s. another thing I found that works well is doing a portupgrade -r.
This causes everything that depends on that package to be upgraded as
well. At least that is better than recompiling EVERYTHING on the whole
box, and if you have open office that app takes 9 GB of disk space and
24hrs on a 3 GHz processor by itself.
More information about the freebsd-ports