Hello,

Danny Milosavljevic <dan...@scratchpost.org> ezt írta (időpont: 2019. nov.
5., Ke 16:09):

> Hi Gábor,
>
> > This looks like a jar timestamps issue. Adding a phase similar to
> > strip-jar-timestamps in ant-build-system should work.
> > It extracts the jar to a temporary directory, resets file timestamps, and
> > then repacks it, and resets the timestamp on the archive.
> > Could you check if that works for you?
>
> Yes, the following works and makes it reproducible:
>
>     (arguments
>      `(#:imported-modules
>        ((guix build utils)
>         (guix build ant-build-system)
>         (guix build gremlin)
>         (guix build syscalls)
>         (guix elf)
>         (guix build gnu-build-system))
>        #:phases
>        (modify-phases %standard-phases
>          (add-after 'install 'strip-jar-timestamps
>            (assoc-ref (@ (guix build ant-build-system) %standard-phases)
>                       'strip-jar-timestamps)))))
>
That is great.

>
> But I'd prefer if our "jar" tool did that on its own if SOURCE_DATE_EPOCH
> is set--I don't think the code above is maintainable.
>
Agreed. Could you open a wishlist bug for that, so it is not forgotten.

>
> The following code does not work (doesn't find ant-build-system):
>
>     (arguments
>      `(#:modules
>        ((guix build gnu-build-system)
>         ((guix build ant-build-system) #:prefix ant:)
>         (guix build utils))
>        #:phases
>        (modify-phases %standard-phases
>          (add-after 'install 'strip-jar-timestamps
>            (assoc-ref ant:%standard-phases 'strip-jar-timestamps)))))
>
I believe this strip-jar-timestamps code should be moved to the java utils
module, so that it can be easier to reuse...

Best regards,g_bor

>

Reply via email to