Subject: [bug#32861] [Fwd: [PATCH] fvwm reproducible]

From: Nils Gillmann <[email-masked]>
Date: Fri, 28 Sep 2018 15:14:19 +0000

Nils Gillmann transcribed 6.0K bytes:
> Hi,
> 
> I can send the patches again if they get swallowed by
> this forwarding. It is probably better to send them
> to guix-patches then guix-devel these days it seems.

Patches attached in this email.

> 
> ----- Forwarded message -----
> 
> > Hi,
> > 
> > appended is a patch I use on my side to build fvwm reproducible.
> > It is an adjusted version taken from Xenocara (OpenBSD's X11 tree)
> > recently commited. Upstream did like the idea but I guess from
> > their reply that they focus on fvwm3 instead:
> >   https://github.com/fvwmorg/fvwm/issues/67
> > 
> > Take it or leave it as it is, I don't have the time right now
> > for QA. Patch attached alone + guix tree applying patch.
> > 
> > *DISCLAIMER*
> > I have build this package in my trees, so I know the patch itself
> > works.  Due to some issue with correctly building guix in my old
> > checkout of it, I can not verify quickly if the guix tree patch I
> > created builds. Important date upcoming, feel free to fix and add
> > yourself as Co-Author if it doesn't apply.
> > 
> > 
> > Happy hacking.
> 
> > From 6980b10ff3870ee87d836858583154b952f7c229 Mon Sep 17 00:00:00 2001
> > From: Nils Gillmann <[email-masked]>
> > 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 <[email-masked]>
> > ---
> >  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
> > 
> > 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 <[email-masked]>
> >  ;;; Copyright © 2016 Efraim Flashner <[email-masked]>
> > -;;; Copyright © 2017 Nils Gillmann <[email-masked]>
> > +;;; Copyright © 2017, 2018 Nils Gillmann <[email-masked]>
> >  ;;;
> >  ;;; 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 <[email-masked]>
> > +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 <[email-masked]>
> > +---
> > + 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
> > 
> 
> > From 90e0ab0a5d5eae066f670723cd4c20f113e664be Mon Sep 17 00:00:00 2001
> > From: Nils Gillmann <[email-masked]>
> > 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 <[email-masked]>
> > ---
> >  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
> > 
> 
> 
> 
> 
> ----- End forwarded message -----
> 
> 
> 
From 90e0ab0a5d5eae066f670723cd4c20f113e664be Mon Sep 17 00:00:00 2001
From: Nils Gillmann <[email-masked]>
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 <[email-masked]>
---
 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

From 6980b10ff3870ee87d836858583154b952f7c229 Mon Sep 17 00:00:00 2001
From: Nils Gillmann <[email-masked]>
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 <[email-masked]>
---
 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

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 <[email-masked]>
 ;;; Copyright © 2016 Efraim Flashner <[email-masked]>
-;;; Copyright © 2017 Nils Gillmann <[email-masked]>
+;;; Copyright © 2017, 2018 Nils Gillmann <[email-masked]>
 ;;;
 ;;; 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 <[email-masked]>
+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 <[email-masked]>
+---
+ 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