Zip-based archives store timestamps

  • Open
  • quality assurance status badge
Details
2 participants
  • Julien Lepiller
  • Miguel Ángel Arruga Vivas
Owner
unassigned
Submitted by
Miguel Ángel Arruga Vivas
Severity
normal
M
M
Miguel Ángel Arruga Vivas wrote on 5 Jan 2021 14:10
(address . bug-guix@gnu.org)
877dor34xe.fsf@gmail.com
A procedure like reset-gzip-timestamp should be useful for
reproducibility purposes, adapted to zip based archives as Smalltalk's
STAR or Java's JAR binary formats, as some or all of their contents are
generated usually at build time.

On the latest Zip specification[1], which only seem to be encumbered
regarding encryption, there is one header ID which could be used for
timestamp purposes (0x0020) but third party header IDs are allowed,
which include a "commonly used" 0x5455 timestamp.

J
J
Julien Lepiller wrote on 5 Jan 2021 16:17
A31236B2-CEEC-4E96-89B8-29CB40147E2C@lepiller.eu
For java packages, we have a strip-jar-timestamps phase in the ant-build-system.

Le 5 janvier 2021 08:10:37 GMT-05:00, "Miguel Ángel Arruga Vivas" <rosen644835@gmail.com> a écrit :
Toggle quote (11 lines)
>A procedure like reset-gzip-timestamp should be useful for
>reproducibility purposes, adapted to zip based archives as Smalltalk's
>STAR or Java's JAR binary formats, as some or all of their contents are
>generated usually at build time.
>
>On the latest Zip specification[1], which only seem to be encumbered
>regarding encryption, there is one header ID which could be used for
>timestamp purposes (0x0020) but third party header IDs are allowed,
>which include a "commonly used" 0x5455 timestamp.
>
>[1] https://pkware.cachefly.net/webdocs/APPNOTE/APPNOTE-6.3.8.TXT
Attachment: file
M
M
Miguel Ángel Arruga Vivas wrote on 6 Jan 2021 23:34
(name . Julien Lepiller)(address . julien@lepiller.eu)(address . 45675@debbugs.gnu.org)
87a6tl1yqu.fsf@gmail.com
Hi,

Julien Lepiller <julien@lepiller.eu> writes:

Toggle quote (2 lines)
> For java packages, we have a strip-jar-timestamps phase in the ant-build-system.

Thanks for the pointer. Do you think could be worth to extract that
into (guix build utils) as the attached patch (WIP) does? It rebuilds
the world and replaces all of "old usages", so I'm still waiting to
reach ant-bootstrap...

Happy hacking!
Miguel
J
J
Julien Lepiller wrote on 7 Jan 2021 00:10
(name . Miguel Ángel Arruga Vivas)(address . rosen644835@gmail.com)(address . 45675@debbugs.gnu.org)
456A5C5F-50D7-4409-A36F-56BE670F9FE1@lepiller.eu
This sounds like a good idea indeed

Le 6 janvier 2021 17:34:01 GMT-05:00, "Miguel Ángel Arruga Vivas" <rosen644835@gmail.com> a écrit :
Toggle quote (14 lines)
>Hi,
>
>Julien Lepiller <julien@lepiller.eu> writes:
>
>> For java packages, we have a strip-jar-timestamps phase in the
>ant-build-system.
>
>Thanks for the pointer. Do you think could be worth to extract that
>into (guix build utils) as the attached patch (WIP) does? It rebuilds
>the world and replaces all of "old usages", so I'm still waiting to
>reach ant-bootstrap...
>
>Happy hacking!
>Miguel
Attachment: file
?