gnu: python-rarfile: Update to 4.0.

This package is close to useless, because we lack the non-free unrar
utility and the libarchive backend does not support most operations.

* gnu/packages/python-xyz.scm (python-rarfile)[version]: Update to 4.0.
[arguments]: Disable tests.
[propagated-inputs]: Move…
[inputs]: …here.
[native-inputs]: Add pytest.
[#:phases]: Use pytest for 'check and Add 'patch phase.
(python2-rarfile): Remove, unsupported by upstream.
This commit is contained in:
Lars-Dominik Braun 2021-09-03 11:00:24 +02:00
parent 26fe4d77bf
commit e82b103a77
No known key found for this signature in database
GPG key ID: F663943E08D8092A

View file

@ -13910,33 +13910,39 @@ (define-public python-pdfminer-six
(define-public python-rarfile
(package
(name "python-rarfile")
(version "2.8")
(version "4.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "rarfile" version))
(sha256
(base32
"0qfad483kcbga0bn4qmcz953xjk16r52fahiy46zzn56v80y89ra"))))
"1882wv9szcm29mnyhjmspyflyr2l7z73srn14w4dlnww49lqfm37"))))
(build-system python-build-system)
(arguments
'(#:phases
`(#:tests? #f ;; The bsdtar utility is very limited and most tests fail.
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "rarfile.py"
;; Disable unrar and unar, which are unavailable on Guix.
(("(unrar|unar)=True" all tool) (string-append tool "=False"))
;; Hardcode path to bsdtar
(("\"bsdtar\"")
(string-append "\"" (assoc-ref inputs "libarchive") "/bin/bsdtar\"")))
#t))
(replace 'check
;; Many tests fail, but the installation proceeds.
(lambda _ (invoke "make" "-C" "test" "test"))))))
(native-inputs
`(("which" ,which))) ; required for tests
(propagated-inputs
`(("libarchive" ,libarchive)))
(lambda* (#:key inputs tests? #:allow-other-keys)
(when tests?
(invoke "pytest" "-vv")))))))
(native-inputs `(("python-pytest" ,python-pytest)))
(inputs `(("libarchive" ,libarchive)))
(home-page "https://github.com/markokr/rarfile")
(synopsis "RAR archive reader for Python")
(description "This is Python module for RAR archive reading. The interface
is made as zipfile like as possible.")
(license license:isc)))
(define-public python2-rarfile
(package-with-python2 python-rarfile))
(define-public python-rich
(package
(name "python-rich")