From owner-freebsd-stable@FreeBSD.ORG Fri Dec 6 01:28:46 2013 Return-Path: Delivered-To: freebsd-stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 8EC25A0A; Fri, 6 Dec 2013 01:28:46 +0000 (UTC) Received: from elvis.mu.org (elvis.mu.org [192.203.228.196]) by mx1.freebsd.org (Postfix) with ESMTP id 735361B3A; Fri, 6 Dec 2013 01:28:46 +0000 (UTC) Received: from Alfreds-MacBook-Air.local (50-204-88-5-static.hfc.comcastbusiness.net [50.204.88.5]) by elvis.mu.org (Postfix) with ESMTPSA id 22FF61A3C39; Thu, 5 Dec 2013 17:28:35 -0800 (PST) Message-ID: <52A12843.3010204@freebsd.org> Date: Thu, 05 Dec 2013 17:28:35 -0800 From: Alfred Perlstein Organization: FreeBSD User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:24.0) Gecko/20100101 Thunderbird/24.1.1 MIME-Version: 1.0 To: Kevin Oberman , Tom Evans Subject: Re: BIND segway -> python -> first-class ports References: <529E8C53.6020208@freebsd.org> <20131204060246.GV2951@home.opsec.eu> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: Daniel Eischen , Julian Elischer , Kurt Jaeger , "freebsd-stable@freebsd.org Stable" X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 06 Dec 2013 01:28:46 -0000 On 12/5/13, 4:39 PM, Kevin Oberman wrote: > On Wed, Dec 4, 2013 at 9:17 AM, Tom Evans wrote: > >> On Wed, Dec 4, 2013 at 5:09 PM, Kevin Oberman wrote: >>> Of course, the question of what needs to be a class 1 port may prove to >> be >>> the bikeshed to end all bikesheds! (I think we need Python, Perl, JPEG, >>> PNG, GPG, BIND and bright yellow!) And we need a reasonable mechanism to >>> update this list as the popularity of various tools does change. >> Woah, this is missing most of what Alfred was saying. There should be >> no "class 1 ports", and if jpeg went in base, it should be because >> base requires and uses it, not because it is useful to 3rd party >> software in base. The base jpeg *would not* even be visible to >> ports/3rd party software by default, only to base and things >> especially configured to use base. >> >> You are correct. I did not understand Alfred's proposal correctly. Of > course, I can see several issues with that, as well, but it' a lot more > tractable than a set of "baseline" ports. > Tom hit the nail on the head and perfectly described the proposal. Thank you Tom. Kevin, thanks for being open to the idea. My hope is that it allows us to build richer system. For instance, go look at portsnap(1), it's written in sh(1) and due to that it's pretty slow (I've personally optimized parts of it so that it would run in a decent amount of time in a vm, and where I couldn't figure how to optimize I added progress meters). At the same time by hiding it from non-base we have reduced pressure to keep it up to date as users can just install the latest and greatest from ports. Again, there would need to be some exposure so that if there happened to be some system utility that needed python or $lang modules written, then those modules would need to reference the "hidden" version. Think about cc/c++, those should also be hidden, but probably exposed as "fbsdcc/fbsdc++" for building kernel modules, pam modules and other things that require toolchain hacks. This would again decouple the compiler that users see from what we have in base. This would reduce the pressure on us to update the C compiler/toolchain for any reason other than to address issues in base. -Alfred