summary refs log tree commit diff
diff options
context:
space:
mode:
authorMarius Bakke <marius@gnu.org>2020-06-23 22:23:56 +0200
committerMarius Bakke <marius@gnu.org>2020-06-23 22:24:38 +0200
commita864d407119980ef5cfd4be079b8ec2b8038102b (patch)
treeab1435a55290d4f6aab7b13f8b8a991a6da6617c
parente6c2cec217b9fe3f8670af85c8626802a7c77341 (diff)
downloadguix-a864d407119980ef5cfd4be079b8ec2b8038102b.tar.gz
gnu: mpv: Use deterministic ordering of shared library dependencies.
Fixes <https://bugs.gnu.org/42025>.
Reported by Msavoritias <marinus.savoritias@disroot.org>.

* gnu/packages/video.scm (mpv)[arguments]: Add phase 'build-reproducibly'.
-rw-r--r--gnu/packages/video.scm8
1 files changed, 8 insertions, 0 deletions
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index b206fb32f5..406a2ad5a1 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -1534,6 +1534,14 @@ SVCD, DVD, 3ivx, DivX 3/4/5, WMV and H.264 movies.")
                 (("\"youtube-dl\",")
                  (string-append "\"" ytdl "/bin/youtube-dl\",")))
               #t)))
+         (add-before 'configure 'build-reproducibly
+           (lambda _
+             ;; Somewhere in the build system library dependencies are enumerated
+             ;; and passed as linker flags, but the order in which they are added
+             ;; varies.  See <https://github.com/mpv-player/mpv/issues/7855>.
+             ;; Set PYTHONHASHSEED as a workaround for deterministic results.
+             (setenv "PYTHONHASHSEED" "1")
+             #t))
          (add-before
           'configure 'setup-waf
           (lambda* (#:key inputs #:allow-other-keys)