[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#51289] [PATCH 4/4] gnu: Add BLAKE3 command line tool.
From: |
Leo Famulari |
Subject: |
[bug#51289] [PATCH 4/4] gnu: Add BLAKE3 command line tool. |
Date: |
Tue, 19 Oct 2021 12:15:35 -0400 |
* gnu/packages/crypto.scm (b3sum): New variable.
---
gnu/packages/crypto.scm | 49 +++++++++++++++++++++++++++++++++++++++++
1 file changed, 49 insertions(+)
diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm
index 3b5957ef23..1b4906dc31 100644
--- a/gnu/packages/crypto.scm
+++ b/gnu/packages/crypto.scm
@@ -1534,3 +1534,52 @@ (define-public rust-blake3-0.3
;; Users may choose between these two licenses when redistributing the
;; program provided by this package.
(license (list license:cc0 license:asl2.0))))
+
+(define-public b3sum
+ (package
+ (name "b3sum")
+ ;; Version 1 requires Rust >= 1.51.
+ ;; <https://github.com/BLAKE3-team/BLAKE3/releases/tag/1.0.0>
+ (version "0.3.8")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "b3sum" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "0h3fz16q5lk6mg7r8kjkjrq5hd4injngn5m7pswjbf2pyzjmg4b4"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(;; Install the source so that Cargo.toml is installed, because that is
+ ;; the only reference to the license information.
+ #:install-source? #t
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'patch-tests
+ (lambda _
+ (substitute* "tests/cli_tests.rs"
+ (("/bin/sh") (which "sh")))))
+ (add-after 'install 'install-doc
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (doc (string-append out "/share/doc/" ,name "-"
+ ,(package-version this-package))))
+ (install-file "README.md" doc)))))
+ #:cargo-inputs
+ (("rust-anyhow" ,rust-anyhow-1)
+ ("rust-blake3" ,rust-blake3-0.3)
+ ("rust-clap" ,rust-clap-2)
+ ("rust-hex" ,rust-hex-0.4)
+ ("rust-memmap" ,rust-memmap-0.7)
+ ("rust-rayon" ,rust-rayon-1)
+ ("rust-wild" ,rust-wild-2))
+ #:cargo-development-inputs
+ (("rust-duct" ,rust-duct-0.13)
+ ("rust-tempfile" ,rust-tempfile-3))))
+ (home-page "https://github.com/BLAKE3-team/BLAKE3")
+ (synopsis "Command line BLAKE3 checksum tool")
+ (description "This package provides @code{b3sum}, a command line
+checksum tool based on the BLAKE3 cryptographic hash function.")
+ ;; Users may choose between these two licenses when redistributing the
+ ;; program provided by this package.
+ (license (list license:cc0 license:asl2.0))))
--
2.33.1