public inbox for gentoo-dev@lists.gentoo.org
 help / color / mirror / Atom feed
From: Patrick McLean <chutzpah@gentoo.org>
To: gentoo-dev@lists.gentoo.org
Subject: Re: [gentoo-dev] New Portage fork: sys-apps/portage-mgorny
Date: Fri, 23 Mar 2018 10:44:52 -0700	[thread overview]
Message-ID: <75a38489-f567-a59c-c877-c650ed28be14@gentoo.org> (raw)
In-Reply-To: <CAGfcS_mYUaNbyi3B3xsG=YFnbM2t31vNHgGkQ1rP_kcNE5VheA@mail.gmail.com>

On 2018-03-23 06:27 AM, Rich Freeman wrote:
> On Fri, Mar 23, 2018 at 6:59 AM, Ulrich Mueller <ulm@gentoo.org> wrote:
>>>>>>> On Fri, 23 Mar 2018, Roy Bamford wrote:
>>
>>> games-emulation/sdlmame is masked. I have a higher version in my
>>> overlay than the one in the tree and it gets masked too.
>>> Its not a problem to me as I know how to manage it.  Its just untidy.
>>
>> You still don't need a repository specific mask for this. Version
>> specific masking and unmasking is entirely sufficient to express that
>> the higher version is fine.
>>
> 
> It sounds to me that one of the intended behaviors is to tell portage
> that for a particular package we want to ignore a particular
> repository entirely.  Suppose for example an overlay contains
> misc/foo-3, and the main repo introduces misc/foo-4.  Perhaps we want
> portage to stick with foo-3 from the overlay.  However, if the overlay
> adds foo-4, or foo-4.1 we want this installed.  A version mask would
> not really cover this use case.
> 
> IMO this sounds like a useful feature.  Having it in profiles could
> probably also be useful in some testing scenarios, such as when making
> changes to a large number of packages that are already in the main
> tree (think something analogous to a feature branch in git, where the
> master branch continues to advance).>
> Perhaps I'm misunderstanding the intent here, but I would suggest that
> we describe the end goal in emails like these otherwise people focus
> on the implementation details first.
> 

Having the ability to specify a repository in atoms in profile is very
useful to people who have large overlays and make heavy use of profiles.

At my (and zmedico's) employer we use Gentoo heavily (all of our servers
run it), and have a few large internal overlays and hundreds of internal
profiles. There are packages in upstream Gentoo that we maintain an
internal fork of, and it would be extremely useful if we could mask the
::gentoo version of something so a version bump does not cause it to be
installed instead of our forked version.

To address ulm's comments, we want our internal fork to satisfy
dependencies in ::gentoo for the package without having to fork dozens
of ebuilds. Generally the forks are just for minor changes that do not
break dependency compatibility, but do something that we need for
whatever reason.

In case there are questions about why we have hundreds of profiles, we
use profile to define machine roles. Each internal machine type or role
has a profile in one of our internal repositories. This allows us to
manipulate USE flags, packages etc in each machine type with a fair bit
of fine-grained control. Adding repository support to profile atoms will
give us even more control, and having fine grained control over what we
have on our servers is the main reason we run Gentoo.


  parent reply	other threads:[~2018-03-23 17:45 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-03-22 19:03 [gentoo-dev] New Portage fork: sys-apps/portage-mgorny Michał Górny
2018-03-22 20:17 ` James Le Cuirot
2018-03-22 20:27   ` Michał Górny
2018-03-22 20:31   ` Zac Medico
2018-03-23  1:01   ` Herb Miller Jr.
2018-03-23  8:28     ` Michał Górny
2018-03-22 21:47 ` Consus
2018-03-22 22:06   ` Michał Górny
2018-03-22 22:52     ` Geaaru
2018-03-22 23:22       ` Zac Medico
2018-03-23  8:31       ` Michał Górny
2018-03-23  9:48       ` Ulrich Mueller
2018-03-23 10:18         ` Francesco Riosa
2018-03-23 10:38           ` Franz Fellner
2018-03-23 10:53           ` Ulrich Mueller
2018-03-24  7:02             ` Kent Fredric
2018-03-24  8:02               ` Michał Górny
2018-03-24  9:01                 ` Kent Fredric
2018-03-24 12:54                   ` Rich Freeman
2018-03-24 18:27                   ` Zac Medico
2018-03-24 20:33                     ` Kent Fredric
2018-03-24 20:44                       ` Zac Medico
2018-03-25  2:26                         ` Kent Fredric
2018-03-25  4:43                           ` Zac Medico
2018-03-25  9:02                             ` Kent Fredric
2018-03-26  7:48                               ` Zac Medico
2018-03-23 10:38         ` Roy Bamford
2018-03-23 10:59           ` Ulrich Mueller
2018-03-23 13:27             ` Rich Freeman
2018-03-23 14:25               ` Arve Barsnes
2018-03-23 16:20                 ` Geaaru
2018-03-23 16:23                 ` Patrick Steinhardt
2018-03-23 20:16                   ` Georgy Yakovlev
2018-03-23 17:44               ` Patrick McLean [this message]
2018-03-26 16:48                 ` Thomas Deutschmann
2018-03-26 18:36                   ` Zac Medico
2018-03-25 10:13       ` Vadim A. Misbakh-Soloviov
2018-03-28  4:42         ` [gentoo-dev] " Duncan
2018-03-23 11:25     ` [gentoo-dev] " Consus
2018-05-19 15:53 ` Consus
2018-05-22 20:35   ` Michał Górny
2018-05-28  2:45     ` Richard Yao

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=75a38489-f567-a59c-c877-c650ed28be14@gentoo.org \
    --to=chutzpah@gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox