Date: Fri, 22 Sep 2000 23:37:03 -0700 (PDT) From: kosmos <kosmos@bowhill.yi.org> To: James Housley <jim@thehousleys.net> Cc: freebsd-ports@FreeBSD.ORG Subject: Re: ports features wish list: USE_PACKAGE_FIRST Message-ID: <Pine.BSF.4.21.0009221939090.6793-100000@bowhill.yi.org> In-Reply-To: <39CC03C7.A67ACB97@thehousleys.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, 22 Sep 2000, James Housley wrote: > kosmos wrote: > > > > I have an item for the ports development wish-list. This is > > probably not a new idea, but it is related to building packages > > on-the-fly, and it would be useful. > > > > How about a make target that would look in packages/All to add > > a dependent package before attempting to install it as a port? > > > This seems like a reasonable thing to want. How would this fit in with > the discussed re-write of the ports system? This is a philisophical question, right? :) Since the design goals of a ports rewrite/makeover are not entirely clear to me, I can't really say for sure. I think it would mainly be beneficial to re-installation, or reverting an upgrade that failed, if 'make upgrade' is one of the objectives. The systems basic behaviour would have to be changed, though. For instance, suppose the system's default "make install" behaviour in ports was transformed to : "make DEPENDS_TARGET=package package" (which BTW is an impressive command) Everything gets installed, same as usual, but packages are made of each dependency and are stored in packages/All, as an extra step. If USE_PKG_FIRST was on by default, the system could afford to delete each distfile after it was made, because the built port and it's dependencies would now be available as a packages, not distfiles. OK, less disk space used, and re-installation of things is easier. Suppose a month later, a particular port gets passed some kind of 'make upgrade' target. Somehow, make knows that the port (and some of its dependencies) have been superceded by newer versions. So, it deinstalls these old ports, and builds/installs/packages the new versions. However, if a build failure occurs during this process, doing a 'make revert' is a painless, becuase packages are already built for the old stuff. USE_PACKAGE_FIRST would just be told to use the old stuff, not the new stuff. Other benefits; * Ports could optionally install packages from from a fixed CD package repository, or over a network. Unless they were explictly told to do something like: USE_DISTFILE_FIRST, they could install packages instead. The only problem I can see with something this is mixed library versions, if libc changed or something. But that problem would have to be addressed anyway. --Allan To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-ports" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.21.0009221939090.6793-100000>