Date: Sat, 9 Sep 2000 16:48:51 -0500 From: Steve Price <sprice@hiwaay.net> To: Satoshi - Ports Wraith - Asami <asami@FreeBSD.ORG> Cc: FreeBSD Ports <ports@FreeBSD.ORG> Subject: Re: PortsNG (was Re: Ports Options Paper) Message-ID: <20000909164851.G2089@bonsai.hiwaay.net> In-Reply-To: <vqcsnr966g3.fsf@silvia.hip.berkeley.edu>; from asami@FreeBSD.ORG on Sat, Sep 09, 2000 at 06:27:56AM -0700 References: <20000903052226.E1205@radon.gryphonsoft.com> <20000909003743.B92984@bonsai.hiwaay.net> <vqcsnr966g3.fsf@silvia.hip.berkeley.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, Sep 09, 2000 at 06:27:56AM -0700, Satoshi - Ports Wraith - Asami wrote: # * Let's start by defining a wishlist[1]. I'll start with one very high on # * my list. Let's say we have two ports of libfoo. The only difference # * between them is that one is built WITH_BAR and the other without. If you # * look at the pkgballs for each of these maybe 90% of the files in them # * will be exactly the same. What I'd like to see is a way to have a base # * (barebones) libfoo package and a satellite package with only the files # * that change when built WITH_BAR. # * # * Sounds pretty easy so let's take this one step further. Let's suppose # # Is it? ;) Doing that manually isn't too hand, but doing it # automatically, well I don't even know if that's possible.... It is possible. Might take a great deal of work, but that's not the point. The point being is this a requirement for the new system or just something on Steve's wishlist? I won't get to deep into a design for this because we haven't even determined yet if we want to support this but... One could write a program that given any two packages (foo and foo_with_bar) the second package would be redone to only contain the files not in the first or that were changed because an option was added and a dependency added in the second package on the first. In many cases this would be a nearly trivial exercise and would help tremendously with our need for more space on the release discs. # My wishlist item #1 would be a good and trusty "upgrade" target. You # go to a port's directory and type "make upgrade", it will upgrade the # current port by removing the previous version (only if it is from the # same "stream" -- to borrow a term from Nick's message), as well as any # other ports that it depends on that also needs to be updated. It also # updates the children that depend on this port. (As we talked, finding # out which child port needs to be updated is not trivial.) # # The same thing can be done from packages too. You say pkg_add -U # <pkg> or something at it will do something similar, only using # packages instead of ports. Ok. Here's a rhetorical question? Why do need a new target or option for pkg_add? Shouldn't just doing a 'make install' or a plain pkg_add do this transparently? Maybe we should have an expert-mode that allows the brave at heart to turn this feature off, but I think transparent upgrades should be the default. No? -steve 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?20000909164851.G2089>