* J�rg Schaible <[EMAIL PROTECTED]> [2004-01-28 01:57:49 +0100]:

> what should we do with Java ebuilds using Maven? The current Maven ebuild
> does not set the local repository location i.e. every user will have its
> own repository in its home directory. While this is what the Maven folks
> recommend, it is not very good for Gentoo.

No, it isn't.  Maven seems to try to solve many of the same problems as
gentoo/portage does.  Portage just does it better (IMO).

> Imagine you have to create an ebuild for a package that uses Maven. With the
> current installation, Maven would try to load all its dependencies into the
> local directory of whom? Root (suppose so)? You'll end-up with at least two
> such repositories on your disk, which is quite a waste of space (remember,
> they are never deleted). Setting MAVEN_LOCAL_HOME to a directory inside the
> build image is even worse, since Maven would download all dependencies
> every time building the package.
> 
> Therefore I would suggest to use a common repository in Gentoo somewhere
> in /var/cache/maven. We'll just have to take care for the permissions,
> since the normal user will have to write into the repository also if he is
> using Maven.

I think the Maven approach of downloading binaries into a repository is all
wrong (not for other distributions maybe, but certainly for gentoo).  If I've
gone through the trouble of creating an excellent ebuild file for building
commons-foo from scratch (maybe even with certain patches), then I'd
expect (and want) that result to be used when later emerging package
java-bar that depends on commons-foo.  Anything else rather violates the
gentoo spirit of things.

So rather than patching maven to make a central repository for it's binary
downloads, I'd like to propose fixing/changing maven to use what's
already installed by gentoo.  If this means creating a custom downloader
that copies files from /usr/share/<package>, then fine.  If it means
making maven use java-config to find it's required packages and use them
where they are, even better.  Has anyone looked into how much work this
would be?

I've seen comments from people saying that maven builds often requires
version 3.4.5.2.3.1.3 of a certain package, and that this means that
downloading that binary is the only thing that would work.  I'd say that
such a package probably shouldn't be made a stable package in the
portage three.  But even if it did, I'd prefer an ebuild for that
binary, perhaps in it's own slot, just to keep things tidy.




Eivind

-- 
Eivind Tagseth,
E-post jobb: [EMAIL PROTECTED], e-post priv: [EMAIL PROTECTED]
Mobil: +47 922 43 742

--
[EMAIL PROTECTED] mailing list

Reply via email to