Date: Thu, 15 Feb 2007 15:29:01 -0500 From: Mike Meyer <mwm-keyword-freebsdhackers2.e313df@mired.org> To: freebsd-hackers@freebsd.org Subject: Re: portupgrade O(n^m)? Message-ID: <17876.49805.273613.929848@bhuda.mired.org> In-Reply-To: <Pine.LNX.4.43.0702151017001.16360@hymn07.u.washington.edu> References: <20070215123958.GA35137@lpthe.jussieu.fr> <Pine.LNX.4.43.0702151017001.16360@hymn07.u.washington.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 15 Feb 2007, Michel Talon wrote: A lot of things that I think are half right. > I think that porting portupgrade to C++ would be time spent in vain. In > my opinion, some of the basic ideas of portupgrade are deeply flawed, > and as much as one polishes the algorithms it will not gain much. The > idea of keeping state in databases is deeply flawed, it is constantly > broken, and doesn't help in speed at all. Agreed, in theory. In practice, the ports system doesn't include all the data you need to do the job properly, so you have to store that information somewhere. > In my opinion, upgrading progressiveley, that is, port by port, is > deeply flawed. There is 90% chance that something will go wrong in > the middle and you will be stuck with an half upgraded system. The notion that a "half upgraded system" is automatically broken is itself broken. The ports DAG is not connected. So long as all the components in each connected subgraph are either upgraded or not as a set, you're going to be fine. Even if a connected subgraph isn't completely ugpraded, you may not have problems, but that's harder to work out. > Second, download as much precompiled > packages as possible, at full speed, that is with the same connection to > the ftp server. So long as you keep track of the different options that went into building the package and don't consider it possible to download a precompiled package unless it was built with the same options, including what's in make.conf. > Why packages? > because packages don't break when compiling. Why not packages? Because some packages are broken as compiled. One of my standard frustrations with portupgrade is having to record the port configuration information. On the other hand, I'm not going to use a tool that doesn't do *something* so that I get the ports built the way I need them. > Compare that to the situation for Debian apt-get. Yeah, apt-get is great. If you're happy runnnig what they provide, exactly as they provide it. Gods forbid you want something customized just a little, or they they don't provide. And do(rest of rant aborted). The ports system is trying to make a much more demanding set of users happy than apt-get. It does some thing right, but it also does some things that simply aren't acceptable to some FreeBSD users. <mike -- Mike Meyer <mwm@mired.org> http://www.mired.org/consulting.html Independent Network/Unix/Perforce consultant, email for more information.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?17876.49805.273613.929848>