aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHendursaga <hendursaga@yahoo.com>2020-08-19 16:58:31 +0000
committerLudovic Courtès <ludo@gnu.org>2020-08-26 12:04:51 +0200
commitce022b2e142c75b9e4d05fc1aec91e345dc374a7 (patch)
treed4bdfb88196daf49492b2c0c79fd8858535165e7
parent38f789844f38d8b8d84acbc4cf8c0042965c3aee (diff)
downloadguix-ce022b2e142c75b9e4d05fc1aec91e345dc374a7.tar
guix-ce022b2e142c75b9e4d05fc1aec91e345dc374a7.tar.gz
gnu: Add ssss.
* gnu/packages/crypto.scm (ssss): New variable. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
-rw-r--r--gnu/packages/crypto.scm46
1 files changed, 46 insertions, 0 deletions
diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm
index 5532f7e9f8..53af54c965 100644
--- a/gnu/packages/crypto.scm
+++ b/gnu/packages/crypto.scm
@@ -17,6 +17,7 @@
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
+;;; Copyright © 2020 Hendur Saga <hendursaga@yahoo.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -53,6 +54,8 @@
#:use-module (gnu packages libffi)
#:use-module (gnu packages linux)
#:use-module (gnu packages lsof)
+ #:use-module (gnu packages man)
+ #:use-module (gnu packages multiprecision)
#:use-module (gnu packages nettle)
#:use-module (gnu packages password-utils)
#:use-module (gnu packages perl)
@@ -394,6 +397,49 @@ generation of wordlists the included tool @code{worgen} can be used. There is
no man page, refer to the home page for usage details.")
(license (list license:isc license:expat)))))
+(define-public ssss
+ (package
+ (name "ssss")
+ (version "0.5")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "http://point-at-infinity.org/ssss/ssss-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "15grn2fp1x8p92kxkwbmsx8rz16g93y9grl3hfqbh1jn21ama5jx"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ; No test suite
+ #:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))
+ "CC=gcc")
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure) ; no configuration to be done
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((outdir (assoc-ref outputs "out"))
+ (bindir (string-append outdir "/bin"))
+ (docdir (string-append outdir
+ "/share/doc/ssss-"
+ ,version)))
+ (install-file "ssss-combine" bindir)
+ (install-file "ssss-split" bindir)
+ (install-file "ssss.1" docdir)
+ (install-file "ssss.1.html" docdir)
+ #t))))))
+ (inputs
+ `(("gmp" ,gmp)))
+ (native-inputs
+ `(("xmltoman" ,xmltoman)))
+ (home-page "http://point-at-infinity.org/ssss/")
+ (synopsis "Shamir's secret sharing scheme implementation")
+ (description "@command{ssss-split} and @command{ssss-combine} are utilities that split
+and combine secrets securely using Shamir's secret sharing scheme. This implementation
+allows for a threshold scheme where the minimum number of shares can be less than the
+total number of shares generated.")
+ (license license:gpl2+)))
+
(define-public tomb
(package
(name "tomb")