Gentoo Archives: gentoo-dev

From: Andrew Muraco <tuxp3@×××××××××.com>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] Multiple Repo Support
Date: Fri, 16 Dec 2005 04:55:35
Message-Id: 43A2482A.3080708@leetworks.com
In Reply to: Re: [gentoo-dev] Multiple Repo Support by Curtis Napier
1 Curtis Napier wrote:
2
3 > Ciaran McCreesh wrote:
4 >
5 >> On Thu, 15 Dec 2005 22:34:05 -0500 Andrew Muraco <tuxp3@×××××××××.com>
6 >> wrote:
7 >> | 2. What choices/options are on the table for this feature?
8 >>
9 >> The big controversy seems to be over whether repositories carry a
10 >> unique identifier string (for example, in metadata/repository_id) or
11 >> whether it's user-assigned. The former is clearly the more sensible
12 >> option, since it lets you do things like (syntax made up):
13 >>
14 >> DEPEND=">=foo-bar/baz-2.1::ciaranmssekritrepo"
15 >>
16 >> which would add a restriction that only packages in ciaranmssekritrepo
17 >> would be considered. This only works if the repository knows its own
18 >> identifier, however...
19 >>
20 >> Incidentally, the ::repo syntax (or whatever) would also be useful in
21 >> the world file, along with :slot. So something like:
22 >>
23 >> foo-bar/baz:2::ciaranmssekritrepo
24 >>
25 >> would tell the package manager that you want baz SLOT 2 from
26 >> ciaranmssekritrepo.
27 >>
28 >> *shrug* But it seems the Portage guys want repository names to be
29 >> user-assigned, which makes them far less useful.
30 >>
31 > This functionality would come in very very handy. Would user assigned
32 > repository names be able to mimic this functionality somehow?
33
34 What about giving each repo an identifier? That way repos with ebuilds
35 can have the repo_id in the ebuilds and not have to worry, repo_ids
36 would take precedence when in conflict. Identifiers would just be
37 provided for user-stuff, like ex # emerge sync MyRepo or # emerge -av
38 MyRepo://foo ? [foo being the name of a package in repo tree with the
39 identifier of MyRepo]
40
41 what about having a portage config file
42 /etc/portage/repositories:
43 priority MyRepo,gentoo
44
45 repository {
46 identifer = "gentoo"
47 rsync= "rsync://../"
48 repo_path= "/usr/portage"
49 }
50 repository {
51 identifer = "MyRepo"
52 rsync= "rsync://../"
53 repo_path= "/usr/MyRepoTree"
54 }
55
56 (an example for someone that wants to have MyRepo be prefered over
57 gentoo tree)
58
59 Just tossing out ideas,
60
61 Andrew Muraco
62
63 --
64 gentoo-dev@g.o mailing list