Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 15 Apr 2001 13:28:25 -0700 (PDT)
From:      Ken Bolingbroke <hacker@bolingbroke.com>
To:        Hervey Wilson <herveyw@dynamic-cast.com>
Cc:        FreeBSD Questions <freebsd-questions@FreeBSD.ORG>
Subject:   Re: Ports deinstall / reinstall
Message-ID:  <Pine.BSF.4.21.0104151310460.69816-100000@fremont.bolingbroke.com>
In-Reply-To: <001d01c0c5e7$178df370$0101a8c0@chillipepper>

next in thread | previous in thread | raw e-mail | index | archive | help


On Sun, 15 Apr 2001, Hervey Wilson wrote:

> I sync the ports collection regularly and endeavour to keep my system up to
> date. When packages are reported as out of date, I try to reinstall them,
> with this sequence:
> 
> /usr/ports/XXXX: make deinstall
> /usr/ports/XXXX: make reinstall
> 
> However, "make deinstall" invariably seems to report that the package is not
> found since it's looking for the new version, not the one I have installed.
> I therefore find myself reinstalling the new version and thinking about
> deleting the old versions entries from /var/db/pkgs.
> 
> This doesn't feel quite right, can someone help me refine my process ?

I've had the same problem, and unfortunately, the port upgrade process
doesn't seem to be well documented.  The Port Handbook section on
upgrading is blank, for example.

From various tidbits on the lists, and my own trial and error process,
I've developed the following procedure:

 1) port foo-1.2 is out of date, the current versions is foo-1.3

 2) go to the foo port directory and run "make"

 3) if make completes successfully, run "pkg_delete foo-1.2"

 3a) if that fails because other ports depend on foo-1.2, then do
   "cp /var/db/pkg/foo-1.2/+REQUIRED_BY /tmp" and then do
   "pkg_delete -f foo-1.2"

 4) run "make install"

 4a) if you did step 3a), then do
   "mv /tmp/+REQUIRED_BY /var/db/pkg/foo-1.3/"

 5) run "grep foo-1.2 /var/db/pkg/*/+CONTENT", and if you get something
   like /var/db/pkg/bar-2.7/+CONTENTS:@pkgdep foo-1.2", then edit that
   file to reflect your upgrade to foo-1.3.

This seems to work, and keeps interdependencies in sync, but it's a
kludge.  Changes in ports might remove some dependencies, for example,
even if things otherwise work.  And I'm quite possibly missing other
problems, but it's just been working for me for the last while.

Ken


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




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.21.0104151310460.69816-100000>