gnu: python-pylibscrypt: Switch to pyproject.

* gnu/packages/python-crypto.scm (python-pylibscrypt):
[source]: Switch to git-fetch.
[build-system]: Switch to pyproject-build-system.
[arguments, inputs]: Remove them.
[native-inputs]: Add python-pytest, python-setuptools, python-wheel.
[description]: Rewrite it.

Change-Id: I012930b6dad02b02a15c7bda5f6dc96cad632343
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
This commit is contained in:
Nicolas Graves 2025-08-26 01:32:09 +02:00 committed by Sharlatan Hellseher
parent 479de7b3ad
commit 8ce2483421
No known key found for this signature in database
GPG key ID: 76D727BFF62CD2B5

View file

@ -1140,36 +1140,19 @@ supports KDBX3 and KDBX4.")
(version "1.7.1") (version "1.7.1")
(source (source
(origin (origin
(method url-fetch) (method git-fetch)
(uri (pypi-uri "pylibscrypt" version)) (uri (git-reference
(url "https://github.com/jvarho/pylibscrypt")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32 "0plp5fvk3pzv5wgzqfggdqvvsfsxjid53a0hxbpn2h1dp33vkrh0"))))
"1b3rgzl6dbzs08vhv41b6y4n5189wv7lr27acxn104hs45745abs")))) (build-system pyproject-build-system)
(build-system python-build-system) (native-inputs (list python-pytest python-setuptools python-wheel))
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'build 'hard-code-path-to-libscrypt
(lambda* (#:key inputs #:allow-other-keys)
(let ((libscrypt (assoc-ref inputs "libscrypt")))
(substitute* "pylibscrypt/pylibscrypt.py"
(("find_library\\('scrypt'\\)")
(string-append "'" libscrypt "/lib/libscrypt.so'")))
#t))))
;; The library can use various scrypt implementations and tests all of
;; them. Since we only provide a single implementation, most tests
;; fail. Simply skip them.
#:tests? #f))
;; FIXME: Using "libscrypt" is the second best choice. The best one
;; requires "hashlib.scrypt", provided by Python 3.6+ built with OpenSSL
;; 1.1+. Use that as soon as Guix provides it.
(inputs
(list libscrypt))
(home-page "https://github.com/jvarho/pylibscrypt") (home-page "https://github.com/jvarho/pylibscrypt")
(synopsis "Scrypt for Python") (synopsis "Scrypt for Python")
(description "There are a lot of different scrypt modules for Python, but (description
none of them have everything that I'd like, so here's one more. It uses "This package provides another Scrypt module for Python.")
@code{libscrypt}.")
(license license:isc))) (license license:isc)))
(define-public python-libnacl (define-public python-libnacl