From owner-freebsd-questions Sun Dec 17 15:11:22 2000 From owner-freebsd-questions@FreeBSD.ORG Sun Dec 17 15:11:19 2000 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from berzerk.gpcc.itd.umich.edu (berzerk.gpcc.itd.umich.edu [141.211.2.162]) by hub.freebsd.org (Postfix) with ESMTP id 327D737B400 for ; Sun, 17 Dec 2000 15:11:19 -0800 (PST) Received: from frogger.gpcc.itd.umich.edu (smtp@frogger.gpcc.itd.umich.edu [141.211.2.144]) by berzerk.gpcc.itd.umich.edu (8.8.8/4.3-mailhub) with ESMTP id SAA11832; Sun, 17 Dec 2000 18:11:18 -0500 (EST) Received: from localhost (timcm@localhost) by frogger.gpcc.itd.umich.edu (8.8.8/5.1-client) with ESMTP id SAA12229; Sun, 17 Dec 2000 18:11:17 -0500 (EST) Date: Sun, 17 Dec 2000 18:11:17 -0500 (EST) From: Tim McMillen X-Sender: timcm@frogger.gpcc.itd.umich.edu To: Brent Kearney Cc: freebsd-questions@FreeBSD.ORG Subject: Re: proper way to upgrade a port In-Reply-To: <20001217142150.A15561@kearneys.ca> 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, 17 Dec 2000, Brent Kearney wrote: > > If I want to upgrade a port, apache for example, what is the best way > to proceed? Use package delete on the registered package (installed ports are registered as packages). Others have said that works better than make deinstall'ing the port. Then rebuild the port. > > I could 'make deinstall' in the old port, before using cvsup to update > my ports. However, although I can do this for one port, I'm not going > to do it for every installed port, every time I update the collection. > So some will get left out. > > If I just cvsup my ports, and make install, then will there be > leftover binaries from the old version kicking around on my server? > Will the pkg database be accurate? Yes you need to use pkg_delete to get rid of as much as you can. Some will not get deleted. I think the only way to get around that is to delete the remnants that are reported by the pkg_delete command by hand. There was discussion on this a month ago and the consensus was there is currently no automated way to update your installed ports. No operating system has this that I know of. You'll have to save the output of pkg_info to a file and go through, pkg_delete them and then cvsup your ports and build each port. To use pkg_delete you'll have to also look at what is dependent on what. If you try to delete a pakcage that is depended on by something else, it will tell you what those are. Then you'll have to delete those first and continue the process recursively until all the packages you want to upgrade are gone. Unfortunately when it tells you a package is depended upon by others I don't think the listing is in the order that they need to be removed in. You could work on scripting this and if you did I'm sure others would be interested and perhaps it could be worked into FreeBSD as a feature. If there were a central application that could monitor all ports/packages installed, tell you when there were new versions, and upgrade them correctly, that would really put FreeBSD ahead. If the dependency lists were able to be put in order that would help in this effort. Hopefully others will correct any errors I made, Tim > Thanks. > > -Brent > > > /********************************************************* > * PGP: 4E5C 7BAE F756 1994 F33D 12BC 036C 25F0 2285 4DC7 > *********************************************************/ > > > To Unsubscribe: send mail to majordomo@FreeBSD.org > with "unsubscribe freebsd-questions" in the body of the message > To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-questions" in the body of the message