summaryrefslogtreecommitdiff
path: root/gnu/packages/sphinx.scm
diff options
context:
space:
mode:
authorRicardo Wurmus <rekado@elephly.net>2021-02-05 22:41:30 +0100
committerRicardo Wurmus <rekado@elephly.net>2021-02-05 23:30:43 +0100
commita60be5c5ffebe801f0b131bfa044decbafde9269 (patch)
treefd33872979d3b5dea67bc0c33d312634dd659ce9 /gnu/packages/sphinx.scm
parent8d615398831ebe47ae861b3580d49b64ca50bc82 (diff)
downloadguix-patches-a60be5c5ffebe801f0b131bfa044decbafde9269.tar
guix-patches-a60be5c5ffebe801f0b131bfa044decbafde9269.tar.gz
gnu: Add python2-sphinx.
We need this to unbreak python2-numpydoc. Eventually, this should be moved to the Guix Past channel. * gnu/packages/sphinx.scm (python2-sphinx): New variable.
Diffstat (limited to 'gnu/packages/sphinx.scm')
-rw-r--r--gnu/packages/sphinx.scm47
1 files changed, 46 insertions, 1 deletions
diff --git a/gnu/packages/sphinx.scm b/gnu/packages/sphinx.scm
index cbf0d21f51..e046885a6b 100644
--- a/gnu/packages/sphinx.scm
+++ b/gnu/packages/sphinx.scm
@@ -101,7 +101,52 @@
for Python projects or other documents consisting of multiple reStructuredText
sources.")
(license license:bsd-2)
- (properties `((python2-variant . ,(delay python-sphinx))))))
+ (properties `((python2-variant . ,(delay python2-sphinx))))))
+
+;; Sphinx 2 does not support Python 2, so we stick with this older version here.
+(define-public python2-sphinx
+ (let ((base (package-with-python2 (strip-python2-variant python-sphinx))))
+ (package
+ (inherit base)
+ (version "1.7.7")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "Sphinx" version))
+ (sha256
+ (base32
+ "0pkkbfj7cl157q550gcs45am5y78ps0h7q6455d64s1zmw01jlvi"))))
+ (arguments
+ (substitute-keyword-arguments (package-arguments base)
+ ((#:phases phases)
+ `(modify-phases ,phases
+ (add-before 'check 'disable-broken-tests
+ (lambda _
+ (for-each delete-file
+ ;; These tests are broken when using Python2:
+ ;; <https://github.com/sphinx-doc/sphinx/issues/4710>.
+ '("tests/test_api_translator.py"
+ "tests/test_setup_command.py"
+ ;; This one fails for unknown reasons.
+ "tests/test_correct_year.py"))))))))
+ (native-inputs `(("python2-mock" ,python2-mock)
+ ("python2-enum34" ,python2-enum34)
+ ,@(package-native-inputs base)))
+ ;; Sphinx 2 has some dependencies that do not support Python 2, so
+ ;; we keep our own propagated-inputs here instead of inheriting.
+ (propagated-inputs
+ `(("python2-pytz" ,python2-pytz)
+ ("python2-typing" ,python2-typing)
+ ("python2-imagesize" ,python2-imagesize)
+ ("python2-sphinx-alabaster-theme" ,python2-sphinx-alabaster-theme)
+ ("python2-babel" ,python2-babel)
+ ("python2-snowballstemmer" ,python2-snowballstemmer)
+ ("python2-docutils" ,python2-docutils-0.14)
+ ("python2-jinja2" ,python2-jinja2)
+ ("python2-packaging" ,python2-packaging)
+ ("python2-pygments" ,python2-pygments)
+ ("python2-requests" ,python2-requests)
+ ("python2-six" ,python2-six)
+ ("python2-sphinxcontrib-websupport" ,python2-sphinxcontrib-websupport))))))
(define-public python-sphinxcontrib-applehelp
(package