From owner-freebsd-ports@FreeBSD.ORG Thu Mar 20 00:10:52 2008 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4BEA0106566B for ; Thu, 20 Mar 2008 00:10:52 +0000 (UTC) (envelope-from michel@lpthe.jussieu.fr) Received: from shiva.jussieu.fr (shiva.jussieu.fr [134.157.0.129]) by mx1.freebsd.org (Postfix) with ESMTP id C8E508FC26 for ; Thu, 20 Mar 2008 00:10:51 +0000 (UTC) (envelope-from michel@lpthe.jussieu.fr) Received: from parthe.lpthe.jussieu.fr (parthe.lpthe.jussieu.fr [134.157.10.1]) by shiva.jussieu.fr (8.14.2/jtpda-5.4) with ESMTP id m2K0AnVc018668 for ; Thu, 20 Mar 2008 01:10:49 +0100 (CET) X-Ids: 166 Received: from niobe.lpthe.jussieu.fr (niobe.lpthe.jussieu.fr [134.157.10.41]) by parthe.lpthe.jussieu.fr (Postfix) with ESMTP id 5873B236FC6 for ; Thu, 20 Mar 2008 01:10:48 +0100 (CET) Received: by niobe.lpthe.jussieu.fr (Postfix, from userid 2005) id 3343930; Thu, 20 Mar 2008 01:10:48 +0100 (CET) Date: Thu, 20 Mar 2008 01:10:48 +0100 From: Michel Talon To: freebsd-ports@freebsd.org Message-ID: <20080320001048.GA39125@lpthe.jussieu.fr> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.4.2.2i X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-3.0 (shiva.jussieu.fr [134.157.0.166]); Thu, 20 Mar 2008 01:10:49 +0100 (CET) X-Virus-Scanned: ClamAV 0.92/6305/Wed Mar 19 08:32:53 2008 on shiva.jussieu.fr X-Virus-Status: Clean X-Miltered: at jchkmail.jussieu.fr with ID 47E1AB89.006 by Joe's j-chkmail (http : // j-chkmail dot ensmp dot fr)! X-j-chkmail-Enveloppe: 47E1AB89.006/134.157.10.1/parthe.lpthe.jussieu.fr/parthe.lpthe.jussieu.fr/ X-j-chkmail-Score: MSGID : 47E1AB89.006 on jchkmail.jussieu.fr : j-chkmail score : . : R=. U=. O=. B=0.052 -> S=0.052 X-j-chkmail-Status: Ham Subject: Re: Utility for safe updating of ports in base system X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Mar 2008 00:10:52 -0000 Doug Barton wrote: > So, I renew my inquiry. :) Is portmaster a suitable candidate to fulfill > the role of the utility described, and if not, why not? At the risk of being flamed, i would venture to say that such an utility should be able to upgrade things based of *binary* packages, and consequently that portmaster is not a suitable candidate. For example pkg_add installs a binary package, if you want to compile and install you run "make all install clean" in the ports tree. One of the requirements of an upgrade system is predictability, this can only be achieved by using binary packages. Another requirement, in my opinion, is speed, and the lack of speed, which is completely hidden when you compile your packages will be immediately apparent if you try to use packages. Indeed portupgrade has options -P and -PP to work with packages which could serve as a prototype for a "pkg_upgrade" written in C, except that they work poorly, and in particular run slowly. In my opinion, an example of a correct "pkg_upgrade" type programm written in C++ is the Debian apt-get. It works predictably, fast, etc. One of its features, that i consider very important for correct operation, is that it computes the list of all packages to be deleted and all packages to be installed and asks the user if he agrees before doing anything. It fetches all necessary packages before installing or deleting anything. Hence you can be sure that the upgrade process will not end in a mess if something crashes in the middle, like it is the case with all present standard FreeBSD upgraders. -- Michel TALON