unofficial mirror of help-guix@gnu.org 
 help / color / mirror / Atom feed
From: Julien Lepiller <julien@lepiller.eu>
To: Bruno Victal <mirai@makinata.eu>
Cc: bjoern.hoefling@bjoernhoefling.de, help-guix <help-guix@gnu.org>
Subject: Re: Guidance for packaging Java programs
Date: Thu, 13 Jul 2023 22:19:33 +0200	[thread overview]
Message-ID: <BB9EB349-C00F-4957-B959-E3AB63B90639@lepiller.eu> (raw)
In-Reply-To: <f9daf63f-7fba-248b-dedb-9ea99bc6a357@makinata.eu>



Le 13 juillet 2023 21:35:37 GMT+02:00, Bruno Victal <mirai@makinata.eu> a écrit :
>Hi Julien,
>
>On 2023-07-13 18:48, Julien Lepiller wrote:
>> I've never seen anything like saxon-he sources. It looks like a bunch of zip files that contain java files with no build system. The ant-build-system might be able to build that, though no idea how much dependencies there could be.
>
>It looks like the Saxon-HE sources are actually “generated” from this repository:
><https://saxonica.plan.io/projects/saxonmirrorhe/repository>

I see. We have two problems it seems: it uses gradle, for which there's no build system, and it also requires an older version of itself for some preprocessing. Might get tricky…

>
>> If you feel like helping, maybe an importer would be a good first step :). You should be able to get info from Maven Central (get the pom files, they are XML files and we have a module somewhere to handle them (guix build maven pom) I think). It should work for maven and gradle packages at least. Mapping maven name to guix names might also be challenging, but we can solve with an upstream-name property.[…]
>
>> To summarize, the main pain points are: lots of dependencies that can quickly go out of hand, source buildability is not great, as many ship their own versions of their dependencies (we need to snippet pre-built jars away, and find a workaround when the build fails to find them), and bootstrappability, as there can be quite a lot of dependency circles.
>
>I wonder if this is doable for the java uninitiated.
>(Why bother with Java when you can write in Guile? :D)
>An importer first would certainly be a step in the right direction, yes.
>(handcrafting package definitions for dependencies and dependencies of
>said dependencies is no fun)

Well, I don't write a lot of Java either :)


  reply	other threads:[~2023-07-13 20:20 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-07-13 17:00 Guidance for packaging Java programs Bruno Victal
2023-07-13 17:48 ` Julien Lepiller
2023-07-13 19:35   ` Bruno Victal
2023-07-13 20:19     ` Julien Lepiller [this message]
2023-07-14  5:32       ` Dr. Arne Babenhauserheide
2023-07-28  2:09   ` Bruno Victal
2023-07-28  5:07     ` Julien Lepiller

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=BB9EB349-C00F-4957-B959-E3AB63B90639@lepiller.eu \
    --to=julien@lepiller.eu \
    --cc=bjoern.hoefling@bjoernhoefling.de \
    --cc=help-guix@gnu.org \
    --cc=mirai@makinata.eu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).