Date: Sat, 2 Aug 1997 23:18:26 -0400 (EDT) From: Tim Vanderhoek <hoek@hwcn.org> To: Ade Lovett <ade@demon.net> Cc: hoek@hwcn.org, current@FreeBSD.ORG Subject: Re: ports-current/packages-current discontinued Message-ID: <Pine.GSO.3.96.970802223558.27450B-100000@james.freenet.hamilton.on.ca> In-Reply-To: <E0wunGs-0000CE-00@genghis.eng.demon.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, 3 Aug 1997, Ade Lovett wrote: > Rather than implement a meta-port concept, which does nothing but > bundle ports together, we add in (a) the idea that a port may not > build anything itself, and (b) the idea of dependencies in both > source *and* binary form. This is what I've proposed except without the binary dependencies. The reason for not adding automated package is that the pkg_* system has no way of knowing how to fetch a package from the 'net. Eg. I will sometimes download a package through the FreeNet, which means that I, 1. tip hwfn 2. J^H^H^H^H^H^H^H^H^H^H^H^H^H^Hftp://ftp.freebsd.org/pub/FreeBSD/packages-2.2.2/All 3. Choose a package 4. Download it with Zmodem. pkg_add has no way of knowing how to do this. Rather than adding package (or "binary") dependancies, my suggestion was that bsd.port.mk would, if META=yes, put all the dependancy binaries into the .tgz file resulting from ``make package''. > For example: > > port-A only has a list of dependencies (port-B) > > port-B builds something itself, and also depends > on port-B1 and port-B2 > > port-B1 only available in /binary form (say it's > a simple list of configuration files) > > port-B2 available in both /source and /binary > form, no need to grab the /source form > if the /binary is already present on the system I have a suspicion you lack some familiarity with the existing ports system. :) Regardless, in concept, the above is what I am suggesting. I want a new ports category, entitled "meta" (or whatever). Sysinstall would allow the user to choose which meta-packages they want installed. It would do this in such a way that these meta-packages seem like equal peer parts of the system. The fallings I see are A user may want the source to the "meta" packages. The current ports system doesn't provide a way to download both the binary and the source. Sysinstall would have to recognize meta-packages and do pkg_add followed by ``MASTER_SITE_FREEBSD=yes make extract''. This is entirely unintegrated with ``make world''. Someone running make world may or may not want all of their meta-packages recompiled. I think the answer here is that make world should rebuild everything, including all the ports that are installed w/ source. I suppose this would involve checking /var/db/pkg for installed ports, and then building those ports (provided they were installed as ports, not packages). This leaves no problems wrt some users having a T1, some users being occasional dial-up, and some users installing from a CD. Other problems Jordan listed. Why can't distfiles be kept where they are? As for CDs. Optimally, you'd want to get as many of the meta-packages onto the same CD that holds the rest base system, so they could be pkg_added without shuffling CDs. Building srcs off CDs is tricker. This is something that the ports system would have to solve. Not all ports need to be able to do it, but there would need to be a mechanism to mark which ones are capable of it. There would have to be some interesting changes to the ports system, but they would probably have the spin-off benefit of making the whole thing cleaner. I don't want to propose a way of doing this now, but perhaps someone else has some previously thought-out ideas. :-) -- Outnumbered? Maybe. Outspoken? Never! tIM...HOEk
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.GSO.3.96.970802223558.27450B-100000>