summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbdunahu <bdunahu@operationnull.com>2026-08-22 14:39:57 -0400
committerCayetano Santos <csantosb@inventati.org>2026-08-26 15:13:51 +0200
commit6362d3445be4d0d454dd914f87df05280359a3c2 (patch)
treee165f961b69b123755fbdd140740c2395f2593e7
parent21393e10c8a9948cdac7870dad5d6d464c74da09 (diff)
gnu: Add monocypher.
* gnu/packages/crypto.scm (monocypher): New variable. Merges guix/guix!10739. Signed-off-by: Cayetano Santos <csantosb@inventati.org>
-rw-r--r--gnu/packages/crypto.scm49
1 files changed, 49 insertions, 0 deletions
diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm
index 149fb21410a..10262e22919 100644
--- a/gnu/packages/crypto.scm
+++ b/gnu/packages/crypto.scm
@@ -1416,6 +1416,55 @@ signatures include trusted comments in addition to untrusted comments.
1416Trusted comments are signed, thus verified, before being displayed.") 1416Trusted comments are signed, thus verified, before being displayed.")
1417 (license license:isc))) 1417 (license license:isc)))
1418 1418
1419(define-public monocypher
1420 (package
1421 (name "monocypher")
1422 (version "4.0.3")
1423 (source
1424 (origin
1425 (method git-fetch)
1426 (uri (git-reference
1427 (url "https://github.com/LoupVaillant/Monocypher")
1428 (commit version)))
1429 (file-name (git-file-name name version))
1430 (sha256
1431 (base32 "08wk5l2r5k7akxx2s525f72pwqkv0pcf69dd60zwyggylz34lw65"))))
1432 (build-system gnu-build-system)
1433 (arguments
1434 (list
1435 #:make-flags #~(list (string-append "CC=" #$(cc-for-target))
1436 (string-append "PREFIX=" #$output))
1437 #:phases
1438 #~(modify-phases %standard-phases
1439 (delete 'configure)
1440 (add-before 'check 'build-tests
1441 (lambda* (#:key tests? make-flags #:allow-other-keys)
1442 (when tests?
1443 (with-directory-excursion "tests/gen"
1444 (apply invoke "make" make-flags)))))
1445 (add-after 'install 'delete-static-archive
1446 ;; Don't want, but Makefile can't be told to only build shared.
1447 (lambda _
1448 (delete-file (in-vicinity #$output "lib/libmonocypher.a")))))))
1449 (native-inputs
1450 (list libsodium ;tests only
1451 mandoc
1452 pkg-config
1453 python-cryptography ;python is test only
1454 python-minimal))
1455 (home-page "https://monocypher.org/")
1456 (synopsis "Easy to use crypto library")
1457 (description "Monocypher is an easy to use, easy to deploy, auditable crypto
1458library for C. Features include:
1459@itemize
1460@item Authenticated encryption with XChaCha20 and Poly1305 (RFC 8439)
1461@item Hashing and key derivation with BLAKE2b (and SHA-512)
1462@item Password Hashing with Argon2
1463@item Public Key Cryptography with X25519 key exchanges
1464@item Public Key Signatures with EdDSA and Ed25519
1465@end itemize")
1466 (license (list license:bsd-2 license:cc0)))) ;dual licensed
1467
1419(define-public olm 1468(define-public olm
1420 (package 1469 (package
1421 (name "olm") 1470 (name "olm")