Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 20 Mar 2008 01:10:48 +0100
From:      Michel Talon <talon@lpthe.jussieu.fr>
To:        freebsd-ports@freebsd.org
Subject:   Re: Utility for safe updating of ports in base system
Message-ID:  <20080320001048.GA39125@lpthe.jussieu.fr>

next in thread | raw e-mail | index | archive | help
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




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