Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 2 Jun 2007 12:48:51 -0500 (CDT)
From:      "Sean C. Farley" <sean-freebsd@farley.org>
To:        ports@freebsd.org
Subject:   Re: Uggg!
Message-ID:  <20070602123226.X4627@thor.farley.org>
In-Reply-To: <20070601.131415.74663752.imp@bsdimp.com>
References:  <20070601083345.GA48323@rot13.obsecurity.org> <10723ADA-FD53-45F8-BDFA-DBD98CBC212E@FreeBSD.org> <20070601170514.GA54912@rot13.obsecurity.org> <20070601.131415.74663752.imp@bsdimp.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, 1 Jun 2007, Warner Losh wrote:

>> Best solution is to back up /var/db/pkg if it is in danger of
>> deletion by a wanton admin :)
>
> The ONLY data corruption that I saw when my laptop died was *ALL* of
> the +CONTENTS files going away.  It seems to have died during the
> updating of the meta-data for the dvdauthor port.  Why all the files
> of unreleated packages would disapper is a mystery to me, unless
> mergemaster, or one of the pkg tools, deleted them all, and then
> wanted to rewrite them and I got screwed between these two steps.
>
> Wouldn't it be better of a +CONTENTS~ file were left in place during
> this process and have that be removed afterwards?

The following is not a plug for my code since I only have it in
maintenance mode.  I use Port Conductor[1], which I started writing a
long time ago when Perl was in the base.  It makes a copy of /var/db/pkg
before preceding with an update.  This is between helping the wanton
admin and protecting against a bug in the program.  The one thing I like
about how I wrote it was how it tracks every step along the update, so
it is possible to continue if something happens (i.e., battery dies).

I never got around to polishing it, so it is not necessarily the most
user friendly.  It tries to emulate a lot of portupgrade, but some
things are missing.  Not all options behave the same way as portupgrade.
Recursive port updates (-R and -r) update ports even if the version has
not changed.  One notable feature:  dead-port detection.  When a port
has its last dependency removed, it is reported in the output.

Everyone is welcome to take ideas from it to add to their respective
port updating projects.  Someday, I plan to use a different tool for my
port updating.  When I have some free time, I will probably look at
portmaster.

Sean
   1. http://www.farley.org/?page=software#pc
-- 
sean-freebsd@farley.org



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070602123226.X4627>