Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 22 Feb 1999 17:02:51 -0500 (EST)
From:      freebsd@tomqnx.com (Tom Torrance)
To:        asami@FreeBSD.ORG (Satoshi Asami)
Cc:        blokey@indigo.ie, current@FreeBSD.ORG, ports@freebsd.org
Subject:   Re: ports
Message-ID:  <m10F3RD-000I1oC@TomQNX.tomqnx.com>
In-Reply-To: <199902221154.DAA25715@silvia.hip.berkeley.edu> from Satoshi Asami at "Feb 22, 1999  3:54:20 am"

next in thread | previous in thread | raw e-mail | index | archive | help
I am attaching my description of a similar problem/solution
as it directly addresses the problem and may be of interest
to many people. See below...

> (Send messages like this to -ports next time, please....)
> 
>  * I've noticed that as I'm constantly syncing my /usr/ports directory and
>  * upgrading programs, the old packages stay there.  If I pkg_delete them and
>  * there's an unchanged file that exists in both the update and the original then
>  * tat gets deleted too.  Any way of cleanly removing old packages?  Incidentally
> 
> pkg_delete the old one before adding the new one? ;)
> 
>  * are the ports trees for all the FreeBSD releases the same one?  I mean if I'm
>  * running 2.2.x do I still get all the latest ports?
> 
> ports-current (the tree you get if you cvsup ports now) only supports
> 3.1-stable and 4.0-current.  If you're running 2.2.x, you are on your
> own.
> 
> Satoshi

Here it comes...

> On Mon, 22 Feb 1999, Tom Torrance at home wrote:
> 
> > This port fails when applying patches for FreeBSD.
> 
> If you're monstrously annoyed at it merely being broken, then I guess I
> can understand what you wrote ... but if you wanted help, you have to
> give enough info, so that someone else can figure out why it broke for
> you.
> 
> How about including the actual error listing, the date on the perl5
> port's Makefile (so we can tell the age of it) the date on your
> /usr/share/mk/bsd.port.mk file, and the FreeBSD version you're running.
>
At the time I was running a cvsup-15.4 client, as far as I
remember (since updated to cvsup-16.0) under 2.2-stable.
The system software was updated last as of Feb 13, 1999.
The ports tree was as up-to-date as cvsup could make it.

I got the info to fix it from John Polstra a year or two
ago, in reference to a source tree problem I was having at
that time, but had since forgotten about!  (blush)
 
The problem was old patch files that were not deleted by
cvsup, which will not delete anything that it did not either
write, or verify was there *and valid, expressly* on an update. 
It otherwise leaves trash lying around.

The first thing one has to do with cvsup is verify/register the files one
has by running it against the exact same release as the files one
has before running a cvsup update to get the later files.

Otherwise, as I understand it, any files deleted from the master tree
between the time your version of the ports tree was created
(usually when the cdrom distribution is created) and the first
time you do a cvsup run to update it, will NEVER be detected
and deleted by cvsup. An example, if you are running current
or RELENG_3 and happen to have inserted the required files or
symlinks to activate the softupdates code, cvsup will not
delete them.


Verification/registration is AFAIK not possible with ports, as there 
are not any separate cvs ports releases, as there is with the source tree.

I got around the problem by:
1) deleting /usr/sup/ports*
2) deleting /usr/ports/*
3) cvsuping the entire ports tree. (ouch)

This got rid of the invalid patch-aa file for perl5 as well as a
number of other invalid files that were in my tree, which was quite
old. All my ports are now running fine, and will continue to 
do so (hopefully).

Anyone that wants to cvsup the ports tree on a system would be 
well advised to "rm /usr/ports/*" before the *first* time they
run cvsup. This is particularly important if they have jost
installed an old release. The first run will then automatically
be a verification/registration run.

Thanks for your reply. It is much appreciated - I really did
not give any info, and I was frustrated. Forgive me.

Cheers, 
Tom



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ports" in the body of the message




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