Gentoo Archives: gentoo-dev

From: Patrick McLean <chutzpah@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] New Portage fork: sys-apps/portage-mgorny
Date: Fri, 23 Mar 2018 17:45:02
Message-Id: 75a38489-f567-a59c-c877-c650ed28be14@gentoo.org
In Reply to: Re: [gentoo-dev] New Portage fork: sys-apps/portage-mgorny by Rich Freeman
1 On 2018-03-23 06:27 AM, Rich Freeman wrote:
2 > On Fri, Mar 23, 2018 at 6:59 AM, Ulrich Mueller <ulm@g.o> wrote:
3 >>>>>>> On Fri, 23 Mar 2018, Roy Bamford wrote:
4 >>
5 >>> games-emulation/sdlmame is masked. I have a higher version in my
6 >>> overlay than the one in the tree and it gets masked too.
7 >>> Its not a problem to me as I know how to manage it. Its just untidy.
8 >>
9 >> You still don't need a repository specific mask for this. Version
10 >> specific masking and unmasking is entirely sufficient to express that
11 >> the higher version is fine.
12 >>
13 >
14 > It sounds to me that one of the intended behaviors is to tell portage
15 > that for a particular package we want to ignore a particular
16 > repository entirely. Suppose for example an overlay contains
17 > misc/foo-3, and the main repo introduces misc/foo-4. Perhaps we want
18 > portage to stick with foo-3 from the overlay. However, if the overlay
19 > adds foo-4, or foo-4.1 we want this installed. A version mask would
20 > not really cover this use case.
21 >
22 > IMO this sounds like a useful feature. Having it in profiles could
23 > probably also be useful in some testing scenarios, such as when making
24 > changes to a large number of packages that are already in the main
25 > tree (think something analogous to a feature branch in git, where the
26 > master branch continues to advance).>
27 > Perhaps I'm misunderstanding the intent here, but I would suggest that
28 > we describe the end goal in emails like these otherwise people focus
29 > on the implementation details first.
30 >
31
32 Having the ability to specify a repository in atoms in profile is very
33 useful to people who have large overlays and make heavy use of profiles.
34
35 At my (and zmedico's) employer we use Gentoo heavily (all of our servers
36 run it), and have a few large internal overlays and hundreds of internal
37 profiles. There are packages in upstream Gentoo that we maintain an
38 internal fork of, and it would be extremely useful if we could mask the
39 ::gentoo version of something so a version bump does not cause it to be
40 installed instead of our forked version.
41
42 To address ulm's comments, we want our internal fork to satisfy
43 dependencies in ::gentoo for the package without having to fork dozens
44 of ebuilds. Generally the forks are just for minor changes that do not
45 break dependency compatibility, but do something that we need for
46 whatever reason.
47
48 In case there are questions about why we have hundreds of profiles, we
49 use profile to define machine roles. Each internal machine type or role
50 has a profile in one of our internal repositories. This allows us to
51 manipulate USE flags, packages etc in each machine type with a fair bit
52 of fine-grained control. Adding repository support to profile atoms will
53 give us even more control, and having fine grained control over what we
54 have on our servers is the main reason we run Gentoo.

Replies

Subject Author
Re: [gentoo-dev] New Portage fork: sys-apps/portage-mgorny Thomas Deutschmann <whissi@g.o>