summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2021-11-21 00:07:08 -0500
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2021-11-21 09:08:52 -0500
commit01ea70a29c5c1ded31c37ce8c43192bc1956b2ca (patch)
tree8b013f78bdb6562e0acff43fadf55656533c7e9c /gnu
parenta0e5af459320fcf4c97d3f0b9e68e04b6743ec7a (diff)
gnu: linux-libre: Make build reproducible.
Fixes <https://issues.guix.gnu.org/24028>. * gnu/packages/linux.scm (make-linux-libre*): Remove trailing #t. [phases]{configure}: Set KBUILD_BUILD_USER and KBUILD_BUILD_HOST environment variables.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/linux.scm14
1 files changed, 8 insertions, 6 deletions
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 71da82d97d..2dccf8ac26 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -818,15 +818,18 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration."
(add-after 'unpack 'patch-/bin/pwd
(lambda _
(substitute* (find-files "." "^Makefile(\\.include)?$")
- (("/bin/pwd") "pwd"))
- #t))
+ (("/bin/pwd") "pwd"))))
(replace 'configure
(lambda* (#:key inputs native-inputs target #:allow-other-keys)
- ;; Avoid introducing timestamps
+ ;; Avoid introducing timestamps.
(setenv "KCONFIG_NOTIMESTAMP" "1")
(setenv "KBUILD_BUILD_TIMESTAMP" (getenv "SOURCE_DATE_EPOCH"))
- ;; Set ARCH and CROSS_COMPILE
+ ;; Other variables useful for reproducibility.
+ (setenv "KBUILD_BUILD_USER" "guix")
+ (setenv "KBUILD_BUILD_HOST" "guix")
+
+ ;; Set ARCH and CROSS_COMPILE.
(let ((arch ,(system->linux-architecture
(or (%current-target-system)
(%current-system)))))
@@ -897,8 +900,7 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration."
(false-if-file-not-found
(delete-file (string-append moddir "/" version "/build")))
(false-if-file-not-found
- (delete-file (string-append moddir "/" version "/source"))))
- #t))))
+ (delete-file (string-append moddir "/" version "/source"))))))))
#:tests? #f))
(home-page "https://www.gnu.org/software/linux-libre/")
(synopsis "100% free redistribution of a cleaned Linux kernel")