From owner-freebsd-questions Sun Apr 15 13:29: 0 2001 Delivered-To: freebsd-questions@freebsd.org Received: from fremont.bolingbroke.com (adsl-216-102-90-210.dsl.snfc21.pacbell.net [216.102.90.210]) by hub.freebsd.org (Postfix) with ESMTP id E24F737B42C for ; Sun, 15 Apr 2001 13:28:57 -0700 (PDT) (envelope-from hacker@bolingbroke.com) Received: from fremont.bolingbroke.com (fremont.bolingbroke.com [216.102.90.210]) by fremont.bolingbroke.com (Switch-2.1.0/Switch-2.1.0) with ESMTP id f3FKSPe16487; Sun, 15 Apr 2001 13:28:25 -0700 (PDT) Date: Sun, 15 Apr 2001 13:28:25 -0700 (PDT) From: Ken Bolingbroke To: Hervey Wilson Cc: FreeBSD Questions Subject: Re: Ports deinstall / reinstall In-Reply-To: <001d01c0c5e7$178df370$0101a8c0@chillipepper> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-questions@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG 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