Gentoo Archives: gentoo-dev

From: "Michał Górny" <mgorny@g.o>
To: Ian Stakenvicius <axs@g.o>
Cc: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] [RFC] New GLEP: file installation masks
Date: Fri, 20 May 2016 21:11:33
Message-Id: 20160520231117.390bd81e.mgorny@gentoo.org
In Reply to: Re: [gentoo-dev] [RFC] New GLEP: file installation masks by Ian Stakenvicius
1 On Fri, 20 May 2016 16:00:38 -0400
2 Ian Stakenvicius <axs@g.o> wrote:
3
4 > On 20/05/16 11:49 AM, Michał Górny wrote:
5 > > On Fri, 20 May 2016 11:40:39 -0400
6 > > Michael Orlitzky <mjo@g.o> wrote:
7 > >
8 > >> On 05/20/2016 11:34 AM, Daniel Campbell wrote:
9 > >>>
10 > >>> ...and the user has this in their install.mask file:
11 > >>>
12 > >>> [bash-completion]
13 > >>> path=/some/other/path
14 > >>> desc=some other description
15 > >>>
16 > >>
17 > >> I don't think that's allowed; the groups are specified by each
18 > >> repository's metadata/install-mask.conf, not by the users.
19 > >>
20 > >> Although, you can ask the same question about overlays that have
21 > >> group-name clashes. Is that an error, or would we use the one from the
22 > >> overlay?
23 > >
24 > > Oh, you are correct. Originally I planned to handle that, and I forgot
25 > > about it.
26 > >
27 > > Since there can be multiple paths, we have two options: either
28 > > override, or amend like systemd does with *.d files. I think the former
29 > > would be less surprising.
30 > >
31 > > Override is simple -- entry from next file overrides previous,
32 > > and discards all data.
33 > >
34 > > Amending is harder. Description from next file overrides former, but
35 > > paths are appended. But there is special 'path=' (empty) that discards
36 > > all previous values and starts over. I don't think that's really a good
37 > > idea for repos.
38 >
39 >
40 > I'd vote override, simply because it would match the same behaviour
41 > seen with eclasses and we could leverage the same 'masters =' in
42 > repos.conf to manage order when dealing with multiple repos.
43
44 I thought about this more and decided we can't accept collisions
45 at all, since INSTALL_MASK is defined globally and not per ebuild. We
46 don't want the same mask to mean different things in different
47 repositories after all, do we? ;-)
48
49 --
50 Best regards,
51 Michał Górny
52 <http://dev.gentoo.org/~mgorny/>