GNU bug report logs - #28015
[PATCH] Reproducible issue for djvulibre

Previous Next

Package: guix-patches;

Reported by: "Z. Ren" <zren <at> dlut.edu.cn>

Date: Tue, 8 Aug 2017 15:30:03 UTC

Severity: normal

Tags: patch

Done: ludo <at> gnu.org (Ludovic Courtès)

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 28015 in the body.
You can then email your comments to 28015 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#28015; Package guix-patches. (Tue, 08 Aug 2017 15:30:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to "Z. Ren" <zren <at> dlut.edu.cn>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Tue, 08 Aug 2017 15:30:03 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: "Z. Ren" <zren <at> dlut.edu.cn>
To: guix-patches <at> gnu.org
Subject: [PATCH] Reproducible issue for djvulibre
Date: Tue, 8 Aug 2017 15:31:52 +0800 (GMT+08:00)
[Message part 1 (text/plain, inline)]
Hi!
While conducting a study inspired by the "reproducible builds" practice [1], we have noticed that the package djvulibre could not be built reproducibly.

After investigation, we observe that the unreproducibility is caused by "desktopfiles/Makefile.in", in which the command gzip is invoked without the "-n" argument. Consequently, timestamp is captured in the built file "share/icons/hicolor/scalable/mimetypes/djvu.svgz".

The attached patch adds the argument to the gzip command. Once applied, djvulibre could be built reproducibly.

 [1]: https://wiki.debian.org/ReproducibleBuilds
[0001-reproducible-fix-for-djvulibre.patch (application/octet-stream, attachment)]

Information forwarded to guix-patches <at> gnu.org:
bug#28015; Package guix-patches. (Tue, 22 Aug 2017 12:56:01 GMT) Full text and rfc822 format available.

Message #8 received at 28015 <at> debbugs.gnu.org (full text, mbox):

From: ludo <at> gnu.org (Ludovic Courtès)
To: "Z. Ren" <zren <at> dlut.edu.cn>
Cc: 28015 <at> debbugs.gnu.org
Subject: Re: [bug#28015] [PATCH] Reproducible issue for djvulibre
Date: Tue, 22 Aug 2017 14:55:44 +0200
"Z. Ren" <zren <at> dlut.edu.cn> skribis:

> --- a/gnu/packages/djvu.scm
> +++ b/gnu/packages/djvu.scm
> @@ -34,6 +34,13 @@
>                 (base32
>                  "0psh3zl9dj4n4r3lx25390nx34xz0bg0ql48zdskhq354ljni5p6"))))
>      (build-system gnu-build-system)
> +    (arguments
> +     `(#:phases
> +       (modify-phases %standard-phases
> +        (add-after 'unpack 'reproducible
> +         (lambda _
> +          (substitute* "desktopfiles/Makefile.in"
> +           (("gzip") "gzip -n")))))))

In the ‘core-updates’ branch, which is about to be merged, this should
be unnecessary because there’s an extra ‘reset-gzip-timestamps’ phase
that has the same effect (for files whose name ends in “.gz” or “.tgz”,
which I assume is the case?

Thanks,
Ludo’.




Information forwarded to guix-patches <at> gnu.org:
bug#28015; Package guix-patches. (Wed, 23 Aug 2017 09:49:02 GMT) Full text and rfc822 format available.

Message #11 received at 28015 <at> debbugs.gnu.org (full text, mbox):

From: "Z. Ren" <zren <at> dlut.edu.cn>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: 28015 <at> debbugs.gnu.org
Subject: Re: Re: [bug#28015] [PATCH] Reproducible issue for djvulibre
Date: Wed, 23 Aug 2017 17:48:46 +0800 (GMT+08:00)
Thanks for your kind reply. I re-check the build result. According to the output of diffoscope (see below for the snippet), the file that's different between the two builds is scalable/mimetypes/djvu.svgz. It is indeed a gzip file, though the extension is svgz. Not sure whether it could be handled automatically by the upcoming build system?

├── scalable
├── mimetypes
├── djvu.svgz
├── metadata
│ │ │ │ │ │ │ @@ -1 +1 @@
│ │ │ │ │ │ │ -gzip compressed data, last modified: Fri Mar 10 23:39:11 2017, from Unix
│ │ │ │ │ │ │ +gzip compressed data, last modified: Wed Aug 23 09:27:59 2017, from Unix

Best regards,
Ren

> -----Original Messages-----
> From: "Ludovic Courtès" <ludo <at> gnu.org>
> Sent Time: 2017-08-22 20:55:44 (Tuesday)
> To: "Z. Ren" <zren <at> dlut.edu.cn>
> Cc: 28015 <at> debbugs.gnu.org
> Subject: Re: [bug#28015] [PATCH] Reproducible issue for djvulibre
> 
> "Z. Ren" <zren <at> dlut.edu.cn> skribis:
> 
> > --- a/gnu/packages/djvu.scm
> > +++ b/gnu/packages/djvu.scm
> > @@ -34,6 +34,13 @@
> >                 (base32
> >                  "0psh3zl9dj4n4r3lx25390nx34xz0bg0ql48zdskhq354ljni5p6"))))
> >      (build-system gnu-build-system)
> > +    (arguments
> > +     `(#:phases
> > +       (modify-phases %standard-phases
> > +        (add-after 'unpack 'reproducible
> > +         (lambda _
> > +          (substitute* "desktopfiles/Makefile.in"
> > +           (("gzip") "gzip -n")))))))
> 
> In the ‘core-updates’ branch, which is about to be merged, this should
> be unnecessary because there’s an extra ‘reset-gzip-timestamps’ phase
> that has the same effect (for files whose name ends in “.gz” or “.tgz”,
> which I assume is the case?
> 
> Thanks,
> Ludo’.

Reply sent to ludo <at> gnu.org (Ludovic Courtès):
You have taken responsibility. (Fri, 01 Sep 2017 09:09:01 GMT) Full text and rfc822 format available.

Notification sent to "Z. Ren" <zren <at> dlut.edu.cn>:
bug acknowledged by developer. (Fri, 01 Sep 2017 09:09:01 GMT) Full text and rfc822 format available.

Message #16 received at 28015-done <at> debbugs.gnu.org (full text, mbox):

From: ludo <at> gnu.org (Ludovic Courtès)
To: "Z. Ren" <zren <at> dlut.edu.cn>
Cc: 28015-done <at> debbugs.gnu.org
Subject: Re: [bug#28015] Re: [bug#28015] [PATCH] Reproducible issue for
 djvulibre
Date: Fri, 01 Sep 2017 11:08:35 +0200
Hello,

"Z. Ren" <zren <at> dlut.edu.cn> skribis:

> Thanks for your kind reply. I re-check the build result. According to the output of diffoscope (see below for the snippet), the file that's different between the two builds is scalable/mimetypes/djvu.svgz. It is indeed a gzip file, though the extension is svgz. Not sure whether it could be handled automatically by the upcoming build system?
>
> ├── scalable
> ├── mimetypes
> ├── djvu.svgz
> ├── metadata
> │ │ │ │ │ │ │ @@ -1 +1 @@
> │ │ │ │ │ │ │ -gzip compressed data, last modified: Fri Mar 10 23:39:11 2017, from Unix
> │ │ │ │ │ │ │ +gzip compressed data, last modified: Wed Aug 23 09:27:59 2017, from Unix

Oh right, .svgz is not handled by the new phase.

I pushed your patch with small cosmetic changes:

  https://git.savannah.gnu.org/cgit/guix.git/commit/?id=5fe2a139dfdef058f544fc4b83742628e1fa04bc

Thanks!

Ludo’.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Fri, 29 Sep 2017 11:24:04 GMT) Full text and rfc822 format available.

This bug report was last modified 7 years and 325 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.