gnu: Add python-olm.

* gnu/packages/crypto.scm (python-olm): New variable.
This commit is contained in:
Lars-Dominik Braun 2021-10-16 10:56:48 +02:00
parent 88563b71c7
commit 6addd57324
No known key found for this signature in database
GPG key ID: F663943E08D8092A

View file

@ -72,6 +72,7 @@ (define-module (gnu packages crypto)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages python-check)
#:use-module (gnu packages readline)
#:use-module (gnu packages search)
#:use-module (gnu packages serialization)
@ -91,6 +92,7 @@ (define-module (gnu packages crypto)
#:use-module (guix build-system gnu)
#:use-module (guix build-system go)
#:use-module (guix build-system perl)
#:use-module (guix build-system python)
#:use-module (guix utils)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-26))
@ -1280,6 +1282,39 @@ (define-public libolm
(home-page "https://matrix.org/docs/projects/other/olm/")
(license license:asl2.0)))
(define-public python-olm
(package
;; python-olm is part of libolm and must be updated at the same time.
(inherit libolm)
(name "python-olm")
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _
(chdir "python")))
(add-before 'build 'set-preprocessor
(lambda* (#:key inputs #:allow-other-keys)
(setenv "CPP" "gcc -E")))
(replace 'check
(lambda* (#:key tests? inputs outputs #:allow-other-keys)
(when tests?
(add-installed-pythonpath inputs outputs)
(invoke "pytest")))))))
(inputs `(("libolm" ,libolm)))
(propagated-inputs
`(("python-cffi" ,python-cffi)
("python-future" ,python-future)))
(native-inputs
`(("python-pytest" ,python-pytest)
("python-pytest-benchmark" ,python-pytest-benchmark)
("python-aspectlib" ,python-aspectlib)))
(synopsis "Python bindings for libolm")
(description "The libolm library implements the Double Ratchet
cryptographic ratchet. It is written in C and C++11, and exposed as a C
API. This package contains its Python bindings.")))
(define-public hash-extender
(let ((commit "cb8aaee49f93e9c0d2f03eb3cafb429c9eed723d")
(revision "2"))