From owner-freebsd-ports@FreeBSD.ORG Sat Apr 10 01:59:36 2010 Return-Path: Delivered-To: ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0DA0E106566B; Sat, 10 Apr 2010 01:59:36 +0000 (UTC) (envelope-from julianelischer@gmail.com) Received: from mail-qy0-f181.google.com (mail-qy0-f181.google.com [209.85.221.181]) by mx1.freebsd.org (Postfix) with ESMTP id A4E278FC17; Sat, 10 Apr 2010 01:59:35 +0000 (UTC) Received: by qyk11 with SMTP id 11so3250017qyk.13 for ; Fri, 09 Apr 2010 18:59:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:sender:message-id:date:from :user-agent:mime-version:to:subject:content-type :content-transfer-encoding; bh=najLhVHXRUCasjntxqxIgJxumoAxxuIUpHaqpbuYCBA=; b=OmYgQrjfX11jlq4bOB+INJ9Dto/WLcrZuMCQLoppcrfgTI5Jsl0XS+fjaFYFwYj1GZ BOArn6fVOKWuO2phyyr0TKSM1kVTbaNIDiilTOnzWM5zqyAD5bWjwbviOEr7zoo98C7+ 88en+Ywbo7fw1h6zoWNxRT61LYq6ZM/13Qkl0= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=sender:message-id:date:from:user-agent:mime-version:to:subject :content-type:content-transfer-encoding; b=gtTku+qj6MFM1Zp9HuH7/vy0NeIX9xB0jbio9igsPwZeHbUkcMltklojx7HnARn+oT 9oEUVta7Bxuc+j2HLwVk/EOwrllIy/R2FA099+9sr8rVz6bOkpVPAEwBoxm6qVOW6tiQ SEVWm1shxNr+ByuHW8IBedCOa/KKD4X9ixldU= Received: by 10.229.238.70 with SMTP id kr6mr1198254qcb.49.1270863105369; Fri, 09 Apr 2010 18:31:45 -0700 (PDT) Received: from julian-mac.elischer.org (h-67-100-89-137.snfccasy.static.covad.net [67.100.89.137]) by mx.google.com with ESMTPS id w30sm2548444qce.10.2010.04.09.18.31.44 (version=TLSv1/SSLv3 cipher=RC4-MD5); Fri, 09 Apr 2010 18:31:45 -0700 (PDT) Sender: Julian Elischer Message-ID: <4BBFD502.1010507@elischer.org> Date: Fri, 09 Apr 2010 18:31:46 -0700 From: Julian Elischer User-Agent: Mozilla/5.0 (Macintosh; U; PPC Mac OS X 10.4; en-US; rv:1.9.1.9) Gecko/20100317 Thunderbird/3.0.4 MIME-Version: 1.0 To: FreeBSD Current , ports@freebsd.org Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: Subject: ports and PBIs 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: Sat, 10 Apr 2010 01:59:36 -0000 sorry for the cross-post.. Last night at the Bay Area FreeBSD Users Group meeting we had a discussion about ports, and what is good about them and what is bad about them. This has been a topic of discussion quite a bit recently and we were looking for a solution that would allow us to keep the good parts of the current ports system but would allow us to give a better user experience for non guru users. The scheme we came up with involves a merging of the ports tree and the PBI system, developed for PC-BSD. Basically, the addition of a makepbi keyword in the .mk files to allow the automatic generation of PBIs for 'simple' ports such as 'cowsay' (the canonical simple app). More complicated apps would need manual work in Makefile or in a separate pbi-recipe file, but once the support was done we could proceed one port at a time. Not all ports make sense in a PBI format. (e.g. libraries etc. may not) One issue that was raised is the increase of storage overhead when using PBI packages as they include a copy of all required libraries and resources, which means that one would very quickly get duplicate copies of things. Our suggestions include the ability of the PBI management software to resolve and (using hard links) eliminate duplicate items. This is not as easy as it sounds but can be achieved using a special variant of 'objcopy' (at least that is our theory). The aim is to make all apps installed on a system much more resilient to dependency problems. In addition there was discussion on how builds need to be doable as non-root uids sometimes, and that users on a system should be able to install packages (PBIs) as thie selves to get local versions of apps for themselves. Alfred Perlstein , Matt at ix systems Kris (Mr PBI), some others and I, felt that these ideas seemed to make some sense and so I put them here for comment. Julian