guix-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug#61915] [PATCH v2 04/13] gnu: agda: Build info manual.


From: Josselin Poiret
Subject: [bug#61915] [PATCH v2 04/13] gnu: agda: Build info manual.
Date: Sun, 30 Apr 2023 12:53:14 +0200

From: Josselin Poiret <dev@jpoiret.xyz>

* gnu/packages/agda.scm (agda): Build the user manual as an info manual.
---
 gnu/packages/agda.scm | 21 ++++++++++++++++++++-
 1 file changed, 20 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/agda.scm b/gnu/packages/agda.scm
index 252193de90..eba48da0ff 100644
--- a/gnu/packages/agda.scm
+++ b/gnu/packages/agda.scm
@@ -25,6 +25,10 @@ (define-module (gnu packages agda)
   #: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)
@@ -72,6 +76,12 @@ (define-public agda
            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)
@@ -88,7 +98,16 @@ (define-public agda
                    (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")
-- 
2.39.2






reply via email to

[Prev in Thread] Current Thread [Next in Thread]