From e7a53914f15fa0e86ec583b115aca9e4ff6c69a3 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 4 Mar 2019 13:54:47 +0100 Subject: [PATCH] gnu: python-matplotlib-documentation: Fix build. * gnu/packages/python-xyz.scm (python-matplotlib-documentation) [native-inputs]: Add python-ipykernel; replace texlive with a texlive-union consisting of texlive-latex-amsfonts, texlive-latex-amsmath, texlive-latex-enumitem, texlive-latex-expdlist, texlive-latex-preview, texlive-latex-type1cm, texlive-latex-ucs, texlive-generic-pdftex, texlive-fonts-amsfonts, texlive-fonts-ec, texlive-fonts-adobe-times, and texlive-fonts-txfonts. [arguments]: Do not build PDF, remove PDF-related changes; patch to avoid dependency on network resources. --- gnu/packages/python-xyz.scm | 51 ++++++++++++++++++++++++++----------- 1 file changed, 36 insertions(+), 15 deletions(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index f6c217f346..09c7e2db38 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -3537,9 +3537,24 @@ toolkits.") ("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) + ("texlive" ,(texlive-union (list texlive-latex-amsfonts + texlive-latex-amsmath + texlive-latex-enumitem + texlive-latex-expdlist + texlive-latex-geometry + texlive-latex-preview + texlive-latex-type1cm + texlive-latex-ucs + + texlive-generic-pdftex + + texlive-fonts-amsfonts + texlive-fonts-ec + texlive-fonts-adobe-times + texlive-fonts-txfonts))) ("texinfo" ,texinfo) ,@(package-native-inputs python-matplotlib))) (arguments @@ -3549,15 +3564,24 @@ toolkits.") (replace 'build (lambda _ (chdir "doc") - ;; Produce pdf in 'A4' format. + (setenv "PYTHONPATH" + (string-append (getenv "PYTHONPATH") + ":" (getcwd) "/../examples/units")) (substitute* "conf.py" - (("latex_paper_size = 'letter'") "") - ;; latex_paper_size is deprecated -> set paper size using - ;; latex_elements - (("latex_elements\\['pointsize'\\] = '11pt'" match) - ;; insert at a point where latex_elements{} is defined: - (string-append match "\nlatex_elements['papersize'] = 'a4paper'"))) - (invoke "make" "SPHINXBUILD=sphinx-build" "html" "latex" "texinfo"))) + ;; 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")) @@ -3575,12 +3599,9 @@ toolkits.") (string-append "@image{matplotlib-figures/" file))) (symlink (string-append html "/_images") "./matplotlib-figures") - (system* "makeinfo" "--no-split" - "-o" "matplotlib.info" "matplotlib.texi")) - (copy-file "build/texinfo/matplotlib.info" - (string-append info "/matplotlib.info")) - (copy-file "build/latex/Matplotlib.pdf" - (string-append doc "/Matplotlib.pdf"))) + (invoke "makeinfo" "--no-split" + "-o" "matplotlib.info" "matplotlib.texi")) + (install-file "build/texinfo/matplotlib.info" info)) #t))))) (home-page (package-home-page python-matplotlib)) (synopsis "Documentation for the python-matplotlib package")