diff --git a/gnu/local.mk b/gnu/local.mk index f8366e6ce2..d0745b0056 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -434,6 +434,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/smalltalk.scm \ %D%/packages/sml.scm \ %D%/packages/speech.scm \ + %D%/packages/sphinx.scm \ %D%/packages/spice.scm \ %D%/packages/sqlite.scm \ %D%/packages/squirrel.scm \ diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index e509cdd3a8..75380be594 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -90,6 +90,7 @@ (define-module (gnu packages admin) #:use-module (gnu packages python-web) #:use-module (gnu packages python-xyz) #:use-module (gnu packages qt) + #:use-module (gnu packages sphinx) #:use-module (gnu packages terminals) #:use-module (gnu packages texinfo) #:use-module (gnu packages groff) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 0a30d0921f..8aba7f1c5f 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -110,6 +110,7 @@ (define-module (gnu packages bioinformatics) #:use-module (gnu packages ruby) #:use-module (gnu packages serialization) #:use-module (gnu packages shells) + #:use-module (gnu packages sphinx) #:use-module (gnu packages statistics) #:use-module (gnu packages swig) #:use-module (gnu packages tbb) diff --git a/gnu/packages/calendar.scm b/gnu/packages/calendar.scm index 2969228ee9..af692e59f2 100644 --- a/gnu/packages/calendar.scm +++ b/gnu/packages/calendar.scm @@ -40,6 +40,7 @@ (define-module (gnu packages calendar) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) #:use-module (gnu packages python-xyz) + #:use-module (gnu packages sphinx) #:use-module (gnu packages sqlite) #:use-module (gnu packages time) #:use-module (gnu packages xml) diff --git a/gnu/packages/cluster.scm b/gnu/packages/cluster.scm index 8d6669cd22..3608d67bed 100644 --- a/gnu/packages/cluster.scm +++ b/gnu/packages/cluster.scm @@ -24,7 +24,7 @@ (define-module (gnu packages cluster) #:use-module (guix packages) #:use-module (gnu packages linux) #:use-module (gnu packages pkg-config) - #:use-module (gnu packages python-xyz) + #:use-module (gnu packages sphinx) #:use-module (gnu packages texinfo) #:use-module (gnu packages tls)) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index c7acc4281a..8a6e3ab00c 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -94,6 +94,7 @@ (define-module (gnu packages databases) #:use-module (gnu packages readline) #:use-module (gnu packages ruby) #:use-module (gnu packages serialization) + #:use-module (gnu packages sphinx) #:use-module (gnu packages sqlite) #:use-module (gnu packages tcl) #:use-module (gnu packages terminals) diff --git a/gnu/packages/dav.scm b/gnu/packages/dav.scm index 0bb446bc3c..3b040028a1 100644 --- a/gnu/packages/dav.scm +++ b/gnu/packages/dav.scm @@ -26,7 +26,8 @@ (define-module (gnu packages dav) #:use-module (gnu packages check) #:use-module (gnu packages python) #:use-module (gnu packages python-web) - #:use-module (gnu packages python-xyz)) + #:use-module (gnu packages python-xyz) + #:use-module (gnu packages sphinx)) (define-public radicale (package diff --git a/gnu/packages/disk.scm b/gnu/packages/disk.scm index 3211f8dd20..491f7ce881 100644 --- a/gnu/packages/disk.scm +++ b/gnu/packages/disk.scm @@ -57,6 +57,7 @@ (define-module (gnu packages disk) #:use-module (gnu packages python) #:use-module (gnu packages python-xyz) #:use-module (gnu packages readline) + #:use-module (gnu packages sphinx) #:use-module (gnu packages sqlite) #:use-module (gnu packages swig) #:use-module (gnu packages vim) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index c761a1061b..2ef50bd0f7 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -35,6 +35,7 @@ (define-module (gnu packages django) #:use-module (gnu packages python) #:use-module (gnu packages python-web) #:use-module (gnu packages python-xyz) + #:use-module (gnu packages sphinx) #:use-module (gnu packages time)) (define-public python-django diff --git a/gnu/packages/elf.scm b/gnu/packages/elf.scm index 99f49eb7a7..09be3a75a3 100644 --- a/gnu/packages/elf.scm +++ b/gnu/packages/elf.scm @@ -34,7 +34,7 @@ (define-module (gnu packages elf) #:use-module (gnu packages m4) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) - #:use-module (gnu packages python-xyz) + #:use-module (gnu packages sphinx) #:use-module (gnu packages texinfo) #:use-module (gnu packages xml)) diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 0dc14a4898..beb35c8122 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -125,6 +125,7 @@ (define-module (gnu packages emacs-xyz) #:use-module (gnu packages fontutils) #:use-module (gnu packages password-utils) #:use-module (gnu packages pulseaudio) + #:use-module (gnu packages sphinx) #:use-module (gnu packages xdisorg) #:use-module (gnu packages shells) #:use-module (gnu packages sqlite) diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm index a237b0ee1a..23e5a976ce 100644 --- a/gnu/packages/emulators.scm +++ b/gnu/packages/emulators.scm @@ -65,9 +65,9 @@ (define-module (gnu packages emulators) #:use-module (gnu packages pkg-config) #:use-module (gnu packages pulseaudio) #:use-module (gnu packages python) - #:use-module (gnu packages python-xyz) #:use-module (gnu packages qt) #:use-module (gnu packages sdl) + #:use-module (gnu packages sphinx) #:use-module (gnu packages sqlite) #:use-module (gnu packages texinfo) #:use-module (gnu packages textutils) diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm index 592e353723..e1a1e8ab6f 100644 --- a/gnu/packages/finance.scm +++ b/gnu/packages/finance.scm @@ -63,6 +63,7 @@ (define-module (gnu packages finance) #:use-module (gnu packages python-xyz) #:use-module (gnu packages qt) #:use-module (gnu packages readline) + #:use-module (gnu packages sphinx) #:use-module (gnu packages texinfo) #:use-module (gnu packages textutils) #:use-module (gnu packages tls) diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index a86d0e749f..e3956394cc 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -68,6 +68,7 @@ (define-module (gnu packages image) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) #:use-module (gnu packages python-xyz) + #:use-module (gnu packages sphinx) #:use-module (gnu packages xml) #:use-module (gnu packages xorg) #:use-module (gnu packages qt) diff --git a/gnu/packages/libffi.scm b/gnu/packages/libffi.scm index f47f7623b4..c1d50ec314 100644 --- a/gnu/packages/libffi.scm +++ b/gnu/packages/libffi.scm @@ -32,6 +32,7 @@ (define-module (gnu packages libffi) #:use-module (gnu packages python) #:use-module (gnu packages python-xyz) #:use-module (gnu packages ruby) + #:use-module (gnu packages sphinx) #:use-module (guix build-system gnu) #:use-module (guix build-system python) #:use-module (guix build-system ruby)) diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 1f54c34962..114ef32a9d 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -106,6 +106,7 @@ (define-module (gnu packages mail) #:use-module (gnu packages serialization) #:use-module (gnu packages samba) #:use-module (gnu packages screen) + #:use-module (gnu packages sphinx) #:use-module (gnu packages sqlite) #:use-module (gnu packages tcl) #:use-module (gnu packages texinfo) diff --git a/gnu/packages/mpd.scm b/gnu/packages/mpd.scm index a6f6819d3e..f631dbd7c6 100644 --- a/gnu/packages/mpd.scm +++ b/gnu/packages/mpd.scm @@ -50,8 +50,8 @@ (define-module (gnu packages mpd) #:use-module (gnu packages pcre) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) - #:use-module (gnu packages python-xyz) #:use-module (gnu packages pulseaudio) + #:use-module (gnu packages sphinx) #:use-module (gnu packages sqlite) #:use-module (gnu packages video) #:use-module (gnu packages xiph)) diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm index 2906a574cf..289b845ebc 100644 --- a/gnu/packages/openstack.scm +++ b/gnu/packages/openstack.scm @@ -28,6 +28,7 @@ (define-module (gnu packages openstack) #:use-module (gnu packages python-crypto) #:use-module (gnu packages python-web) #:use-module (gnu packages python-xyz) + #:use-module (gnu packages sphinx) #:use-module (gnu packages ssh) #:use-module (gnu packages time) #:use-module (gnu packages tls) diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm index c1153cc0b7..5c858510eb 100644 --- a/gnu/packages/pdf.scm +++ b/gnu/packages/pdf.scm @@ -74,6 +74,7 @@ (define-module (gnu packages pdf) #:use-module (gnu packages python-xyz) #:use-module (gnu packages qt) #:use-module (gnu packages sdl) + #:use-module (gnu packages sphinx) #:use-module (gnu packages sqlite) #:use-module (gnu packages tls) #:use-module (gnu packages xdisorg) diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index a163014c47..5d37e171e4 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -62,6 +62,7 @@ (define-module (gnu packages python-web) #:use-module (gnu packages python) #:use-module (gnu packages python-crypto) #:use-module (gnu packages python-xyz) + #:use-module (gnu packages sphinx) #:use-module (gnu packages tls) #:use-module (gnu packages time) #:use-module (gnu packages web) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index e5f9f39694..7e180bf04b 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -125,6 +125,7 @@ (define-module (gnu packages python-xyz) #:use-module (gnu packages sdl) #:use-module (gnu packages search) #:use-module (gnu packages shells) + #:use-module (gnu packages sphinx) #:use-module (gnu packages ssh) #:use-module (gnu packages terminals) #:use-module (gnu packages tex) @@ -2504,174 +2505,6 @@ (define-public python-pygments (define-public python2-pygments (package-with-python2 python-pygments)) -(define-public python-sphinxcontrib-websupport - (package - (name "python-sphinxcontrib-websupport") - (version "1.1.0") - (source (origin - (method url-fetch) - (uri (pypi-uri "sphinxcontrib-websupport" version)) - (sha256 - (base32 - "1ff3ix76xi1y6m99qxhaq5161ix9swwzydilvdya07mgbcvpzr4x")))) - (build-system python-build-system) - (arguments - ;; FIXME: Tests depend on Sphinx, which depends on this. - `(#:tests? #f)) - (home-page "http://sphinx-doc.org/") - (synopsis "Sphinx API for web applications") - (description "This package provides a Python API to easily integrate -Sphinx documentation into your web application. It provides tools to -integrate Sphinx documents in web templates and to handle searches.") - (license license:bsd-3))) - -(define-public python2-sphinxcontrib-websupport - (package-with-python2 python-sphinxcontrib-websupport)) - -(define-public python-sphinx - (package - (name "python-sphinx") - (version "1.7.7") - (source - (origin - (method url-fetch) - (uri (pypi-uri "Sphinx" version)) - (sha256 - (base32 - "0pkkbfj7cl157q550gcs45am5y78ps0h7q6455d64s1zmw01jlvi")))) - (build-system python-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (replace 'check - (lambda _ - ;; Requires Internet access. - (delete-file "tests/test_build_linkcheck.py") - (substitute* "tests/test_build_latex.py" - (("@pytest.mark.sphinx\\('latex', testroot='images'\\)") - "@pytest.mark.skip()")) - (when (which "python") - ;; XXX: These tests are broken when using Python2: - ;; . - (delete-file "tests/test_api_translator.py") - (delete-file "tests/test_setup_command.py")) - (invoke "make" "test")))))) - (propagated-inputs - `(("python-imagesize" ,python-imagesize) - ("python-sphinx-alabaster-theme" - ,python-sphinx-alabaster-theme) - ("python-babel" ,python-babel) - ("python-snowballstemmer" ,python-snowballstemmer) - ("python-docutils" ,python-docutils) - ("python-jinja2" ,python-jinja2) - ("python-packaging" ,python-packaging) - ("python-pygments" ,python-pygments) - ("python-requests" ,python-requests) - ("python-six" ,python-six) - ("python-sphinxcontrib-websupport" ,python-sphinxcontrib-websupport))) - (native-inputs - `(("graphviz" ,graphviz) - ("imagemagick" ,imagemagick) ;for "convert" - ("python-html5lib" ,python-html5lib) - ("python-mock" ,python-mock) - ("python-nose" ,python-nose) - ("python-pytest" ,python-pytest))) - (home-page "http://sphinx-doc.org/") - (synopsis "Python documentation generator") - (description "Sphinx is a tool that makes it easy to create documentation -for Python projects or other documents consisting of multiple reStructuredText -sources.") - (license license:bsd-3) - (properties `((python2-variant . ,(delay python2-sphinx)))))) - -(define-public python2-sphinx - (let ((base (package-with-python2 (strip-python2-variant python-sphinx)))) - (package - (inherit base) - (native-inputs `(("python2-mock" ,python2-mock) - ("python2-enum34" ,python2-enum34) - ,@(package-native-inputs base))) - (propagated-inputs `(("python2-pytz" ,python2-pytz) - ("python2-typing" ,python2-typing) - ,@(package-propagated-inputs base)))))) - -(define-public python-sphinx-gallery - (package - (name "python-sphinx-gallery") - (version "0.1.13") - (source (origin - (method url-fetch) - (uri (string-append "https://github.com/sphinx-gallery/sphinx-gallery" - "/archive/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 - "03fs99mcb1r7qp0xixqv07vcz98sk21yq19ffdysi0infdcpzfkd")))) - (build-system python-build-system) - (arguments - ;; FIXME: Tests attempt to download , - ;; , and - ;; . - `(#:tests? #f)) - (native-inputs - `(("python-pytest-runner" ,python-pytest-runner))) - (home-page "https://sphinx-gallery.github.io/") - (synopsis "Generate an examples gallery automatically") - (description - "@code{sphinx_gallery} is a Sphinx extension that builds an HTML version -from any set of Python scripts and puts it into an examples gallery.") - (license license:bsd-3))) - -(define-public python2-sphinx-gallery - (package-with-python2 python-sphinx-gallery)) - -(define-public python-sphinx-rtd-theme - (package - (name "python-sphinx-rtd-theme") - (version "0.2.4") - (source - (origin - (method url-fetch) - (uri (pypi-uri "sphinx_rtd_theme" version)) - (sha256 - (base32 - "05rlhjzdyapr2w74jjs7mrm8hi69qskcr5vya9f9drpsys7lpxrd")))) - (build-system python-build-system) - (arguments '(#:tests? #f)) ; No tests. - (propagated-inputs - `(("python-sphinx" ,python-sphinx))) - (home-page "https://github.com/snide/sphinx_rtd_theme/") - (synopsis "ReadTheDocs.org theme for Sphinx") - (description "A theme for Sphinx used by ReadTheDocs.org.") - (license license:expat))) - -(define-public python2-sphinx-rtd-theme - (package-with-python2 python-sphinx-rtd-theme)) - -(define-public python-guzzle-sphinx-theme - (package - (name "python-guzzle-sphinx-theme") - (version "0.7.11") - (source - (origin - (method url-fetch) - (uri (pypi-uri "guzzle_sphinx_theme" version)) - (sha256 - (base32 - "1rnkzrrsbnifn3vsb4pfaia3nlvgvw6ndpxp7lzjrh23qcwid34v")))) - (build-system python-build-system) - (propagated-inputs - `(("python-sphinx" ,python-sphinx))) - (home-page "https://github.com/guzzle/guzzle_sphinx_theme") - (synopsis "Sphinx theme used by Guzzle") - (description "This package provides guzzle_sphinx_theme, a theme for the -Sphinx documentation system, used by @uref{http://docs.guzzlephp.org, Guzzle} -and several other projects.") - (license license:expat))) - -(define-public python2-guzzle-sphinx-theme - (package-with-python2 python-guzzle-sphinx-theme)) - (define-public python-bumpversion (package (name "python-bumpversion") @@ -8068,26 +7901,6 @@ (define-public python-icalendar (home-page "https://github.com/collective/icalendar") (license license:bsd-2))) -(define-public python-sphinxcontrib-newsfeed - (package - (name "python-sphinxcontrib-newsfeed") - (version "0.1.4") - (source (origin - (method url-fetch) - (uri (pypi-uri "sphinxcontrib-newsfeed" version)) - (sha256 - (base32 - "1d7gam3mn8v4in4p16yn3v10vps7nnaz6ilw99j4klij39dqd37p")))) - (arguments '(#:tests? #f)) ; No tests. - (build-system python-build-system) - (propagated-inputs - `(("python-sphinx" ,python-sphinx))) - (synopsis "News Feed extension for Sphinx") - (description "Sphinxcontrib-newsfeed is an extension for adding a simple -Blog, News or Announcements section to a Sphinx website.") - (home-page "https://bitbucket.org/prometheus/sphinxcontrib-newsfeed") - (license license:bsd-2))) - (define-public python-args (package (name "python-args") @@ -8887,56 +8700,6 @@ (define-public python-editor (define-public python2-editor (package-with-python2 python-editor)) -(define-public python-sphinxcontrib-programoutput - (package - (name "python-sphinxcontrib-programoutput") - (version "0.10") - (source (origin - (method url-fetch) - (uri (pypi-uri "sphinxcontrib-programoutput" version)) - (sha256 - (base32 - "153hhnlbx4688zj9wd64819ps5znc2jlyp5crkgzvn5hxgy99vpx")))) - (build-system python-build-system) - (arguments - ;; FIXME: Many tests are failing and the upstream is gone. - '(#:tests? #f)) - (propagated-inputs - `(("python-sphinx" ,python-sphinx))) - (synopsis "Sphinx extension to include program output") - (description "A Sphinx extension to literally insert the output of arbitrary -commands into documents, helping you to keep your command examples up to date.") - (home-page "https://github.com/lunaryorn/sphinxcontrib-programoutput") - (license license:bsd-2))) - -(define-public python2-sphinxcontrib-programoutput - (package-with-python2 python-sphinxcontrib-programoutput)) - -(define-public python-sphinx-repoze-autointerface - (package - (name "python-sphinx-repoze-autointerface") - (version "0.8") - (source (origin - (method url-fetch) - (uri (pypi-uri "repoze.sphinx.autointerface" version)) - (sha256 - (base32 - "08ycivzf7bh4a1zcyp31hbyqs1b2c9r26raa3vxjwwmbfqr3iw4f")))) - (build-system python-build-system) - (arguments '(#:tests? #f)) ; No tests. - (propagated-inputs - `(("python-sphinx" ,python-sphinx) - ("python-zope-interface" ,python-zope-interface))) - (synopsis "Auto-generate Sphinx API docs from Zope interfaces") - (description "This package defines an extension for the Sphinx documentation -system. The extension allows generation of API documentation by -introspection of @code{zope.interface} instances in code.") - (home-page "https://github.com/repoze/repoze.sphinx.autointerface") - (license license:repoze))) - -(define-public python2-sphinx-repoze-autointerface - (package-with-python2 python-sphinx-repoze-autointerface)) - (define-public python-vobject (package (name "python-vobject") @@ -10926,52 +10689,6 @@ (define-public python-snowballstemmer (define-public python2-snowballstemmer (package-with-python2 python-snowballstemmer)) -(define-public python-sphinx-cloud-sptheme - (package - (name "python-sphinx-cloud-sptheme") - (version "1.8.0") - (source (origin - (method url-fetch) - (uri (pypi-uri "cloud_sptheme" version)) - (sha256 - (base32 - "1dniqb6a39yh786f86c4jn666rwnyi1jvzn4616zhcchb7sfdshd")))) - (build-system python-build-system) - ;; FIXME: The 'pypi' release archive does not contain tests. - (arguments '(#:tests? #f)) - (native-inputs - `(("python-sphinx" ,python-sphinx))) - (home-page "https://bitbucket.org/ecollins/cloud_sptheme") - (synopsis "'Cloud' theme for Sphinx documenter") - (description "This package contains the \"Cloud\" theme for Sphinx and some -related extensions.") - (license license:bsd-3))) - -(define-public python2-sphinx-cloud-sptheme - (package-with-python2 python-sphinx-cloud-sptheme)) - -(define-public python-sphinx-alabaster-theme - (package - (name "python-sphinx-alabaster-theme") - (version "0.7.12") - (source (origin - (method url-fetch) - (uri (pypi-uri "alabaster" version)) - (sha256 - (base32 - "00nwwjj2d2ym4s2kk217x7jkx1hnczc3fvm8yxbqmsp6b0nxfqd6")))) - (build-system python-build-system) - (propagated-inputs - `(("python-pygments" ,python-pygments))) - (home-page "https://alabaster.readthedocs.io/") - (synopsis "Configurable sidebar-enabled Sphinx theme") - (description "Alabaster is a visually (c)lean, responsive, configurable -theme for the Sphinx documentation system. It's the default theme of Sphinx.") - (license license:bsd-3))) - -(define-public python2-sphinx-alabaster-theme - (package-with-python2 python-sphinx-alabaster-theme)) - (define-public python-setproctitle (package (name "python-setproctitle") @@ -12276,30 +11993,6 @@ (define-public python-utils (define-public python2-utils (package-with-python2 python-utils)) -(define-public python-sphinx-me - (package - (name "python-sphinx-me") - (version "0.3") - (source - (origin - (method url-fetch) - (uri (pypi-uri "sphinx-me" version)) - (sha256 - (base32 - "06jzgp213zihnvpcy2y5jy3ykid3apc2ncp2pg6a2g05lhiziglq")))) - (build-system python-build-system) - (home-page "https://github.com/stephenmcd/sphinx-me") - (synopsis "Create a Sphinx documentation shell") - (description - "Create a Sphinx documentation shell for your project and include the -README file as the documentation index. It handles extracting the required -meta data such as the project name, author and version from your project for -use in your Sphinx docs.") - (license license:bsd-2))) - -(define-public python2-sphinx-me - (package-with-python2 python-sphinx-me)) - (define-public python-diff-match-patch (package (name "python-diff-match-patch") @@ -15678,25 +15371,6 @@ (define-public python-annoy processes may share the same data.") (license license:asl2.0))) -(define-public python-sphinxcontrib-svg2pdfconverter - (package - (name "python-sphinxcontrib-svg2pdfconverter") - (version "0.1.0") - (source (origin - (method url-fetch) - (uri (pypi-uri "sphinxcontrib-svg2pdfconverter" version)) - (sha256 - (base32 - "1abvbgkkii13q8nsb10r0gc5lm0p9iq1iwhfhakn5ifn6asa0183")))) - (build-system python-build-system) - (propagated-inputs - `(("python-sphinx" ,python-sphinx))) - (home-page "https://github.com/missinglinkelectronics/sphinxcontrib-svg2pdfconverter/releases") - (synopsis "Sphinx SVG to PDF converter extension") - (description "A Sphinx extension to convert SVG images to PDF in case the builder does not support -SVG images natively (e.g. LaTeX).") - (license license:bsd-3))) - (define-public python-pylzma (package (name "python-pylzma") diff --git a/gnu/packages/search.scm b/gnu/packages/search.scm index fe51900179..9b2876c359 100644 --- a/gnu/packages/search.scm +++ b/gnu/packages/search.scm @@ -41,6 +41,7 @@ (define-module (gnu packages search) #:use-module (gnu packages python) #:use-module (gnu packages python-web) #:use-module (gnu packages python-xyz) + #:use-module (gnu packages sphinx) #:use-module (gnu packages web) #:use-module (gnu packages xdisorg) #:use-module (gnu packages xml)) diff --git a/gnu/packages/sphinx.scm b/gnu/packages/sphinx.scm new file mode 100644 index 0000000000..28925a0492 --- /dev/null +++ b/gnu/packages/sphinx.scm @@ -0,0 +1,369 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2014 David Thompson +;;; Copyright © 2015, 2017 Ricardo Wurmus +;;; Copyright © 2015, 2016, 2017 Leo Famulari +;;; Copyright © 2016 Hartmut Goebel +;;; Copyright © 2016, 2017, 2018, 2019 Marius Bakke +;;; Copyright © 2017 Danny Milosavljevic +;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice +;;; Copyright © 2017 Frederick M. Muriithi +;;; Copyright © 2017 Christopher Allan Webber +;;; Copyright © 2017 Julien Lepiller +;;; Copyright © 2019 Efraim Flashner +;;; Copyright © 2019 Nicolas Goaziou +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu packages sphinx) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix build-system python) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (gnu packages) + #:use-module (gnu packages check) + #:use-module (gnu packages graphviz) + #:use-module (gnu packages image) + #:use-module (gnu packages imagemagick) + #:use-module (gnu packages python-web) + #:use-module (gnu packages python-xyz) + #:use-module (gnu packages time)) + +(define-public python-sphinx + (package + (name "python-sphinx") + (version "1.7.7") + (source + (origin + (method url-fetch) + (uri (pypi-uri "Sphinx" version)) + (sha256 + (base32 + "0pkkbfj7cl157q550gcs45am5y78ps0h7q6455d64s1zmw01jlvi")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda _ + ;; Requires Internet access. + (delete-file "tests/test_build_linkcheck.py") + (substitute* "tests/test_build_latex.py" + (("@pytest.mark.sphinx\\('latex', testroot='images'\\)") + "@pytest.mark.skip()")) + (when (which "python") + ;; XXX: These tests are broken when using Python2: + ;; . + (delete-file "tests/test_api_translator.py") + (delete-file "tests/test_setup_command.py")) + (invoke "make" "test")))))) + (propagated-inputs + `(("python-imagesize" ,python-imagesize) + ("python-sphinx-alabaster-theme" + ,python-sphinx-alabaster-theme) + ("python-babel" ,python-babel) + ("python-snowballstemmer" ,python-snowballstemmer) + ("python-docutils" ,python-docutils) + ("python-jinja2" ,python-jinja2) + ("python-packaging" ,python-packaging) + ("python-pygments" ,python-pygments) + ("python-requests" ,python-requests) + ("python-six" ,python-six) + ("python-sphinxcontrib-websupport" ,python-sphinxcontrib-websupport))) + (native-inputs + `(("graphviz" ,graphviz) + ("imagemagick" ,imagemagick) ;for "convert" + ("python-html5lib" ,python-html5lib) + ("python-mock" ,python-mock) + ("python-nose" ,python-nose) + ("python-pytest" ,python-pytest))) + (home-page "http://sphinx-doc.org/") + (synopsis "Python documentation generator") + (description "Sphinx is a tool that makes it easy to create documentation +for Python projects or other documents consisting of multiple reStructuredText +sources.") + (license license:bsd-3) + (properties `((python2-variant . ,(delay python2-sphinx)))))) + +(define-public python2-sphinx + (let ((base (package-with-python2 (strip-python2-variant python-sphinx)))) + (package + (inherit base) + (native-inputs `(("python2-mock" ,python2-mock) + ("python2-enum34" ,python2-enum34) + ,@(package-native-inputs base))) + (propagated-inputs `(("python2-pytz" ,python2-pytz) + ("python2-typing" ,python2-typing) + ,@(package-propagated-inputs base)))))) + +(define-public python-sphinxcontrib-newsfeed + (package + (name "python-sphinxcontrib-newsfeed") + (version "0.1.4") + (source (origin + (method url-fetch) + (uri (pypi-uri "sphinxcontrib-newsfeed" version)) + (sha256 + (base32 + "1d7gam3mn8v4in4p16yn3v10vps7nnaz6ilw99j4klij39dqd37p")))) + (arguments '(#:tests? #f)) ; No tests. + (build-system python-build-system) + (propagated-inputs + `(("python-sphinx" ,python-sphinx))) + (synopsis "News Feed extension for Sphinx") + (description "Sphinxcontrib-newsfeed is an extension for adding a simple +Blog, News or Announcements section to a Sphinx website.") + (home-page "https://bitbucket.org/prometheus/sphinxcontrib-newsfeed") + (license license:bsd-2))) + +(define-public python-sphinxcontrib-programoutput + (package + (name "python-sphinxcontrib-programoutput") + (version "0.10") + (source (origin + (method url-fetch) + (uri (pypi-uri "sphinxcontrib-programoutput" version)) + (sha256 + (base32 + "153hhnlbx4688zj9wd64819ps5znc2jlyp5crkgzvn5hxgy99vpx")))) + (build-system python-build-system) + (arguments + ;; FIXME: Many tests are failing and the upstream is gone. + '(#:tests? #f)) + (propagated-inputs + `(("python-sphinx" ,python-sphinx))) + (synopsis "Sphinx extension to include program output") + (description "A Sphinx extension to literally insert the output of arbitrary +commands into documents, helping you to keep your command examples up to date.") + (home-page "https://github.com/lunaryorn/sphinxcontrib-programoutput") + (license license:bsd-2))) + +(define-public python2-sphinxcontrib-programoutput + (package-with-python2 python-sphinxcontrib-programoutput)) + +(define-public python-sphinxcontrib-svg2pdfconverter + (package + (name "python-sphinxcontrib-svg2pdfconverter") + (version "0.1.0") + (source (origin + (method url-fetch) + (uri (pypi-uri "sphinxcontrib-svg2pdfconverter" version)) + (sha256 + (base32 + "1abvbgkkii13q8nsb10r0gc5lm0p9iq1iwhfhakn5ifn6asa0183")))) + (build-system python-build-system) + (propagated-inputs + `(("python-sphinx" ,python-sphinx))) + (home-page "https://github.com/missinglinkelectronics/sphinxcontrib-svg2pdfconverter/releases") + (synopsis "Sphinx SVG to PDF converter extension") + (description "A Sphinx extension to convert SVG images to PDF in case the builder does not support +SVG images natively (e.g. LaTeX).") + (license license:bsd-3))) + +(define-public python-sphinxcontrib-websupport + (package + (name "python-sphinxcontrib-websupport") + (version "1.1.0") + (source (origin + (method url-fetch) + (uri (pypi-uri "sphinxcontrib-websupport" version)) + (sha256 + (base32 + "1ff3ix76xi1y6m99qxhaq5161ix9swwzydilvdya07mgbcvpzr4x")))) + (build-system python-build-system) + (arguments + ;; FIXME: Tests depend on Sphinx, which depends on this. + `(#:tests? #f)) + (home-page "http://sphinx-doc.org/") + (synopsis "Sphinx API for web applications") + (description "This package provides a Python API to easily integrate +Sphinx documentation into your web application. It provides tools to +integrate Sphinx documents in web templates and to handle searches.") + (license license:bsd-3))) + +(define-public python2-sphinxcontrib-websupport + (package-with-python2 python-sphinxcontrib-websupport)) + +(define-public python-sphinx-gallery + (package + (name "python-sphinx-gallery") + (version "0.1.13") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/sphinx-gallery/sphinx-gallery" + "/archive/v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "03fs99mcb1r7qp0xixqv07vcz98sk21yq19ffdysi0infdcpzfkd")))) + (build-system python-build-system) + (arguments + ;; FIXME: Tests attempt to download , + ;; , and + ;; . + `(#:tests? #f)) + (native-inputs + `(("python-pytest-runner" ,python-pytest-runner))) + (home-page "https://sphinx-gallery.github.io/") + (synopsis "Generate an examples gallery automatically") + (description + "@code{sphinx_gallery} is a Sphinx extension that builds an HTML version +from any set of Python scripts and puts it into an examples gallery.") + (license license:bsd-3))) + +(define-public python2-sphinx-gallery + (package-with-python2 python-sphinx-gallery)) + +(define-public python-sphinx-me + (package + (name "python-sphinx-me") + (version "0.3") + (source + (origin + (method url-fetch) + (uri (pypi-uri "sphinx-me" version)) + (sha256 + (base32 + "06jzgp213zihnvpcy2y5jy3ykid3apc2ncp2pg6a2g05lhiziglq")))) + (build-system python-build-system) + (home-page "https://github.com/stephenmcd/sphinx-me") + (synopsis "Create a Sphinx documentation shell") + (description + "Create a Sphinx documentation shell for your project and include the +README file as the documentation index. It handles extracting the required +meta data such as the project name, author and version from your project for +use in your Sphinx docs.") + (license license:bsd-2))) + +(define-public python2-sphinx-me + (package-with-python2 python-sphinx-me)) + +(define-public python-sphinx-repoze-autointerface + (package + (name "python-sphinx-repoze-autointerface") + (version "0.8") + (source (origin + (method url-fetch) + (uri (pypi-uri "repoze.sphinx.autointerface" version)) + (sha256 + (base32 + "08ycivzf7bh4a1zcyp31hbyqs1b2c9r26raa3vxjwwmbfqr3iw4f")))) + (build-system python-build-system) + (arguments '(#:tests? #f)) ; No tests. + (propagated-inputs + `(("python-sphinx" ,python-sphinx) + ("python-zope-interface" ,python-zope-interface))) + (synopsis "Auto-generate Sphinx API docs from Zope interfaces") + (description "This package defines an extension for the Sphinx documentation +system. The extension allows generation of API documentation by +introspection of @code{zope.interface} instances in code.") + (home-page "https://github.com/repoze/repoze.sphinx.autointerface") + (license license:repoze))) + +(define-public python2-sphinx-repoze-autointerface + (package-with-python2 python-sphinx-repoze-autointerface)) + +(define-public python-sphinx-alabaster-theme + (package + (name "python-sphinx-alabaster-theme") + (version "0.7.12") + (source (origin + (method url-fetch) + (uri (pypi-uri "alabaster" version)) + (sha256 + (base32 + "00nwwjj2d2ym4s2kk217x7jkx1hnczc3fvm8yxbqmsp6b0nxfqd6")))) + (build-system python-build-system) + (propagated-inputs + `(("python-pygments" ,python-pygments))) + (home-page "https://alabaster.readthedocs.io/") + (synopsis "Configurable sidebar-enabled Sphinx theme") + (description "Alabaster is a visually (c)lean, responsive, configurable +theme for the Sphinx documentation system. It's the default theme of Sphinx.") + (license license:bsd-3))) + +(define-public python2-sphinx-alabaster-theme + (package-with-python2 python-sphinx-alabaster-theme)) + +(define-public python-sphinx-cloud-sptheme + (package + (name "python-sphinx-cloud-sptheme") + (version "1.8.0") + (source (origin + (method url-fetch) + (uri (pypi-uri "cloud_sptheme" version)) + (sha256 + (base32 + "1dniqb6a39yh786f86c4jn666rwnyi1jvzn4616zhcchb7sfdshd")))) + (build-system python-build-system) + ;; FIXME: The 'pypi' release archive does not contain tests. + (arguments '(#:tests? #f)) + (native-inputs + `(("python-sphinx" ,python-sphinx))) + (home-page "https://bitbucket.org/ecollins/cloud_sptheme") + (synopsis "'Cloud' theme for Sphinx documenter") + (description "This package contains the \"Cloud\" theme for Sphinx and some +related extensions.") + (license license:bsd-3))) + +(define-public python2-sphinx-cloud-sptheme + (package-with-python2 python-sphinx-cloud-sptheme)) + +(define-public python-guzzle-sphinx-theme + (package + (name "python-guzzle-sphinx-theme") + (version "0.7.11") + (source + (origin + (method url-fetch) + (uri (pypi-uri "guzzle_sphinx_theme" version)) + (sha256 + (base32 + "1rnkzrrsbnifn3vsb4pfaia3nlvgvw6ndpxp7lzjrh23qcwid34v")))) + (build-system python-build-system) + (propagated-inputs + `(("python-sphinx" ,python-sphinx))) + (home-page "https://github.com/guzzle/guzzle_sphinx_theme") + (synopsis "Sphinx theme used by Guzzle") + (description "This package provides guzzle_sphinx_theme, a theme for the +Sphinx documentation system, used by @uref{http://docs.guzzlephp.org, Guzzle} +and several other projects.") + (license license:expat))) + +(define-public python2-guzzle-sphinx-theme + (package-with-python2 python-guzzle-sphinx-theme)) + +(define-public python-sphinx-rtd-theme + (package + (name "python-sphinx-rtd-theme") + (version "0.2.4") + (source + (origin + (method url-fetch) + (uri (pypi-uri "sphinx_rtd_theme" version)) + (sha256 + (base32 + "05rlhjzdyapr2w74jjs7mrm8hi69qskcr5vya9f9drpsys7lpxrd")))) + (build-system python-build-system) + (arguments '(#:tests? #f)) ; No tests. + (propagated-inputs + `(("python-sphinx" ,python-sphinx))) + (home-page "https://github.com/snide/sphinx_rtd_theme/") + (synopsis "ReadTheDocs.org theme for Sphinx") + (description "A theme for Sphinx used by ReadTheDocs.org.") + (license license:expat))) + +(define-public python2-sphinx-rtd-theme + (package-with-python2 python-sphinx-rtd-theme)) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 277fb2b334..06f0aa1e75 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -66,6 +66,7 @@ (define-module (gnu packages statistics) #:use-module (gnu packages python) #:use-module (gnu packages python-xyz) #:use-module (gnu packages readline) + #:use-module (gnu packages sphinx) #:use-module (gnu packages ssh) #:use-module (gnu packages tcl) #:use-module (gnu packages tex) diff --git a/gnu/packages/storage.scm b/gnu/packages/storage.scm index 9e7cd10918..503433be10 100644 --- a/gnu/packages/storage.scm +++ b/gnu/packages/storage.scm @@ -47,6 +47,7 @@ (define-module (gnu packages storage) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) #:use-module (gnu packages python-xyz) + #:use-module (gnu packages sphinx) #:use-module (gnu packages tls) #:use-module (gnu packages web) #:use-module (gnu packages xml)) diff --git a/gnu/packages/sync.scm b/gnu/packages/sync.scm index 136ffec9e7..51ed0317bc 100644 --- a/gnu/packages/sync.scm +++ b/gnu/packages/sync.scm @@ -37,11 +37,11 @@ (define-module (gnu packages sync) #:use-module (gnu packages linux) #:use-module (gnu packages lua) #:use-module (gnu packages perl) - #:use-module (gnu packages python-xyz) #:use-module (gnu packages pkg-config) #:use-module (gnu packages qt) #:use-module (gnu packages rsync) #:use-module (gnu packages selinux) + #:use-module (gnu packages sphinx) #:use-module (gnu packages sqlite) #:use-module (gnu packages tls)) diff --git a/gnu/packages/terminals.scm b/gnu/packages/terminals.scm index 88bc992289..84454b2e0e 100644 --- a/gnu/packages/terminals.scm +++ b/gnu/packages/terminals.scm @@ -69,6 +69,7 @@ (define-module (gnu packages terminals) #:use-module (gnu packages python-xyz) #:use-module (gnu packages qt) #:use-module (gnu packages serialization) + #:use-module (gnu packages sphinx) #:use-module (gnu packages ssh) #:use-module (gnu packages textutils) #:use-module (gnu packages xdisorg) diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 7642935960..bb82efba5d 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -59,6 +59,7 @@ (define-module (gnu packages tls) #:use-module (gnu packages python-crypto) #:use-module (gnu packages python-web) #:use-module (gnu packages python-xyz) + #:use-module (gnu packages sphinx) #:use-module (gnu packages texinfo) #:use-module (gnu packages time) #:use-module (gnu packages base) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index e5f824d0af..86109ab77a 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -74,6 +74,7 @@ (define-module (gnu packages web) #:use-module (gnu packages docbook) #:use-module (gnu packages autotools) #:use-module (gnu packages compression) + #:use-module (gnu packages curl) #:use-module (gnu packages cyrus-sasl) #:use-module (gnu packages databases) #:use-module (gnu packages bison) @@ -116,13 +117,13 @@ (define-module (gnu packages web) #:use-module (gnu packages pkg-config) #:use-module (gnu packages qt) #:use-module (gnu packages readline) - #:use-module (gnu packages valgrind) - #:use-module (gnu packages xml) - #:use-module (gnu packages curl) + #:use-module (gnu packages sphinx) #:use-module (gnu packages texinfo) #:use-module (gnu packages textutils) #:use-module (gnu packages tls) - #:use-module (gnu packages version-control)) + #:use-module (gnu packages valgrind) + #:use-module (gnu packages version-control) + #:use-module (gnu packages xml)) (define-public httpd (package