Subject: Re: [bug#60793] [PATCH] gnu: Add julia-cfitsio-jll.

From: Sharlatan Hellseher <[email-masked]>
Date: Mon, 16 Jan 2023 20:36:03 +0000

Hi Simon,

Thanks for your review and comments.

Yes it's a long journey to bring Julia's Astronomical projects to Guix.

Here is my plan:
https://git.sr.ht/~hellseher/ffab/tree/main/item/org/astronomy.org#L1202

cfitsio, wcs and erfa would be essential jll bindings for base Julia
packages.

I've got a question on how to group Julia packages related just to
Astronomy. gnu/packages/astronomy.scm contains python bindings to cfitsio,
wcs and erfa would I follow the same pass and add Julia packages next to
them?

Regards,
Oleg

On Mon, 16 Jan 2023, 18:36 Simon Tournier, <[email-masked]> wrote:

> Hi,
>
> On ven., 13 janv. 2023 at 22:16, Sharlatan Hellseher <
> [email-masked]> wrote:
> > * gnu/packages/julia-jll.scm (julia-cfitsio-jll): New variable.
>
> Thank for this patch.
>
> Well, out of curiosity, why is this package required?  I mean, usually
> JLL packages are binding to access from Julia to some libraries.
> Therefore, do you plan to use this package for another regular Julia
> package?
>
>
> > +  #:use-module (guix gexp)
>
> [...]
>
> > +      #~(modify-phases %standard-phases
> > +          (add-after 'link-depot 'override-binary-path
> > +            (lambda* (#:key inputs #:allow-other-keys)
>
> [...]
>
> > +                     (assoc-ref inputs "cfitsio") "\")\n"))))
>
> I do not think (guix gexp) is required here.  For instance, other
> packages just use, for instance:
>
> --8<---------------cut here---------------start------------->8---
>     (arguments
>      '(#:tests? #f ; no runtests
>        #:phases
>        (modify-phases %standard-phases
>          (add-after 'link-depot 'override-binary-path
>            (lambda* (#:key inputs #:allow-other-keys)
>              (map
>                (lambda (wrapper)
>                  (substitute* wrapper
>                    (("artifact\"FFMPEG\"")
>                     (string-append "\"" (assoc-ref inputs "ffmpeg")
> "\""))))
>                ;; There's a Julia file for each platform, override them all
>                (find-files "src/wrappers/" "\\.jl$")))))))
> --8<---------------cut here---------------end--------------->8---
>
>
> Cheers,
> simon
>