From owner-freebsd-ports@freebsd.org Mon Jan 25 14:09:08 2021 Return-Path: Delivered-To: freebsd-ports@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 662264E3685 for ; Mon, 25 Jan 2021 14:09:08 +0000 (UTC) (envelope-from rcarter@pinyon.org) Received: from h2.pinyon.org (h2.pinyon.org [65.101.20.170]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4DPWv71Jh3z4Sq4 for ; Mon, 25 Jan 2021 14:09:06 +0000 (UTC) (envelope-from rcarter@pinyon.org) Received: from [10.0.10.15] (unknown [10.0.10.15]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by h2.pinyon.org (Postfix) with ESMTPSA id 229AC1B136; Mon, 25 Jan 2021 07:08:59 -0700 (MST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=pinyon.org; s=dkim; t=1611583740; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=FoOraaapxkaiQ5cbAHr7ovjDdsYxENEyfxY9rmv3Gx8=; b=S5DoW2f6KDfZ2fJGJlbsVViyfrKwZ/505phsYyAxH8+jnNXIUxWIawKiGAdk6QnkLR/+zy 3fluQX4bj6Vq42+T45Pmkw9Mm5l/kqHxNnB+fPc3Zs/rWhfUl0XupOyRwPcSVdaSExWRTd l4gr375TH5rX9AOIWngkbmgsAblM5rA= Subject: Re: poudriere merging multiple ports trees To: Guido Falsi , FreeBSD Ports ML References: <3ea16730-84a1-52ce-2251-bdd808fe5c52@pinyon.org> <4990d009-1962-62c2-3f4e-4f62fd03e26d@madpilot.net> From: "Russell L. Carter" Message-ID: Date: Mon, 25 Jan 2021 07:08:59 -0700 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:78.0) Gecko/20100101 Firefox/78.0 Thunderbird/78.6.1 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-3.00 X-Rspamd-Server: h2 X-Rspamd-Queue-Id: 4DPWv71Jh3z4Sq4 X-Spamd-Bar: --- Authentication-Results: mx1.freebsd.org; dkim=pass header.d=pinyon.org header.s=dkim header.b=S5DoW2f6; dmarc=none; spf=pass (mx1.freebsd.org: domain of rcarter@pinyon.org designates 65.101.20.170 as permitted sender) smtp.mailfrom=rcarter@pinyon.org X-Spamd-Result: default: False [-3.50 / 15.00]; RCVD_TLS_ALL(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; R_DKIM_ALLOW(-0.20)[pinyon.org:s=dkim]; MID_RHS_MATCH_FROM(0.00)[]; FROM_HAS_DN(0.00)[]; R_SPF_ALLOW(-0.20)[+mx]; NEURAL_HAM_LONG(-1.00)[-1.000]; MIME_GOOD(-0.10)[text/plain]; DMARC_NA(0.00)[pinyon.org]; ARC_NA(0.00)[]; SPAMHAUS_ZRD(0.00)[65.101.20.170:from:127.0.2.255]; TO_MATCH_ENVRCPT_SOME(0.00)[]; TO_DN_ALL(0.00)[]; DKIM_TRACE(0.00)[pinyon.org:+]; RCPT_COUNT_TWO(0.00)[2]; NEURAL_HAM_SHORT(-1.00)[-0.998]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+]; RBL_DBL_DONT_QUERY_IPS(0.00)[65.101.20.170:from]; ASN(0.00)[asn:209, ipnet:65.101.0.0/18, country:US]; RCVD_COUNT_TWO(0.00)[2]; MAILMAN_DEST(0.00)[freebsd-ports] X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 25 Jan 2021 14:09:08 -0000 On 1/25/21 12:19 AM, Guido Falsi wrote: > On 25/01/21 00:24, Russell L. Carter wrote: >> On 1/24/21 2:23 PM, Guido Falsi wrote: >>> On 24/01/21 20:35, Russell L. Carter wrote: >>>> Greetings, I am completely ignorant here and am looking for up to >>>> date advice on how to get poudriere to build and make available >>>> package sets from multiple ports trees.  I see there is a port >>>> "portshaker" that seems to do much of what I want. >>>> >>>> I can think of possible alternatives: >>>> >>>> I can reasonably expect to have my local ports not conflict with >>>> already existing ports (could be a common prefix in the name). >>>> Since I'm using git, I should be able to maintain my own branch >>>> which layers my own ports over upstream and git pull, merge from >>>> upstream. >>>> >>>> or >>>> >>>> I can duplicate the structure and metadata of the existing ports >>>> tree and add my own ports and leaves in the tree. Still have to >>>> maintain unique names.  This seems to be what portshaker does?  I >>>> am guessing that gets me a single package repo. >>>> >>>> or >>>> >>>> Have two ports trees and generate two package repos, but then >>>> dependencies would be redundantly built, I guess. >>>> >>>> What do the professionals do here? >>> >>> I've been using portshaker for this (ports-mgmt/portshaker) for this >>> for a long time. >>> >>> But when the ports tree will be migrated to git in the near future I >>>  plan to stop using portshakern and use a git repository forked from >>> the main one (and syncronized to it) with feature branches for any >>> change and some "build" branches which I checkout in poudriere and to >>> which I merge the feature branches as needed. >>> >>> Git allows for such a workflow and that should also be quite less >>> error prone. >>> >>> BTW I noticed poudriere performs shallow clones for git repos, so it >>>  should not use up a lot of disk space. >>> >> >> Yes, it seems obvious to me to use git for maintaining >> the feature branches containing my ports, and as you point out >> it makes it easy to maintain multiple feature branches >> containing different contents.  Keeping the names disjoint will >> prevent messy conflicts.  I am by no means a git expert and >> I already do this all the time for other projects. > > There already is a git mirror of the ports tree, so you could also start > doing this now. Only problem is, when the tree is converted you would > probably have a messy time migrating to the new tree, which, I guess, > will have new commit hashes, like it happened for source. > Right. I'm already on the git mirror, and I expect to have to blow it away and reclone as I had to do with source. The disruption of the history doesn't bother me as much as it does many others. Best, Russell