* [gentoo-dev] QA Overlay Layout support.
@ 2009-01-24 22:59 99% Alistair Bush
0 siblings, 0 replies; 1+ results
From: Alistair Bush @ 2009-01-24 22:59 UTC (permalink / raw
To: gentoo-dev
Here is an issue that is currently being faced by the java project that
I would like to bring to the attention of everyone. I have already
discussed this will devs from all pm's.
Intro:
Within the java project we have 2 overlays. java-overlay and
java-experimental. java-overlay is mean't to be a "stable" overlay, is
available through layman while java-experimental is the opposite. We
attempt to not add packages to gentoo unless they are a dependency or an
application to help with maintainability. We allow newbies access to
java-experimental and there are a number of packages that are difficult
to support so are still very much experimental.
The way we are currently using the overlays results in a hierachy of
gentoo > java-overlay > java-experimental. Where
packages/eclasses/profiles can be inherited from the previous repository.
Problem:
Repoman currently only checks the current repository/overlay and gentoo.
This is a problem for java-experimental.
These are the following problems:-
1) repoman does not find eclasses used to by java-experimental ebuilds
that are located in java-overlay. see [1] for error. Maintaining the
eclass in multiple locations _is not a solution_.(zmedico is expecting
to add repository support at some point with support for specifying
ECLASSDIRS. So this issue may be resolved).
2) repoman does not find packages used to by java-experimental ebuilds
that are located in java-overlay.
Now this might be a result of the package not existing within gentoo or
as a result of a particular version/slot being available within
java-overlay. Now zmedico suggested that the use of repository deps (
aka ::java-overlay ) could be the solution. I would rather this not be
the solution as packages shouldn't need to be edited to more them
between overlays. Also the dependency specified could be moved into gentoo.
Possible Solution:
Now im going to shoot myself in the foot here by mentioning the
unmentionable.
( -->> ) paludis ( <<-- ) currently has support for specifying an
overlays parent(s) (master_repository) within an overlays
metadata/layout.conf file. Now i'm not suggesting that paludis's
implementation is the correct one, but I believe the concept is solid.
By specifying an overlays parent repositories would allow (at least):
1) emerge to error if that repository/overlay is not configured.; and
2) repoman to locate packages by checking the current overlay, gentoo as
well as the parents specified within an "overlay metadata file"
Possible Solution:
Merging java-overlay and java-experimental. From my perspective this
isn't a good one as we loss most of the benefits of java-experimental.
Discussion:
Do you support the "overlay metadata file" concept?
Are there any other possible solutions?
Is there anything stopping this from being implemented? another EAPI?
profile EAPI?
Is there anything else that would benefit from an "overlay metadata
file"? Default conf variables e.g ECLASSDIRS.
Any other comments?
Thanks
ali_bush
Alistair Bush
Gentoo Linux Developer
[1]
* ERROR: dev-java/commons-jelly-tags-util-1.0 failed.
* Call stack:
* ebuild.sh, line 1881: Called source
'/home/alistair/gentoo/overlays/java-experimental/dev-java/commons-jelly-tags-util/commons-jelly-tags-util-1.0.ebuild'
* commons-jelly-tags-util-1.0.ebuild, line 7: Called inherit
'commons-jelly-tags-2'
* ebuild.sh, line 1238: Called qa_source
'/home/alistair/gentoo/overlays/java-experimental/eclass/commons-jelly-tags-2.eclass'
* ebuild.sh, line 37: Called source
'/home/alistair/gentoo/overlays/java-experimental/eclass/commons-jelly-tags-2.eclass'
* commons-jelly-tags-2.eclass, line 30: Called inherit
'java-pkg-2' 'java-ant-2' 'java-maven-2'
* ebuild.sh, line 1215: Called die
* The specific snippet of code:
* [ ! -e "$location" ] && die "${1}.eclass could not be
found by inherit()"
* The die message:
* java-maven-2.eclass could not be found by inherit()
*
* If you need support, post the topmost build error, and the call stack
if relevant.
* This ebuild used the following eclasses from overlays:
*
/home/alistair/gentoo/overlays/java-experimental/eclass/commons-jelly-tags-2.eclass
*
/home/alistair/gentoo/overlays/java-experimental/eclass/java-pkg-2.eclass
*
/home/alistair/gentoo/overlays/java-experimental/eclass/java-utils-2.eclass
* This ebuild is from an overlay:
'/home/alistair/gentoo/overlays/java-experimental/'
[2]
dev-java/glazedlists/glazedlists-1.7.0-r2.ebuild:
~amd64(default/linux/amd64/2008.0/server) ['dev-java/swingx']
dev-java/swingx is located in java-overlay.
^ permalink raw reply [relevance 99%]
Results 1-1 of 1 | reverse | options above
-- pct% links below jump to the message on this page, permalinks otherwise --
2009-01-24 22:59 99% [gentoo-dev] QA Overlay Layout support Alistair Bush
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox