summary refs log tree commit diff
path: root/gnu/packages
diff options
context:
space:
mode:
authorJosselin Poiret <dev@jpoiret.xyz>2023-03-01 16:34:59 +0100
committerJosselin Poiret <dev@jpoiret.xyz>2023-06-04 10:59:31 +0200
commit789db27c51501e77ac7be0411e1f979234cf02f5 (patch)
tree56c883c20bc7b5a2ec353066fd1d2497f60c2fab /gnu/packages
parentaf5d228b1303989812e48093769715fd19df5042 (diff)
downloadguix-789db27c51501e77ac7be0411e1f979234cf02f5.tar.gz
gnu: agda: Build info manual.
* gnu/packages/agda.scm (agda): Build the user manual as an info manual.
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/agda.scm21
1 files changed, 20 insertions, 1 deletions
diff --git a/gnu/packages/agda.scm b/gnu/packages/agda.scm
index fc1085ec09..7a28f69a0d 100644
--- a/gnu/packages/agda.scm
+++ b/gnu/packages/agda.scm
@@ -26,6 +26,10 @@
   #:use-module (gnu packages haskell-check)
   #:use-module (gnu packages haskell-web)
   #:use-module (gnu packages haskell-xyz)
+  #:use-module (gnu packages imagemagick)
+  #:use-module (gnu packages python)
+  #:use-module (gnu packages sphinx)
+  #:use-module (gnu packages texinfo)
   #:use-module (guix build-system emacs)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system haskell)
@@ -73,6 +77,12 @@
            ghc-uri-encode
            ghc-vector-hashtables
            ghc-zlib))
+    (native-inputs
+     (list python
+           python-sphinx
+           python-sphinx-rtd-theme
+           texinfo
+           imagemagick))
     (arguments
      (list #:modules `((guix build haskell-build-system)
                        (guix build utils)
@@ -89,7 +99,16 @@
                    (let ((agda-compiler (string-append #$output "/bin/agda")))
                      (for-each (cut invoke agda-compiler <>)
                                (find-files (string-append #$output "/share")
-                                           "\\.agda$"))))))))
+                                           "\\.agda$")))))
+               (add-after 'agda-compile 'install-info
+                 (lambda _
+                   (with-directory-excursion "doc/user-manual"
+                     (invoke "sphinx-build" "-b" "texinfo"
+                             "." "_build_texinfo")
+                     (with-directory-excursion "_build_texinfo"
+                       (setenv "infodir" (string-append #$output
+                                                        "/share/info"))
+                       (invoke "make" "install-info"))))))))
     (home-page "https://wiki.portal.chalmers.se/agda/")
     (synopsis
      "Dependently typed functional programming language and proof assistant")