bug-groff
[Top][All Lists]
Advanced

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

[bug #57218] Reproducible builds support is broken and embeds timezone


From: Eli Schwartz
Subject: [bug #57218] Reproducible builds support is broken and embeds timezone
Date: Wed, 13 Nov 2019 00:58:07 -0500 (EST)
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:71.0) Gecko/20100101 Firefox/71.0

URL:
  <https://savannah.gnu.org/bugs/?57218>

                 Summary: Reproducible builds support is broken and embeds
timezone
                 Project: GNU troff
            Submitted by: eschwartz
            Submitted on: Wed 13 Nov 2019 05:58:06 AM UTC
                Category: Core
                Severity: 3 - Normal
              Item Group: None
                  Status: None
                 Privacy: Public
             Assigned to: None
             Open/Closed: Open
         Discussion Lock: Any
         Planned Release: None

    _______________________________________________________

Details:

Reproducible builds support was initially implemented via
https://git.savannah.gnu.org/cgit/groff.git/commit/?id=e4290210f2c1db5292d97678197a986d6822d044

See discussion here:
https://lists.gnu.org/archive/html/groff/2014-08/msg00112.html
https://lists.gnu.org/archive/html/groff/2015-11/msg00013.html

However, the implementation falls short of true reproducibility. I've been
attempting to reproduce Arch Linux's "man-db" package, and discovered that
/usr/share/doc/man-db/man-db-manual.ps is not reproducible, with this
differing content:

│ ├── usr/share/doc/man-db/man-db-manual.ps
│ │ @@ -1,10 +1,10 @@
│ │  %!PS-Adobe-3.0
│ │  %%Creator: groff version 1.22.4
│ │ -%%CreationDate: Wed Oct 23 21:52:35 2019
│ │ +%%CreationDate: Wed Oct 23 15:52:35 2019
│ │  %%DocumentNeededResources: font Times-Bold
│ │  %%+ font Times-Italic
│ │  %%+ font Times-Roman
│ │  %%+ font Symbol
│ │  %%DocumentSuppliedResources: procset grops 1.22 4
│ │  %%Pages: 26
│ │  %%PageOrder: Ascend

Note the CreationDate. I'm building the software using an exported
SOURCE_DATE_EPOCH=1571860355

It is successfully built in the past, but on the other hand, it does not
include a timezone, it is not in UTC time, and my timezone, -0500, is being
embedded here:

$ date -R -d @1571860355 
Wed, 23 Oct 2019 15:52:35 -0400

What I'd expect to see embedded:

$ TZ=UTC date -R -d @1571860355
Wed, 23 Oct 2019 19:52:35 +0000

And the person who built the initial upload of the software:

$ TZ=CET date -R -d @1571860355
Wed, 23 Oct 2019 21:52:35 +0200

In order to properly support reproducible builds, I believe the localtime
should not be used, and times must be converted to UTC time.




    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?57218>

_______________________________________________
  Message sent via Savannah
  https://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]