summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2022-04-20 23:55:07 -0400
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2022-05-12 12:45:49 -0400
commit5fdae311a0a5beaff5f048001f56ff0fa7d05e4c (patch)
treeee65dc935708f5862eb45b9daaca54d3e4e38f37 /gnu
parentcf44f00b5b64ef7908629e049561f58aadc407d9 (diff)
downloadguix-5fdae311a0a5beaff5f048001f56ff0fa7d05e4c.tar.gz
gnu: Add texlive-xindy.
* gnu/packages/tex.scm (texlive-xindy): New variable.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/tex.scm50
1 files changed, 50 insertions, 0 deletions
diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm
index 994f03987e..9f8fdbafdc 100644
--- a/gnu/packages/tex.scm
+++ b/gnu/packages/tex.scm
@@ -50,6 +50,7 @@
   #:use-module (guix build-system texlive)
   #:use-module (guix utils)
   #:use-module (guix deprecation)
+  #:use-module (guix gexp)
   #:use-module (guix git-download)
   #:use-module (guix svn-download)
   #:use-module (gnu packages)
@@ -58,6 +59,7 @@
   #:use-module (gnu packages bash)
   #:use-module (gnu packages boost)
   #:use-module (gnu packages compression)
+  #:use-module (gnu packages lisp)
   #:use-module (gnu packages fonts)
   #:use-module (gnu packages fontutils)
   #:use-module (gnu packages gd)
@@ -10820,6 +10822,54 @@ the package @code{calc}, together with the ability of defining new commands to
 handle complex tests.")
     (license license:lppl)))
 
+(define-public texlive-xindy
+  (package
+    (name "texlive-xindy")
+    (version "2.5.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://ctan/indexing/xindy/base/xindy-"
+                                  version ".tar.gz"))
+              (sha256
+               (base32
+                "0hxsx4zw19kmixkmrln17sxgg1ln4pfp4lpfn5v5fyr1nwfyk3ic"))))
+    (build-system gnu-build-system)
+    (arguments
+     (list
+      #:configure-flags #~(list "--enable-docs")
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'unpack 'patch-clisp
+            (lambda* (#:key inputs #:allow-other-keys)
+              ;; The xindy.in file is encoded in ISO-8859-1 (or iso-latin-1).
+              (with-fluids ((%default-port-encoding "ISO-8859-1"))
+                (substitute* "user-commands/xindy.in"
+                  (("(our \\$clisp = ).*" _ head)
+                   (format #f "our $clisp = ~s;~%"
+                           (search-input-file inputs "bin/clisp"))))))))))
+    (native-inputs (list clisp
+                         glibc-locales
+                         perl
+                         texlive-bin
+                         texlive-greek-fontenc
+                         texlive-hyperref
+                         texlive-latex-base
+                         texlive-latex-cyrillic
+                         texlive-latex-geometry
+                         (texlive-updmap.cfg ;fonts
+                          (list texlive-cbfonts
+                                texlive-lh
+                                texlive-jknappen))))
+    (inputs (list clisp perl))          ;used at run time
+    (home-page "https://www.ctan.org/pkg/xindy")
+    (synopsis "General-purpose index processor")
+    (description "Xindy was developed after an impasse had been encountered in
+the attempt to complete internationalisation of @command{makeindex}.  Xindy
+can be used to process indexes for documents marked up using (La)TeX, Nroff
+family and SGML-based languages.  Xindy is highly configurable, both in markup
+terms and in terms of the collating order of the text being processed.")
+    (license license:gpl2+)))
+
 (define-public bibtool
   (package
     (name "bibtool")