[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: maven2 for Debian



Arnaud Vandyck wrote:
On 3/4/07, Manfred Moser <manfred@mosabuam.com> wrote:
On Sunday March 4 2007 09:27, Michael Koch wrote:

> I have built a preliminary Debian packages for Maven 2

[...]

This is great. I use Maven2 on a daily base as part of my job. I am
running the upstream install in Ubuntu. I am going to give this a
whirl next week.

Thanks. We need experience from users. I also use maven and I've build
a project with the package from Michael successfully.

I would also be interested in binary derived packages of all sorts of
other stuff. How hard is it to create a package like this? Are there
any instructions somewhere?

Not that hard, but not that useful in a Debian point of view.

I think as a first entry point packages like this would be awesome. At
least a lot better than no packages.

The intent of Michael is to have maven as a debian package, but there
will be a lot more job to let the package enter the Debian archive
because we need to build it (maven) from source... and build all the
dependencies from sources... this is a lot of work!

Sort of related-  another question. Couldn't we come up with some sort
of Maven assembly plugin definition that would allow deb creation
fairly easily?

There are tools to help packaging software and there are examples, see
http://pkg-java.debian.org

Also, we surely need more informations that those provided by the pom.xml

And another one ... would it make sense to get everything maven
downloads when it runs through its dependency system in some location
like /usr/share/java/maven2/repository so that it comes available for
all users? Could this be expanded to be actually used as a packaging
system?

if we patch maven, we maybe could use /usr/share/java so maven could
find the jars. We also maybe could tell maven how to find the
packages. If the package does not exist in Debian, maven should
download it from another location and put the package in another
location /var/cache/maven? /usr/local/share/maven? I don't know and it
needs to be discussed. This problem could be not acceptable for our
users because packages that maven download would not be package by
Debian developers. These packages could be non free for example.

User download: Maven can install packages in $HOME/.m2/... What will
be our decision about that? Ask for the admin password? send a mail to
root to ask him/her to install the package? install the package in
$HOME/.m2?...

To me the answer is obvious. As a user Maven should behave just like upstream Maven, meaning that it will download from the internet and install stuff under ~/.m2/repository. For a user having Maven download to ~ is just the same as the user manually downloading the jars from the project's CVS.

For the dpkg builder Maven should still behave like Maven *but* with some environmental changes it can comply with Debian's rules. If there us a repository like you're suggesting under /usr/share/java/maven2/repository and Build-Depend on the other packages they will be included and Maven won't ever go out on the internet to fetch packages.

The only problem are the existing packages but they can either be updated with symlinks under the repo or a tool to create a dummy repo under a temporary location can be used.

The only change that has to be done to the upstream sources is to add the repository reference. That way there is no need to change the Maven sources (yay), but you'll have to change the upstream pom.xml. Another option is to add the repository to the root pom but then it will be used for all builds which might not be optimal.

And a last one.. have you announced the package on the maven lists?

I'm not on the maven lists neither, but I show up sometimes on IRC. If
you want to point to the mail to the maven list, you are welcome:
http://lists.debian.org/debian-java/2007/03/msg00004.html

Maven is a very large software that need a lot of libs to build and
this is why it'll be hard to build for Debian.

The philosophy of Maven is not the same as Debian and we need to think
twice to really integrate it in Debian and how deep we want it to be
integrated (ideas welcome).

I'd like something like a maven repository maintained by Debian
Developers (all our debian-java packages installable by maven).

Maven really isn't that different from Debian and it should be fairly easy to integrate Maven into Debian's build system. I'm still around and are still offering my support to do any changes you need in the source code and can help to maintain patched upstream or downstream.

The only requirement I have from the Debian packagers is that Maven from Debian still behaves *exactly* like Maven from Apache from a users point of view. If not I will not and can not support it in any way. This is imperative to the success of packaging Maven 2 in Debian.

--
Trygve



Reply to: