[Fwd: [PATCH] fvwm reproducible]

  • Done
  • quality assurance status badge
Details
2 participants
  • Ludovic Courtès
  • Nils Gillmann
Owner
unassigned
Submitted by
Nils Gillmann
Severity
normal

Debbugs page

Nils Gillmann wrote 6 years ago
(address . guix-patches@gnu.org)
20180928150019.zzlsb5gieyu2pywg@abyayala
Attachment: file
Nils Gillmann wrote 6 years ago
(address . 32861@debbugs.gnu.org)
20180928151419.fd5hxc7sv4nqwo23@abyayala
Attachment: file
From 90e0ab0a5d5eae066f670723cd4c20f113e664be Mon Sep 17 00:00:00 2001
From: Nils Gillmann <gillmann@infotropique.org>
Date: Mon, 17 Sep 2018 23:23:46 +0000
Subject: [PATCH] Remove compile time __DATE__ and __TIME__ variables from the
source.

Commentary: it looks like upstream rejected the request for inclusion in
Irritating, but we have tried.
This patch has been taken from a similar (but not applying as-is) patch
by robert@openbsd for openbsd's Xenocara FVWM version.

Signed-off-by: Nils Gillmann <gillmann@infotropique.org>
---
fvwm/fvwm.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (17 lines)
diff --git a/fvwm/fvwm.c b/fvwm/fvwm.c
index f5317f2..3e0f183 100644
--- a/fvwm/fvwm.c
+++ b/fvwm/fvwm.c
@@ -1286,8 +1286,8 @@ static void setVersionInfo(void)
int support_len;
/* Set version information string */
- sprintf(version_str, "fvwm %s%s compiled on %s at %s",
- VERSION, VERSIONINFO, __DATE__, __TIME__);
+ sprintf(version_str, "fvwm %s%s\n",
+ VERSION, VERSIONINFO);
Fvwm_VersionInfo = safestrdup(version_str);
sprintf(license_str,
--
2.19.0
From 6980b10ff3870ee87d836858583154b952f7c229 Mon Sep 17 00:00:00 2001
From: Nils Gillmann <ng0@n0.is>
Date: Sun, 23 Sep 2018 17:57:55 +0000
Subject: [PATCH] gnu: fvwm: Add patch to build it reproducible.

* gnu/packages/fvwm.scm (fvwm)[source]: Add patch.
* gnu/packages/patches/fvwm-2.6.8-remove-all-compile-timestamps.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register patch.

Signed-off-by: Nils Gillmann <ng0@n0.is>
---
gnu/local.mk | 1 +
gnu/packages/fvwm.scm | 4 ++-
...-2.6.8-remove-all-compile-timestamps.patch | 35 +++++++++++++++++++
3 files changed, 39 insertions(+), 1 deletion(-)
create mode 100644 gnu/packages/patches/fvwm-2.6.8-remove-all-compile-timestamps.patch

Toggle diff (77 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index fe2b573dd..18002080a 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -693,6 +693,7 @@ dist_patch_DATA = \
%D%/packages/patches/freeimage-unbundle.patch \
%D%/packages/patches/freetype-CVE-2018-6942.patch \
%D%/packages/patches/fuse-overlapping-headers.patch \
+ %D%/packages/patches/fvwm-2.6.8-remove-all-compile-timestamps.patch \
%D%/packages/patches/gawk-shell.patch \
%D%/packages/patches/gcc-arm-bug-71399.patch \
%D%/packages/patches/gcc-arm-link-spec-fix.patch \
diff --git a/gnu/packages/fvwm.scm b/gnu/packages/fvwm.scm
index 386edba59..c2a5010c8 100644
--- a/gnu/packages/fvwm.scm
+++ b/gnu/packages/fvwm.scm
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
+;;; Copyright © 2017, 2018 Nils Gillmann <ng0@n0.is>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -41,6 +41,8 @@
(uri (string-append
"https://github.com/fvwmorg/fvwm/releases/download/"
version "/" name "-" version ".tar.gz"))
+ (patches
+ (search-patch "fvwm-2.6.8-remove-all-compile-timestamps"))
(sha256
(base32
"0hgkkdzcqjnaabvv9cnh0bz90nnjskbhjg9qnzpi2x0mbliwjdpv"))))
diff --git a/gnu/packages/patches/fvwm-2.6.8-remove-all-compile-timestamps.patch b/gnu/packages/patches/fvwm-2.6.8-remove-all-compile-timestamps.patch
new file mode 100644
index 000000000..a1f3189db
--- /dev/null
+++ b/gnu/packages/patches/fvwm-2.6.8-remove-all-compile-timestamps.patch
@@ -0,0 +1,35 @@
+From 90e0ab0a5d5eae066f670723cd4c20f113e664be Mon Sep 17 00:00:00 2001
+From: Nils Gillmann <gillmann@infotropique.org>
+Date: Mon, 17 Sep 2018 23:23:46 +0000
+Subject: [PATCH] Remove compile time __DATE__ and __TIME__ variables from the
+ source.
+
+Commentary: it looks like upstream rejected the request for inclusion in
+https://github.com/fvwmorg/fvwm/issues/67 and focuses on fvwm3 fixes.
+Irritating, but we have tried.
+This patch has been taken from a similar (but not applying as-is) patch
+by robert@openbsd for openbsd's Xenocara FVWM version.
+
+Signed-off-by: Nils Gillmann <gillmann@infotropique.org>
+---
+ fvwm/fvwm.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/fvwm/fvwm.c b/fvwm/fvwm.c
+index f5317f2..3e0f183 100644
+--- a/fvwm/fvwm.c
++++ b/fvwm/fvwm.c
+@@ -1286,8 +1286,8 @@ static void setVersionInfo(void)
+ int support_len;
+
+ /* Set version information string */
+- sprintf(version_str, "fvwm %s%s compiled on %s at %s",
+- VERSION, VERSIONINFO, __DATE__, __TIME__);
++ sprintf(version_str, "fvwm %s%s\n",
++ VERSION, VERSIONINFO);
+ Fvwm_VersionInfo = safestrdup(version_str);
+
+ sprintf(license_str,
+--
+2.19.0
+
--
2.19.0
Ludovic Courtès wrote 6 years ago
(name . Nils Gillmann)(address . ng0@n0.is)(address . 32861@debbugs.gnu.org)
87y3blz5gr.fsf@gnu.org
Hi Nils,

Nils Gillmann <ng0@n0.is> skribis:

Toggle quote (6 lines)
> +From 90e0ab0a5d5eae066f670723cd4c20f113e664be Mon Sep 17 00:00:00 2001
> +From: Nils Gillmann <gillmann@infotropique.org>
> +Date: Mon, 17 Sep 2018 23:23:46 +0000
> +Subject: [PATCH] Remove compile time __DATE__ and __TIME__ variables from the
> + source.

I’ve just tried “guix build fvwm --no-grafts --check”, which suggests
everything is fine.

Indeed, our GCC packages include SOURCE_DATE_EPOCH patches, which take
care of __DATE__ and __TIME__.

Can you confirm that fvwm is bit-reproducible for you without this
patch?

Thank you,
Ludo’.
Nils Gillmann wrote 6 years ago
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 32861-done@debbugs.gnu.org)(name . Nils Gillmann)(address . ng0@n0.is)
20180928215454.l3xdlbysjoyezgis@abyayala
Ludovic Courtès transcribed 629 bytes:
Toggle quote (16 lines)
> Hi Nils,
>
> Nils Gillmann <ng0@n0.is> skribis:
>
> > +From 90e0ab0a5d5eae066f670723cd4c20f113e664be Mon Sep 17 00:00:00 2001
> > +From: Nils Gillmann <gillmann@infotropique.org>
> > +Date: Mon, 17 Sep 2018 23:23:46 +0000
> > +Subject: [PATCH] Remove compile time __DATE__ and __TIME__ variables from the
> > + source.
>
> I’ve just tried “guix build fvwm --no-grafts --check”, which suggests
> everything is fine.
>
> Indeed, our GCC packages include SOURCE_DATE_EPOCH patches, which take
> care of __DATE__ and __TIME__.

So with this GCC 'SOURCE_DATE_EPOCH' all __DATE__ and __TIME__ should
be treated as per SOURCE_DATE_EPOCH specification. I did forget this
I think.

/gnu/store/jdlznqp43zyavbmm9kj5hcsrqrcxj6sr-fvwm-2.6.8/bin/fvwm -V
fvwm 2.6.8 compiled on Jan 1 1970 at 00:00:01

Where I assumed the patch was needed, it is not.

Toggle quote (3 lines)
> Can you confirm that fvwm is bit-reproducible for you without this
> patch?

Yes, it is.

Toggle quote (2 lines)
> Thank you,
> Ludo’.
Closed
?
Your comment

This issue is archived.

To comment on this conversation send an email to 32861@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 32861
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch
You may also tag this issue. See list of standard tags. For example, to set the confirmed and easy tags
mumi command -t +confirmed -t +easy
Or, remove the moreinfo tag and set the help tag
mumi command -t -moreinfo -t +help