summary refs log tree commit diff
diff options
context:
space:
mode:
authorMaxime Devos <maximedevos@telenet.be>2022-09-03 14:08:25 +0200
committerLudovic Courtès <ludo@gnu.org>2022-09-04 23:10:13 +0200
commit99afc7d65b2ff77790480f66dc769ee318774082 (patch)
tree8e279a44b0ccbfffb17c070566fb13d0d1c5a59a
parent3c48ef60ad8fa76075e0fc72bd0dba7f09366915 (diff)
downloadguix-99afc7d65b2ff77790480f66dc769ee318774082.tar.gz
gnu: hashcat: Unbundle everything but LZMA-SDK.
There does not appear to be a convenient Guix package for LZMA-SDK yet.
I currently have a bit of a dirty working tree (fiddling with imports), so the
use-modules is in the wrong place. Also, a small rebase conflict, the version
and source hash of hashcat has been updated.

* gnu/packages/password-utils.scm (hashcat)[source]{snippet}: Delete
everything from deps except for deps/LZMA-SDK.
(hashcat)[inputs]: Add minizip, xxhash and zlib.
(hashcat)[arguments]<#:make-flags>: Add USE_SYSTEM_ZLIB, USE_SYSTEM_OPENCL and
USE_SYSTEM_XXHASH.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
-rw-r--r--gnu/packages/password-utils.scm19
1 files changed, 16 insertions, 3 deletions
diff --git a/gnu/packages/password-utils.scm b/gnu/packages/password-utils.scm
index 1228c42297..2c7156db93 100644
--- a/gnu/packages/password-utils.scm
+++ b/gnu/packages/password-utils.scm
@@ -73,6 +73,7 @@
   #:use-module (gnu packages crypto)
   #:use-module (gnu packages cryptsetup)
   #:use-module (gnu packages curl)
+  #:use-module (gnu packages digest)
   #:use-module (gnu packages docbook)
   #:use-module (gnu packages file)
   #:use-module (gnu packages freedesktop)
@@ -1120,12 +1121,24 @@ your online accounts makes it necessary.")
                                   ".tar.gz"))
               (sha256
                (base32
-                "0sc96xcsc20xd4fyby3i45nm9as3hl4nhk9snkvmk5l9mpbrjs3g"))))
+                "0sc96xcsc20xd4fyby3i45nm9as3hl4nhk9snkvmk5l9mpbrjs3g"))
+              (modules '((guix build utils)))
+              ;; Delete bundled libraries.
+              (snippet
+               ;; TODO: Unbundle LZMA-SDK as well
+               #~(for-each delete-file-recursively
+                           '("deps/zlib" "deps/xxHash" "deps/OpenCL-Headers")))))
+    (inputs (list minizip xxhash zlib))
     (native-inputs (list opencl-headers))
     (build-system gnu-build-system)
     (arguments
-     '(#:tests? #f ;no tests
-       #:make-flags (list (string-append "PREFIX=" %output))
+     '(#:tests? #f                                ;no tests
+       #:make-flags (list (string-append "PREFIX=" %output)
+                          ;; TODO: unbundle
+                          ;; (string-append "USE_SYSTEM_LZMA=1")
+                          (string-append "USE_SYSTEM_ZLIB=1")
+                          (string-append "USE_SYSTEM_OPENCL=1")
+                          (string-append "USE_SYSTEM_XXHASH=1"))
        #:phases (modify-phases %standard-phases
                   ;; Don't embed timestamps, for bit-for-bit reproducibility.
                   (add-after 'unpack 'fix-reproducibility