From f9263d9a90e457431ed895e7d20e1a45fb4f2323 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 5 Feb 2016 03:20:44 -0500 Subject: [PATCH] gnu: letsencrypt: Generate and install documentation. * gnu/packages/tls.scm (letsencrypt)[arguments]: Add 'docs' phase. [native-inputs]: Add python2-sphinx, python2-sphinx-rtd-theme, python2-sphinx-repoze-autointerface, python2-sphinxcontrib-programoutput, texinfo. --- gnu/packages/tls.scm | 29 ++++++++++++++++++++++++++--- 1 file changed, 26 insertions(+), 3 deletions(-) diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 0f6a0b5877..ba259c9434 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -375,11 +375,34 @@ (define-public letsencrypt "1wwq8yvfdybf4d0gv4yfddkrg865s7rhng5xg563kks4wza1a2wp")))) (build-system python-build-system) (arguments - `(#:python ,python-2)) - ;; TODO: Add optional inputs for testing building documentation. + `(#:python ,python-2 + #:phases + (modify-phases %standard-phases + (add-after 'install 'docs + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (man1 (string-append out "/share/man/man1")) + (man7 (string-append out "/share/man/man7")) + (info (string-append out "/info"))) + (substitute* "docs/man/letsencrypt.rst" + (("letsencrypt --help all") + (string-append out "/bin/letsencrypt" " --help all"))) + (and + (zero? (system* "make" "-C" "docs" "man" "info")) + (install-file "docs/_build/texinfo/LetsEncrypt.info" info) + (install-file "docs/_build/man/letsencrypt.1" man1) + (install-file "docs/_build/man/letsencrypt.7" man7) + #t))))))) + ;; TODO: Add optional inputs for testing. (native-inputs `(("python2-nose" ,python2-nose) - ("python2-mock" ,python2-mock))) + ("python2-mock" ,python2-mock) + ;; For documentation + ("python2-sphinx" ,python2-sphinx) + ("python2-sphinx-rtd-theme" ,python2-sphinx-rtd-theme) + ("python2-sphinx-repoze-autointerface" ,python2-sphinx-repoze-autointerface) + ("python2-sphinxcontrib-programoutput" ,python2-sphinxcontrib-programoutput) + ("texinfo" ,texinfo))) (propagated-inputs `(("python2-acme" ,python2-acme) ("python2-zope-interface" ,python2-zope-interface)