diff options
author | Vinicius Monego <monego@posteo.net> | 2020-10-12 00:38:49 -0300 |
---|---|---|
committer | Marius Bakke <marius@gnu.org> | 2020-10-19 00:12:32 +0200 |
commit | 68d425cda8be8356ab5e8aab54be0f19f08fedd0 (patch) | |
tree | 026d63cd8e82fcb384a2f8b90be85a5e9193012f | |
parent | 474efc823b17386cc96dfd565f4c2ac205c9e68a (diff) | |
download | guix-68d425cda8be8356ab5e8aab54be0f19f08fedd0.tar guix-68d425cda8be8356ab5e8aab54be0f19f08fedd0.tar.gz |
gnu: Add python-pykeepass.
* gnu/packages/python-crypto.scm (python-pykeepass): New variable.
Signed-off-by: Marius Bakke <marius@gnu.org>
-rw-r--r-- | gnu/packages/python-crypto.scm | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/gnu/packages/python-crypto.scm b/gnu/packages/python-crypto.scm index bad774aa03..7084c3a4ec 100644 --- a/gnu/packages/python-crypto.scm +++ b/gnu/packages/python-crypto.scm @@ -61,6 +61,7 @@ #:use-module (gnu packages swig) #:use-module (gnu packages time) #:use-module (gnu packages tls) + #:use-module (gnu packages xml) #:use-module ((guix licenses) #:prefix license:) #:use-module (srfi srfi-1)) @@ -1060,6 +1061,53 @@ through the Engine interface.") (propagated-inputs `(("python2-typing" ,python2-typing)))))) +(define-public python-pykeepass + (package + (name "python-pykeepass") + (version "3.2.0") + (source + (origin + (method git-fetch) + ;; Source tarball on PyPI doesn't include tests. + (uri (git-reference + (url "https://github.com/libkeepass/pykeepass") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1wxbfpy7467mlnfsvmh685fhfnq4fki9y7yc9cylp30r5n3hisaj")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'make-kdbx-writable + ;; Tests have to write to the .kdbx files in the test directory. + (lambda _ + (with-directory-excursion "tests" + (for-each make-file-writable (find-files ".")) + #t))) + (add-before 'build 'patch-requirements + (lambda _ + ;; Update requirements from dependency==version + ;; to dependency>=version. + (substitute* "setup.py" + (("==") ">=")) + #t))))) + (propagated-inputs + `(("python-argon2-cffi" ,python-argon2-cffi) + ("python-construct" ,python-construct) + ("python-dateutil" ,python-dateutil) + ("python-future" ,python-future) + ("python-lxml" ,python-lxml) + ("python-pycryptodome" ,python-pycryptodome))) + (home-page "https://github.com/libkeepass/pykeepass") + (synopsis "Python library to interact with keepass databases") + (description + "This library allows you to write entries to a KeePass database. It +supports KDBX3 and KDBX4.") + ;; There are no copyright headers in the source code. The LICENSE file + ;; indicates GPL3. + (license license:gpl3+))) + (define-public python-pylibscrypt (package (name "python-pylibscrypt") |