This is an automated email from the git hooks/post-receive script.
guix_mirror_bot pushed a commit to branch master
in repository guix.
The following commit(s) were added to refs/heads/master by this push:
new 6362d3445be gnu: Add monocypher.
6362d3445be is described below
commit 6362d3445be4d0d454dd914f87df05280359a3c2
Author: bdunahu <[email protected]>
AuthorDate: Sat Aug 22 14:39:57 2026 -0400
gnu: Add monocypher.
* gnu/packages/crypto.scm (monocypher): New variable.
Merges guix/guix!10739.
Signed-off-by: Cayetano Santos <[email protected]>
---
gnu/packages/crypto.scm | 49 +++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 49 insertions(+)
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.
Trusted comments are signed, thus verified, before being displayed.")
(license license:isc)))
+(define-public monocypher
+ (package
+ (name "monocypher")
+ (version "4.0.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/LoupVaillant/Monocypher")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "08wk5l2r5k7akxx2s525f72pwqkv0pcf69dd60zwyggylz34lw65"))))
+ (build-system gnu-build-system)
+ (arguments
+ (list
+ #:make-flags #~(list (string-append "CC=" #$(cc-for-target))
+ (string-append "PREFIX=" #$output))
+ #:phases
+ #~(modify-phases %standard-phases
+ (delete 'configure)
+ (add-before 'check 'build-tests
+ (lambda* (#:key tests? make-flags #:allow-other-keys)
+ (when tests?
+ (with-directory-excursion "tests/gen"
+ (apply invoke "make" make-flags)))))
+ (add-after 'install 'delete-static-archive
+ ;; Don't want, but Makefile can't be told to only build shared.
+ (lambda _
+ (delete-file (in-vicinity #$output "lib/libmonocypher.a")))))))
+ (native-inputs
+ (list libsodium ;tests only
+ mandoc
+ pkg-config
+ python-cryptography ;python is test only
+ python-minimal))
+ (home-page "https://monocypher.org/")
+ (synopsis "Easy to use crypto library")
+ (description "Monocypher is an easy to use, easy to deploy, auditable
crypto
+library for C. Features include:
+@itemize
+@item Authenticated encryption with XChaCha20 and Poly1305 (RFC 8439)
+@item Hashing and key derivation with BLAKE2b (and SHA-512)
+@item Password Hashing with Argon2
+@item Public Key Cryptography with X25519 key exchanges
+@item Public Key Signatures with EdDSA and Ed25519
+@end itemize")
+ (license (list license:bsd-2 license:cc0)))) ;dual licensed
+
(define-public olm
(package
(name "olm")