From owner-freebsd-questions@freebsd.org Tue Jul 14 18:23:56 2015 Return-Path: Delivered-To: freebsd-questions@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 10DA19A18A4 for ; Tue, 14 Jul 2015 18:23:56 +0000 (UTC) (envelope-from wiml@omnigroup.com) Received: from omnigroup.com (omnigroup.com [198.151.161.1]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client CN "omnigroup.com", Issuer "The Omni Group CA" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id EF481F5E for ; Tue, 14 Jul 2015 18:23:55 +0000 (UTC) (envelope-from wiml@omnigroup.com) Received: from machamp.omnigroup.com (machamp.omnigroup.com [198.151.161.135]) by omnigroup.com (Postfix) with ESMTP id 4B42E2425DF2 for ; Tue, 14 Jul 2015 11:23:55 -0700 (PDT) Received: from [10.4.3.119] (pfsense.omnigroup.com [198.151.161.131]) by machamp.omnigroup.com (Postfix) with ESMTPSA id DB67411B1733 for ; Tue, 14 Jul 2015 11:20:06 -0700 (PDT) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 7.3 \(1878.6\)) Subject: Re: Naming a locally-built version of a package From: Wim Lewis In-Reply-To: Date: Tue, 14 Jul 2015 11:23:53 -0700 Content-Transfer-Encoding: quoted-printable Message-Id: <6C655B93-082B-4782-872B-F411BA722F85@omnigroup.com> References: To: freebsd-questions@freebsd.org X-Mailer: Apple Mail (2.1878.6) X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 14 Jul 2015 18:23:56 -0000 On 14 Jul 2015, at 09:50 AM, Matthew Seaman wrote: > As I said above, usually people just use the original port name with > their own modifications, and it's mostly because of dependency = tracking > like this. That makes sense (and in my case is what I'd want to do anyway; my local = version of Foo *is* Foo, just with some local tweaks). Is $PORTREVISION a good place to note the presence and revision of my = local changes (e.g., as "o3" since only one letter is allowed)? Is pkg's = version-number-comparison behavior documented somewhere--- how it orders = alphabetics and what it does with the VERSION and REVISION parts of the = version string? > it is certainly possible to tell pkg(8) not to mess with locally = customized packages. See pkg-lock(8) That looks useful, thanks for the pointer! > The mechanism is not > entirely as smooth as we would like it to be, and pkg(8) should grow = the > intelligence to understand that replacing a package 'Foo with option > bar' with a package 'Foo without option bar' is something that should = be > avoided wherever possible. Would it be reasonable to treat local patches as options? That is, my = local variant of Foo-1.3_5 would still be named Foo-1.3_5.o3, but would = have the option SPIFFY_LOCAL_PATCH. I've noticed that pkg records the = build options of packages but it's not clear to me what it does with = that information (if anything; is this just there to support future = behavior that hasn't been implemented yet?).