From owner-freebsd-ports@FreeBSD.ORG Mon Jan 14 03:13:43 2008 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 A3F4116A417; Mon, 14 Jan 2008 03:13:43 +0000 (UTC) (envelope-from jhein@timing.com) Received: from Daffy.timing.com (ns2.timing.com [206.168.13.218]) by mx1.freebsd.org (Postfix) with ESMTP id 5F0D013C45B; Mon, 14 Jan 2008 03:13:43 +0000 (UTC) (envelope-from jhein@timing.com) Received: from gromit.timing.com (gromit.timing.com [206.168.13.209]) by Daffy.timing.com (8.13.1/8.13.1) with ESMTP id m0E2fdnb013161; Sun, 13 Jan 2008 19:41:39 -0700 (MST) (envelope-from jhein@timing.com) Received: from gromit.timing.com (localhost [127.0.0.1]) by gromit.timing.com (8.14.2/8.14.2) with ESMTP id m0E2fc8W097027; Sun, 13 Jan 2008 19:41:38 -0700 (MST) (envelope-from jhein@gromit.timing.com) Received: (from jhein@localhost) by gromit.timing.com (8.14.2/8.14.2/Submit) id m0E2fc14097023; Sun, 13 Jan 2008 19:41:38 -0700 (MST) (envelope-from jhein) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-ID: <18314.52192.930622.806421@gromit.timing.com> Date: Sun, 13 Jan 2008 19:41:36 -0700 From: John E Hein To: Doug Barton In-Reply-To: <47893503.5040604@FreeBSD.org> References: <47884F14.3040708@FreeBSD.org> <47893503.5040604@FreeBSD.org> X-Mailer: VM 7.19 under Emacs 22.1.1 X-Virus-Scanned: ClamAV version 0.91.2, clamav-milter version 0.91.2 on Daffy.timing.com X-Virus-Status: Clean Cc: Paul Schmehl , FreeBSD Ports Subject: Re: Suggested improvements for ports 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: Mon, 14 Jan 2008 03:13:43 -0000 Doug Barton wrote at 13:45 -0800 on Jan 12, 2008: > I have actually advocated in the past that ALL ports should have version > numbers, and that we then create virtual ports (symlinks, whatever) that > point to whatever is the "current" version of that software. Different > developers dislike that idea for different reasons, but my opinion is > still that from the user perspective this would make life a lot easier. I do this for a site-wide nfs shared installed apps dir at work (ignoring the many edge cases, it's basically this: install to PREFIX=/site/dist/${PKGNAME} and make sym links to /site/bin, /site/lib). It's not particularly easy given the current ports propensity to have everything in /usr/local, but I find it worthwhile. It does make life easier (for both users and admins) for at least a few reasons: - multiple versions of the same port can co-exist (sometimes until a newer one is proven to work) - live upgrades don't affect people that may be running an older version of a port since the old port is still around (and just re-pointing a sym link to the new version doesn't make an existing running instance of a program fail). - updates are generally transparent to users - having a common shared nfs dir means only having to install a port once and all machines instantly get access. I have my own hacks to the port tree to accomodate this strategy. And no, I won't publish them as they are quite hacky in places, but if there were moves in the direction you describe (not likely as far as I can see due to resistance of the kind you described - and it's not a particularly small task to support something like this officially), I could chime in about how I've been doing it for the last 10 years. Ports based on pkg-config have made this much easier, and for those ports I almost don't have to do anything special at all except set PREFIX to point somewhere other than /usr/local. It's had some bumps in the road over the years, but it mostly just works now. I must say it's been much nicer now that the pointyhat checks for ports that don't handle PREFIX properly. 10 years ago that was a much more prevalent problem.