Subject: reproducible builds: keyutils: avoid embedding timestamp
From: Vagrant Cascadian <[email-masked]>
To: [email-masked]
Date: Wed, 01 Jun 2022 15:36:58 -0700
List-Id: <debbugs-submit.debbugs.gnu.org>

This completely removes a timestamp from the build of keyutils,
following the recommendation of:

  https://reproducible-builds.org/docs/timestamps/

  "Timestamps are best avoided"

Alternately, one could hard-code a specific timestamp (e.g. 2012-04-18),
or patch it to use the SOURCE_DATE_EPOCH environment variable (which
might at least be acceptible to submit upstream), although since
SOURCE_DATE_EPOCH is always 0 in guix, this seems a bit silly to me. :)

live well,
  vagrant
From 36888e9dc33188115142ecde9d31eb3884004940 Mon Sep 17 00:00:00 2001
From: Vagrant Cascadian <[email-masked]>
Date: Wed, 1 Jun 2022 09:24:00 -0700
Subject: [PATCH 3/4] gnu: keyutils: Avoid embedding build timestamp.

* gnu/packages/crypto.scm (keyutils)[arguments]: Add
  'avoid-embedding-timestamp phase.
---
 gnu/packages/crypto.scm | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm
index e98d9634dc..6e4b1331e7 100644
--- a/gnu/packages/crypto.scm
+++ b/gnu/packages/crypto.scm
@@ -398,6 +398,11 @@ (define-public keyutils
            #:phases
            #~(modify-phases %standard-phases
                (delete 'configure)      ; no configure script
+               (add-after 'unpack 'avoid-embedding-timestamp
+                 ;; Do not embed build timestamp
+                 (lambda _
+                   (substitute* "Makefile"
+                     (("shell date") "shell true"))))
                (add-after 'install 'install:static
                  (lambda _
                    (with-directory-excursion #$output
-- 
2.35.1