Subject: bug#32861: closed (Re: [bug#32861] [Fwd: [PATCH] fvwm reproducible])

From: [email-masked] (GNU bug Tracking System)
Date: Fri, 28 Sep 2018 21:55:02 +0000

Your bug report

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

which was filed against the guix-patches package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
32861: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=32861
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: [bug#32861] [Fwd: [PATCH] fvwm reproducible]
From: Nils Gillmann <[email-masked]>
To: Ludovic Courtès <[email-masked]>
Cc: [email-masked], Nils Gillmann <[email-masked]>
Date: Fri, 28 Sep 2018 21:54:54 +0000
List-Id: <debbugs-submit.debbugs.gnu.org>

Ludovic Courtès transcribed 629 bytes:
> Hi Nils,
> 
> Nils Gillmann <[email-masked]> skribis:
> 
> > +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.
> 
> 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.

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

Yes, it is.

> Thank you,
> Ludo’.

Subject: [Fwd: [PATCH] fvwm reproducible]
From: Nils Gillmann <[email-masked]>
To: [email-masked]
Date: Fri, 28 Sep 2018 15:00:19 +0000
List-Id: <debbugs-submit.debbugs.gnu.org>

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.

----- 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 -----