[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
232/242: gnu: python-matplotlib-documentation: Fix build.
From: |
guix-commits |
Subject: |
232/242: gnu: python-matplotlib-documentation: Fix build. |
Date: |
Wed, 11 May 2022 18:03:31 -0400 (EDT) |
apteryx pushed a commit to branch wip-ipython-polyglossia
in repository guix.
commit 6c0597f263c7d5bd7b653003bd6619714fed3a02
Author: Maxim Cournoyer <maxim.cournoyer@gmail.com>
AuthorDate: Sat Apr 23 23:48:31 2022 -0400
gnu: python-matplotlib-documentation: Fix build.
* gnu/packages/python-xyz.scm (python-matplotlib-documentation): Inherit
from
python-matplotlib.
[version, source, build-system, home-page, description, license]: Delete
fields, now inherited.
[phases]: Streamline build and install phases and enable parallel build.
[native-inputs]: Use new style. Remove python-matplotlib, python-ipykernel,
python-mock, texlive-enumitem, texlive-latex-geometry,
texlive-latex-preview,
texlive-latex-ucs, texlive-pdftex, texlive-fonts-ec, texlive-txfonts and
inherited python-matplotlib packages.
Add inkscape, python-mpl-sphinx-theme, python-scipy, python-ipywidgets,
texlive-babel, texlive-fontspec, texlive-unicode-math, texlive-etoolbox,
and texlive-underscore.
---
gnu/packages/python-xyz.scm | 138 +++++++++++++++++++-------------------------
1 file changed, 58 insertions(+), 80 deletions(-)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 93c6886109..46dae5dd8f 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -6790,87 +6790,65 @@ toolkits.")
(define-public python-matplotlib-documentation
(package
+ (inherit python-matplotlib)
(name "python-matplotlib-documentation")
- (version (package-version python-matplotlib))
- (source (package-source python-matplotlib))
- (build-system python-build-system)
- (native-inputs
- `(("python-matplotlib" ,python-matplotlib)
- ("python-colorspacious" ,python-colorspacious)
- ("python-sphinx" ,python-sphinx)
- ("python-sphinx-copybutton" ,python-sphinx-copybutton)
- ("python-sphinx-gallery" ,python-sphinx-gallery)
- ("python-numpydoc" ,python-numpydoc)
- ("python-ipython" ,python-ipython)
- ("python-ipykernel" ,python-ipykernel)
- ("python-mock" ,python-mock)
- ("graphviz" ,graphviz)
- ("texlive" ,(texlive-updmap.cfg (list texlive-amsfonts
- texlive-enumitem
- texlive-latex-amsmath
- texlive-latex-expdlist
- texlive-latex-geometry
- texlive-latex-preview
- texlive-latex-type1cm
- texlive-latex-ucs
-
- texlive-pdftex
-
- texlive-fonts-ec
- texlive-times
- texlive-txfonts)))
- ("texinfo" ,texinfo)
- ,@(package-native-inputs python-matplotlib)))
- (arguments
- `(#:tests? #f ; we're only generating documentation
- #:phases
- (modify-phases %standard-phases
- ;; The tests in python-matplotlib are run after the install phase, so
- ;; we need to delete the extra phase here.
- (delete 'check)
- (replace 'build
- (lambda _
- (chdir "doc")
- (setenv "PYTHONPATH" "../examples/units")
- (substitute* "conf.py"
- ;; Don't use git.
- (("^SHA = check_output.*")
- (string-append "SHA = \"" ,version "\"\n"))
- ;; Don't fetch intersphinx files from the Internet
- (("^explicit_order_folders" m)
- (string-append "intersphinx_mapping = {}\n" m))
- (("'sphinx.ext.intersphinx',") "")
- ;; Disable URL embedding which requires internet access.
- (("'https://docs.scipy.org/doc/numpy'") "None")
- (("'https://docs.scipy.org/doc/scipy/reference'") "None"))
- (invoke "make"
- "SPHINXBUILD=sphinx-build"
- "SPHINXOPTS=" ; don't abort on warnings
- "html" "texinfo")))
- (replace 'install
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let* ((data (string-append (assoc-ref outputs "out") "/share"))
- (doc (string-append data "/doc/python-matplotlib-"
,version))
- (info (string-append data "/info"))
- (html (string-append doc "/html")))
- (mkdir-p html)
- (mkdir-p info)
- (copy-recursively "build/html" html)
- (symlink (string-append html "/_images")
- (string-append info "/matplotlib-figures"))
- (with-directory-excursion "build/texinfo"
- (substitute* "matplotlib.texi"
- (("@image\\{([^,]*)" all file)
- (string-append "@image{matplotlib-figures/" file)))
- (symlink (string-append html "/_images")
- "./matplotlib-figures")
- (invoke "makeinfo" "--no-split"
- "-o" "matplotlib.info" "matplotlib.texi"))
- (install-file "build/texinfo/matplotlib.info" info)))))))
- (home-page (package-home-page python-matplotlib))
- (synopsis "Documentation for the python-matplotlib package")
- (description (package-description python-matplotlib))
- (license (package-license python-matplotlib))))
+ (arguments
+ (list
+ #:tests? #f ;we're only generating documentation
+ #:phases
+ #~(modify-phases %standard-phases
+ (replace 'build
+ (lambda _
+ (setenv "HOME" "/tmp")
+ (chdir "doc")
+ (substitute* "conf.py"
+ ;; The sphinx_panels extension causes a "TypeError: first
+ ;; argument must be callable" to be raised when generating the
+ ;; info target; remove it (see:
+ ;; https://github.com/executablebooks/sphinx-panels/issues/74).
+ ((".*'sphinx_panels',.*") ""))
+ (invoke "make" "html" "info"
+ ;; Don't abort on warnings; build in parallel.
+ (format #f "SPHINXOPTS=-j~a" (parallel-job-count)))))
+ (replace 'install
+ (lambda _
+ (let* ((data (string-append #$output "/share"))
+ (doc (string-append data "/doc/matplotlib"))
+ (info (string-append data "/info"))
+ (html (string-append doc "/html")))
+ (mkdir-p html)
+ (copy-recursively "build/html" html)
+ (install-file "build/texinfo/matplotlib.info" info)
+ ;; The "matplotlib-figures" directory contains are a subset of
+ ;; the images produced for the html target; simply create a
+ ;; symlink to it, saving about 11 MiB.
+ (symlink (string-append html "/_images")
+ (string-append info "/matplotlib-figures"))))))))
+ (native-inputs
+ (list graphviz
+ inkscape
+ python-colorspacious
+ python-mpl-sphinx-theme
+ python-scipy
+ python-sphinx
+ python-sphinx-copybutton
+ python-sphinx-gallery
+ python-sphinxcontrib-svg2pdfconverter
+ python-numpydoc
+ python-ipython
+ python-ipywidgets
+ texlive-amsfonts
+ texlive-amsmath
+ texlive-babel
+ texlive-fontspec
+ texlive-unicode-math
+ texlive-etoolbox
+ texlive-latex-expdlist
+ texlive-underscore
+ texlive-latex-type1cm
+ texlive-times
+ texinfo))
+ (synopsis "Documentation for the @code{python-matplotlib} package")))
(define-public python-matplotlib-inline
(package
- 218/242: gnu: python-sphinxcontrib-websupport: Update to 1.2.4., (continued)
- 218/242: gnu: python-sphinxcontrib-websupport: Update to 1.2.4., guix-commits, 2022/05/11
- 233/242: gnu: python-qtpy: Update to 2.0.1., guix-commits, 2022/05/11
- 229/242: gnu: python-pudb: Update to 2022.1.1 and rename from pudb., guix-commits, 2022/05/11
- 219/242: gnu: python-sphinxcontrib-programoutput: Update to 0.17 and enable tests., guix-commits, 2022/05/11
- 231/242: gnu: Add texlive-underscore., guix-commits, 2022/05/11
- 216/242: gnu: python-sphinx-copybutton: Update to 0.5.0., guix-commits, 2022/05/11
- 226/242: gnu: python-sphinx-rtd-theme: Update to 1.0.0., guix-commits, 2022/05/11
- 238/242: gnu: python-multidict: Update to 5.2.0., guix-commits, 2022/05/11
- 242/242: gnu: python-sanic: Update to 21.12.1., guix-commits, 2022/05/11
- 227/242: gnu: python-numpy-documentation: Overhaul package definition., guix-commits, 2022/05/11
- 232/242: gnu: python-matplotlib-documentation: Fix build.,
guix-commits <=
- 235/242: gnu: python-pygments: Update to 2.12.0., guix-commits, 2022/05/11
- 222/242: gnu: Add python-beartype., guix-commits, 2022/05/11