From owner-freebsd-ports@FreeBSD.ORG Tue Aug 4 13:31:48 2009 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C230D1065674 for ; Tue, 4 Aug 2009 13:31:48 +0000 (UTC) (envelope-from eculp@encontacto.net) Received: from ns2.bafirst.com (72-12-2-19.static.networktel.net [72.12.2.19]) by mx1.freebsd.org (Postfix) with ESMTP id 89D3E8FC15 for ; Tue, 4 Aug 2009 13:31:48 +0000 (UTC) (envelope-from eculp@encontacto.net) Received: from HOME.encontacto.net ([189.129.4.31]) by ns2.bafirst.com with esmtp; Tue, 04 Aug 2009 08:31:46 -0500 id 000D5149.4A783842.00003CA4 Received: from localhost (localhost [127.0.0.1]) (uid 80) by HOME.encontacto.net with local; Tue, 04 Aug 2009 08:31:45 -0500 id 0004AC1B.4A783841.00010A37 Received: from econet.encontacto.net (econet.encontacto.net [189.129.4.31]) by econet.encontacto.net (Horde Framework) with HTTP; Tue, 04 Aug 2009 08:31:45 -0500 Message-ID: <20090804083145.689620bebz54c474@econet.encontacto.net> Date: Tue, 04 Aug 2009 08:31:45 -0500 From: eculp To: Doug Barton References: <20090802203144.20053xv5f9w3ea68@econet.encontacto.net> <4A772AF1.7060400@FreeBSD.org> In-Reply-To: <4A772AF1.7060400@FreeBSD.org> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; DelSp="Yes"; format="flowed" Content-Disposition: inline Content-Transfer-Encoding: quoted-printable User-Agent: Internet Messaging Program (IMP) H3 (5.0-cvs) X-Remote-Browser: Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.9.0.12) Gecko/2009072511 Firefox/3.0.11, Ant.com Toolbar 1.3 X-IMP-Server: 189.129.4.31 X-Originating-IP: 189.129.4.31 X-Originating-User: eculp@encontacto.net Cc: freebsd-ports Subject: Re: Getting a lot of - pkg_version: corrupted record (pkgdep line without argument), ignoring X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Aug 2009 13:31:49 -0000 Quoting Doug Barton : > eculp wrote: >> I'm getting a lot of the following messages and have no idea how to find >> which package is causing the problem. > > This is one of those times that opening up the files and having a look > for yourself might be a good way to start. :) > >> pkg_version: corrupted record (pkgdep line without argument), ignoring > > egrep '(pkgdep$|pkgdep $)' /var/db/pkg/*/+CONTENTS > > However, you indicate below that you are using 'portmaster > --check-depends' which should be fixing those for you. So try this: > > cd /var/db/ > cp -Rp pkg pkg-before > portmaster --check-depends > diff -ur pkg-before pkg > ~/pkg-dir.diff1 > cp -Rp pkg pkg-after > portmaster --check-depends > diff -ur pkg-after pkg > ~/pkg-dir.diff2 > cd pkg > egrep -l '(pkgdep$|pkgdep $)' */+CONTENTS > ~/pkg-dir.egrep > Doug, thanks for taking the time to answer and write the scripts. =20 I've been both hesitant and probably lazy to look under the hood =20 especially in /var/db/* ports stuff but the script worked as expected =20 and got me looking at the files, something I should have done years =20 ago but THANKS to PORTMASTER I hadn't needed to. In this case I was =20 trying to remove everything in kde3 and simultaneously try to not =20 affect kde4 with pkg_deinstall -r and that really turned to shit. I =20 started seeing this after that failed attempt. I rebuilt the packages and all is well. Thanks again for the explanation, the script and especially for =20 Postmaster that I have been using almost exclusively since the first =20 version and has been improving .with each subsequent release. ed > Ideally pkg-dir.diff2 pkg-dir.egrep should both be empty there. If > not, you will need to rebuild all of the ports listed in the egrep > file. One easy way to do that would be to use vi to strip everything > but the directory name out of that file then do this: > > portmaster `cat ~/pkg-dir.egrep` > >> While I'm bothering you, could someone give me some tips on the best >> ways to find corrupted files in /var/db/pkgs, /var/db/ports and any >> other places that they might be hiding. I run >> portmaster --check-depends >> portmaster --check-port-dbdir > > Those are both good examples from my perspective. :) One thing > though, --check-port-dbdir won't find anything that is corrupt, it > will only find things that don't apply to your currently installed ports. > > > hth, > > Doug > > -- > > This .signature sanitized for your protection > > --=20 =BFCuentas con empleados o colaboradores?