summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gnu-system.am1
-rw-r--r--gnu/packages/patches/python-rarfile-fix-tests.patch14
-rw-r--r--gnu/packages/python.scm32
3 files changed, 47 insertions, 0 deletions
diff --git a/gnu-system.am b/gnu-system.am
index ff53b3eb04..f13a55de12 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -701,6 +701,7 @@ dist_patch_DATA = \
gnu/packages/patches/python-disable-ssl-test.patch \
gnu/packages/patches/python-fix-tests.patch \
gnu/packages/patches/python-ipython-inputhook-ctype.patch \
+ gnu/packages/patches/python-rarfile-fix-tests.patch \
gnu/packages/patches/python2-rdflib-drop-sparqlwrapper.patch \
gnu/packages/patches/python-configobj-setuptools.patch \
gnu/packages/patches/python-paste-remove-website-test.patch \
diff --git a/gnu/packages/patches/python-rarfile-fix-tests.patch b/gnu/packages/patches/python-rarfile-fix-tests.patch
new file mode 100644
index 0000000000..8ae8894009
--- /dev/null
+++ b/gnu/packages/patches/python-rarfile-fix-tests.patch
@@ -0,0 +1,14 @@
+There is no test.sh, but there are test1.sh and test2.sh.
+
+diff --git a/test/Makefile b/test/Makefile
+index 027bc5f..5383db3 100644
+--- a/test/Makefile
++++ b/test/Makefile
+@@ -1,5 +1,6 @@
+ test:
+- ./test.sh
++ ./test1.sh
++ ./test2.sh
+
+ clean:
+ rm -rf __pycache__
diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 75481fc5b6..97a69c3a1b 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -8438,3 +8438,35 @@ encoding algorithms to do fuzzy string matching.")
(description "Unicodecsv is a drop-in replacement for Python 2.7's CSV
module, adding support for Unicode strings.")
(license bsd-2)))
+
+(define-public python-rarfile
+ (package
+ (name "python-rarfile")
+ (version "2.7")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "rarfile" version))
+ (sha256
+ (base32
+ "0d8n1dlpiz7av8dmbp0vclrwl9cnxizr4f2c9xvj1h5nvn480527"))
+ ;; https://github.com/markokr/rarfile/pull/17/
+ (patches (list (search-patch "python-rarfile-fix-tests.patch")))))
+ (build-system python-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ ;; Many tests fail, but the installation proceeds.
+ (lambda _ (zero? (system* "make" "-C" "test" "test")))))))
+ (native-inputs
+ `(("which" ,which))) ; required for tests
+ (propagated-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 isc)))
+
+(define-public python2-rarfile
+ (package-with-python2 python-rarfile))