Gentoo Archives: gentoo-soc

From: Brian Harring <ferringb@×××××.com>
To: Ciaran McCreesh <ciaran.mccreesh@××××××××××.com>
Cc: gentoo-soc@l.g.o, zmedico@g.o
Subject: Re: [gentoo-soc] Multiple Repository Support in Portage - Week 3
Date: Sat, 19 Jun 2010 22:45:55
Message-Id: 20100619224342.GL12490@hrair
In Reply to: Re: [gentoo-soc] Multiple Repository Support in Portage - Week 3 by Ciaran McCreesh
1 On Sat, Jun 19, 2010 at 10:37:30PM +0100, Ciaran McCreesh wrote:
2 > On Sat, 19 Jun 2010 13:18:21 -0700
3 > Brian Harring <ferringb@×××××.com> wrote:
4 > > From pkgcore's view, the 1st ':' is required- if there is no slot
5 > > dep, leave it empty. The second demarks the start of a repository
6 > > dep.
7 >
8 > I prefer the "always ::" form, simply because it's easier to go "if
9 > repo, then add ::repo" than it is to go "if repo, then add :repo, but
10 > also stick another : in there if we've not done a slot". What a repo
11 > dep looks like shouldn't change based upon whether there's also a slot
12 > dep there.
13
14 Arguable, but I'll convert pkgcore to the paludis syntax. Next
15 release will have it.
16
17
18 > > @, or some other char that is explicitly disallow seems a better
19 > > choice.
20 >
21 > The rationale behind -> is that it reads clearly. ::from->to reads like
22 > what it does. Experience has shown that users do need and make use of
23 > both forms (although unfortunately they're less inclined to appreciate
24 > the difference between ::installed and ::/ ), so it's best to pick
25 > something they can eventually understand.
26
27 @ carries a similar meaning however; give me
28 pkg::src_repo@target_repo . Reads a bit better imo (I want pkg from
29 src_repo that is in target_repo), and also isn't composed of valid
30 repository name chars.
31
32 Other's opinions on that one would be useful.
33
34
35 > On a semi-related note: real world experience has also shown that every
36 > time we've thought about using ::repo deps of any kind in a repository
37 > rather than a user context, it's been the wrong thing to do, and the
38 > right thing to do is almost always [feature(-)].
39
40 Block it at the repo policy level, rather than at the ebuild level-
41 you get the same end result, but leave open a door for people who
42 fall outside your usecases.
43
44 ~harring