From owner-freebsd-ports Sat Mar 31 12:28:12 2001 Delivered-To: freebsd-ports@freebsd.org Received: from dagobert.skystream.nl (smtp.uwnet.nl [195.7.130.55]) by hub.freebsd.org (Postfix) with ESMTP id 458B437B730 for ; Sat, 31 Mar 2001 12:28:02 -0800 (PST) (envelope-from abgoeree@uwnet.nl) Received: from dyn.dailup.c227140072.isd.to (dyn.dailup.c227140072.isd.to [213.227.140.72]) by dagobert.skystream.nl (8.11.3/8.11.0) with ESMTP id f2VKWVA23866 for ; Sat, 31 Mar 2001 22:32:32 +0200 Received: (qmail 13582 invoked by uid 1000); 31 Mar 2001 20:27:10 -0000 From: "Andre Goeree" Date: Sat, 31 Mar 2001 22:27:10 +0200 To: Will Andrews Cc: ports@freebsd.org, dan@langlille.org.skystream.nl Subject: Re: Error: your port uses an old layout. Message-ID: <20010331222710.B13539@mandark.attica.home> Reply-To: abgoeree@uwnet.nl References: <200103310749.f2V7mxf78610@ns1.unixathome.org> <20010331131052.E15392@casimir.physics.purdue.edu> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <20010331131052.E15392@casimir.physics.purdue.edu>; from will@physics.purdue.edu on Sat, Mar 31, 2001 at 01:10:53PM -0500 X-Sender: abgoeree@uwnet.nl Sender: owner-freebsd-ports@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org On Sat, Mar 31, 2001 at 01:10:53PM -0500, Will Andrews wrote: > On Sat, Mar 31, 2001 at 07:48:58PM +1200, Dan Langille wrote: > > 2 - Perhaps this will be answered by Q1, but: Lately, the most common > > solution I've seen hadned out is rm -rf /usr/ports and cvsup again. Not > > only is that a huge waste of bandwidth, it's also a huge burdon on those > > with dial up connections. Is there a more practical solution? > > Yes. A script to find and prune all the old stuff is more practical. > Only problem is, nobody's written one yet. The suspects in particular > are all of the pkg/ and patches/ directories. > > This is a quick hack script (and untested too, but I doubt it will harm): > > find . -name pkg -type d -mindepth 3 -maxdepth 3 | xargs rm -rf > find . -name patches -type d -mindepth 3 -maxdepth 3 | xargs rm -rf > find . -name md5 -type f -mindepth 4 -maxdepth 4 | xargs rm -rf > > In the toplevel of your ports tree (i.e. you cd /usr/ports before this.. > I've made this a bit more flexible in case someone renamed their ports > directory to something else). Only problem is this kind of thing > can take awhile... > > -- > wca Please read and try out the filter i suggested in my previous reply. It takes care of *all* problems related to CVSup not deleting files. As you experienced it's not enough to just remove pkg and patches... My approach is to take the CVSup checkouts file(s) and the information about "live files" (files that should exist on disk) stored in the checkouts files. The filter i described does just that, it makes a list of "live files". By copying these live files to another location or rolling a tarball of these files (and these files only) as i suggested you get rid of things that shouldn't be in the portsdir. After copying/rolling the tarball you rm -fr the old portsdir and copy/untar the live files to your portsdir. This is all there is to be done. No CVSup from scratch needed anymore :-) And you know what, i've tested it and it works great! --Andre. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-ports" in the body of the message