From owner-freebsd-ports@FreeBSD.ORG Wed Dec 12 20:04:35 2007 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B660516A418 for ; Wed, 12 Dec 2007 20:04:35 +0000 (UTC) (envelope-from aryeh.friedman@gmail.com) Received: from py-out-1112.google.com (py-out-1112.google.com [64.233.166.180]) by mx1.freebsd.org (Postfix) with ESMTP id 6FDC013C448 for ; Wed, 12 Dec 2007 20:04:35 +0000 (UTC) (envelope-from aryeh.friedman@gmail.com) Received: by py-out-1112.google.com with SMTP id u77so985114pyb.3 for ; Wed, 12 Dec 2007 12:04:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:user-agent:mime-version:to:cc:subject:references:in-reply-to:x-enigmail-version:content-type:content-transfer-encoding; bh=JcbUzPRRoZc+TtqNWi2aUU1Fw+f5TczL0QwWuTJlV5o=; b=S3cGVFCxBa2Aq1iCvY43lOsHz0zYIvTkumHU1mv7VrVZOYrLifDhUUz0F/f9yFwxAeStUFn5V/5QGKhLkC5B6m1fSPK13/VXKEoNdjB8Sx8ESA0Ep876OBhVoWnGrDP6ZS3xLTVJghwbjKTrDeiin6i1giFqrlC/9Kpzv8G5yeg= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:user-agent:mime-version:to:cc:subject:references:in-reply-to:x-enigmail-version:content-type:content-transfer-encoding; b=gTAFLckulMChMRm/FW/6jEvbKCCmzLCtawpa8bQXO4b0LeTixIRaIuGScfi+GgzMkrX9CDl7rKNIHot6yNNl8WxEeOUxgWbMIyGR0RsVp+NufxFpjhqmwKVuaEquLHGV1/AV2vC5GFyd+MxIREzsEUJI0oN4pD3XxxF7ag5dGHQ= Received: by 10.65.114.11 with SMTP id r11mr2343710qbm.72.1197489871946; Wed, 12 Dec 2007 12:04:31 -0800 (PST) Received: from ?192.168.2.2? ( [67.85.89.184]) by mx.google.com with ESMTPS id q14sm710147qbq.2007.12.12.12.04.30 (version=TLSv1/SSLv3 cipher=RC4-MD5); Wed, 12 Dec 2007 12:04:31 -0800 (PST) Message-ID: <47603ECD.70408@gmail.com> Date: Wed, 12 Dec 2007 15:04:29 -0500 From: "Aryeh M. Friedman" User-Agent: Thunderbird 2.0.0.9 (X11/20071209) MIME-Version: 1.0 To: Stephen Montgomery-Smith References: <475F79F1.6040702@gmail.com> <475FE959.5080204@math.missouri.edu> In-Reply-To: <475FE959.5080204@math.missouri.edu> X-Enigmail-Version: 0.95.5 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Cc: freebsd-ports@freebsd.org Subject: Re: scope of the port re-engineering project X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Dec 2007 20:04:35 -0000 -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Stephen Montgomery-Smith wrote: > Aryeh M. Friedman wrote: >> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 >> >> Disclaimer: >> >> This does not commit me, anyone else and/or FreeBSD to an course >> of action nor does it imply such a commitment. >> >> Assuming that the following is true: >> >> 1. There is a "proven" need to re-engineer the ports system as >> demostrated by posts to -ports@ and the results of the survey on >> re-engineering the ports system >> >> 2. Any system will correct your own personal "worst aspect" of >> the ports system but will not do so at the expense of breaking >> any high level functionality >> >> Please answer the following questions: >> >> 1. Using the items listed in the next section please select the >> best scope of the project assuming that 100% backwards >> compatibility with the current ports system is maintained? >> >> 2. Using the items listed in the next section please select the >> best scope of the project assuming that 100% backwards >> compatibility with the current ports system is *NOT* maintained? >> >> Possible project scopes: >> >> a. Refactor the current system only b. Redesign and recoding of >> the current system c. Attempt to unify all methods of FreeBSD >> software installation into a single system d. Same as c but for >> all BSD like OS's > > I'm not sure what the words "refactor" and "recode" mean here. Refacoring is to use the existing framework and make tweaks to it. Recoding is to start with a fresh piece of paper and see what emerges. > > If I had lots of time on my hands, I think I would redo ports > _without_ using "make" as its primary scripting tool. Mind you, > I'm not sure what I would use in its place - perhaps its own > scripting tool written from scratch? The difficulty with using > "make" is that it isn't linear. For example (and this was my > bugbear), to figure out "make -V PKGNAME" the program has to read > and process every single line of the makefile, including all of its > ".includes". And while perhaps this issue is a bit frivolous, > nevertheless I bet that this is one of the reasons why people > creating ports make mistakes setting up the dependencies. Cook, scons, ant and several other modern dependency tools offer a good framework for per package methods for handling this (see Miller97) but as far I can tell there is no good tool that solves this at the inter-project level and thus the final result would be likely modeled on one of the above DMT's but would be home grown. > > Finally, I really do like the difference between ports and > packages. Please keep both of the "build from source" and "install > binaries" capabilities. Even though we are not in the requirements phase this is one of the requirements I think is a must I would even go a step further and say the two should be completely interchangeable (which they aren't right now... i.e. you use one or the other exclusivally for all packages) > > > If you really do all the heavy lifting, it is something I will > admire. Not least because you might do all this work and find > people are too conservative to use it. > I have my own personal reasons for wanting to do most of the work my self (prototype for a commerical package I am looking at developing... note there will be no functional diff between the two systems just the addition of some smoothing of rough UI edges in the commerical one) -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.4 (FreeBSD) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFHYD7NzIOMjAek4JIRAvzsAKCKubnQxw7EbVHJ1LdCS+Cadq24EQCfe6gx z1JZPbCahjsmhn/+bsaIRJQ= =Fo8B -----END PGP SIGNATURE-----