Gentoo Archives: gentoo-dev

From: "Jorge Manuel B. S. Vicetto" <jmbsvicetto@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] QA Overlay Layout support.
Date: Sun, 01 Mar 2009 23:02:05
Message-Id: 49AB13DD.80108@gentoo.org
In Reply to: [gentoo-dev] QA Overlay Layout support. by Alistair Bush
1 -----BEGIN PGP SIGNED MESSAGE-----
2 Hash: SHA1
3
4 Alistair Bush wrote:
5 > Here is an issue that is currently being faced by the java project that
6 > I would like to bring to the attention of everyone. I have already
7 > discussed this will devs from all pm's.
8 >
9 > Intro:
10 >
11 > Within the java project we have 2 overlays. java-overlay and
12 > java-experimental. java-overlay is mean't to be a "stable" overlay, is
13 > available through layman while java-experimental is the opposite. We
14 > attempt to not add packages to gentoo unless they are a dependency or an
15 > application to help with maintainability. We allow newbies access to
16 > java-experimental and there are a number of packages that are difficult
17 > to support so are still very much experimental.
18
19 Sorry for taking so long to reply to the mail.
20 The KDE team had followed the Java example, but has since been forced to
21 merge the 2 overlays together, exactly because of the issues discussed
22 in this mail.
23
24 > The way we are currently using the overlays results in a hierachy of
25 > gentoo > java-overlay > java-experimental. Where
26 > packages/eclasses/profiles can be inherited from the previous repository.
27 >
28 > Problem:
29 >
30 > Repoman currently only checks the current repository/overlay and gentoo.
31 > This is a problem for java-experimental.
32
33 Agreed.
34
35 > These are the following problems:-
36 >
37 > 1) repoman does not find eclasses used to by java-experimental ebuilds
38 > that are located in java-overlay. see [1] for error. Maintaining the
39 > eclass in multiple locations _is not a solution_.(zmedico is expecting
40 > to add repository support at some point with support for specifying
41 > ECLASSDIRS. So this issue may be resolved).
42 >
43 > 2) repoman does not find packages used to by java-experimental ebuilds
44 > that are located in java-overlay.
45 >
46 > Now this might be a result of the package not existing within gentoo or
47 > as a result of a particular version/slot being available within
48 > java-overlay. Now zmedico suggested that the use of repository deps (
49 > aka ::java-overlay ) could be the solution. I would rather this not be
50 > the solution as packages shouldn't need to be edited to more them
51 > between overlays. Also the dependency specified could be moved into gentoo.
52
53 Repository deps would be very helpful. They could be used to "link"
54 packages in an overlay to packages in another overlay.
55
56 > Possible Solution:
57 >
58 > Now im going to shoot myself in the foot here by mentioning the
59 > unmentionable.
60 >
61 > ( -->> ) paludis ( <<-- ) currently has support for specifying an
62 > overlays parent(s) (master_repository) within an overlays
63 > metadata/layout.conf file. Now i'm not suggesting that paludis's
64 > implementation is the correct one, but I believe the concept is solid.
65 > By specifying an overlays parent repositories would allow (at least):
66 >
67 > 1) emerge to error if that repository/overlay is not configured.; and
68 > 2) repoman to locate packages by checking the current overlay, gentoo as
69 > well as the parents specified within an "overlay metadata file"
70 >
71 > Possible Solution:
72 >
73 > Merging java-overlay and java-experimental. From my perspective this
74 > isn't a good one as we loss most of the benefits of java-experimental.
75
76 I agree, but that's what we (KDE) were forced to do.
77
78 > Discussion:
79 >
80 > Do you support the "overlay metadata file" concept?
81 > Are there any other possible solutions?
82 > Is there anything stopping this from being implemented? another EAPI?
83 > profile EAPI?
84 > Is there anything else that would benefit from an "overlay metadata
85 > file"? Default conf variables e.g ECLASSDIRS.
86 > Any other comments?
87 >
88 >
89 > Thanks
90 > ali_bush
91 >
92 > Alistair Bush
93 > Gentoo Linux Developer
94 >
95 > [1]
96 > * ERROR: dev-java/commons-jelly-tags-util-1.0 failed.
97 >
98 > * Call stack:
99 >
100 > * ebuild.sh, line 1881: Called source
101 > '/home/alistair/gentoo/overlays/java-experimental/dev-java/commons-jelly-tags-util/commons-jelly-tags-util-1.0.ebuild'
102 >
103 >
104 > * commons-jelly-tags-util-1.0.ebuild, line 7: Called inherit
105 > 'commons-jelly-tags-2'
106 >
107 > * ebuild.sh, line 1238: Called qa_source
108 > '/home/alistair/gentoo/overlays/java-experimental/eclass/commons-jelly-tags-2.eclass'
109 >
110 >
111 > * ebuild.sh, line 37: Called source
112 > '/home/alistair/gentoo/overlays/java-experimental/eclass/commons-jelly-tags-2.eclass'
113 >
114 >
115 > * commons-jelly-tags-2.eclass, line 30: Called inherit
116 > 'java-pkg-2' 'java-ant-2' 'java-maven-2'
117 >
118 > * ebuild.sh, line 1215: Called die
119 >
120 > * The specific snippet of code:
121 >
122 > * [ ! -e "$location" ] && die "${1}.eclass could not be
123 > found by inherit()"
124 > * The die message:
125 >
126 > * java-maven-2.eclass could not be found by inherit()
127 >
128 > *
129 >
130 > * If you need support, post the topmost build error, and the call stack
131 > if relevant.
132 > * This ebuild used the following eclasses from overlays:
133 >
134 > *
135 > /home/alistair/gentoo/overlays/java-experimental/eclass/commons-jelly-tags-2.eclass
136 >
137 > *
138 > /home/alistair/gentoo/overlays/java-experimental/eclass/java-pkg-2.eclass
139 >
140 > *
141 > /home/alistair/gentoo/overlays/java-experimental/eclass/java-utils-2.eclass
142 >
143 > * This ebuild is from an overlay:
144 > '/home/alistair/gentoo/overlays/java-experimental/'
145 >
146 > [2]
147 > dev-java/glazedlists/glazedlists-1.7.0-r2.ebuild:
148 > ~amd64(default/linux/amd64/2008.0/server) ['dev-java/swingx']
149 >
150 > dev-java/swingx is located in java-overlay.
151 >
152
153 - --
154 Regards,
155
156 Jorge Vicetto (jmbsvicetto) - jmbsvicetto at gentoo dot org
157 Gentoo- forums / Userrel / Devrel / SPARC / KDE
158 -----BEGIN PGP SIGNATURE-----
159 Version: GnuPG v2.0.10 (GNU/Linux)
160 Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
161
162 iEYEARECAAYFAkmrE9wACgkQcAWygvVEyAIasQCdHKcpiwj1yXJvAp58Jn2he5pG
163 7acAoJyx8H2gDEC+kBuwVfecjCQBwJfL
164 =7OBb
165 -----END PGP SIGNATURE-----