summary refs log tree commit diff
path: root/gnu/packages/tex.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/tex.scm')
-rw-r--r--gnu/packages/tex.scm219
1 files changed, 112 insertions, 107 deletions
diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm
index db1f120ce6..64d21da6e9 100644
--- a/gnu/packages/tex.scm
+++ b/gnu/packages/tex.scm
@@ -196,7 +196,7 @@
                (with-directory-excursion "texlive-extra"
                  (apply unpack (list #:source texlive-extra))
                  (apply patch-source-shebangs (list #:source texlive-extra))
-                 (system* "mv" "tlpkg" share))))))))
+                 (invoke "mv" "tlpkg" share))))))))
    (synopsis "TeX Live, a package of the TeX typesetting system")
    (description
     "TeX Live provides a comprehensive TeX document production system.
@@ -475,7 +475,7 @@ converters, will completely supplant the older patterns.")
                                       cwd "/config")))
              (mkdir "build")
              (with-directory-excursion "build"
-               (zero? (system* "inimf" "mf.mf")))))
+               (invoke "inimf" "mf.mf"))))
          (replace 'install
            (lambda* (#:key outputs #:allow-other-keys)
              (let* ((out  (assoc-ref outputs "out"))
@@ -563,17 +563,18 @@ documents.")
                        (string-append (getcwd) ":"
                                       mf "/share/texmf-dist/metafont/base")))
              (mkdir "build")
-             (every (lambda (font)
-                      (format #t "building font ~a\n" font)
-                      (zero? (system* "mf" "-progname=mf"
-                                      "-output-directory=build"
-                                      (string-append "\\"
-                                                     "mode:=ljfour; "
-                                                     "mag:=1; "
-                                                     "batchmode; "
-                                                     "input "
-                                                     (basename font ".mf")))))
-                    (find-files "." "cm(.*[0-9]+.*|inch)\\.mf$"))))
+             (for-each (lambda (font)
+                         (format #t "building font ~a\n" font)
+                         (invoke "mf" "-progname=mf"
+                                 "-output-directory=build"
+                                 (string-append "\\"
+                                                "mode:=ljfour; "
+                                                "mag:=1; "
+                                                "batchmode; "
+                                                "input "
+                                                (basename font ".mf"))))
+                       (find-files "." "cm(.*[0-9]+.*|inch)\\.mf$"))
+             #t))
          (replace 'install
            (lambda* (#:key outputs #:allow-other-keys)
              (let* ((out (assoc-ref outputs "out"))
@@ -632,13 +633,13 @@ display, and mathematical fonts in a range of styles, based on Monotype Modern
                        (string-append (getcwd) ":"
                                       mf "/share/texmf-dist/metafont/base")))
              (mkdir "build")
-             (zero? (system* "mf" "-progname=mf"
-                             "-output-directory=build"
-                             (string-append "\\"
-                                            "mode:=ljfour; "
-                                            "mag:=1; "
-                                            "batchmode; "
-                                            "input manfnt")))))
+             (invoke "mf" "-progname=mf"
+                     "-output-directory=build"
+                     (string-append "\\"
+                                    "mode:=ljfour; "
+                                    "mag:=1; "
+                                    "batchmode; "
+                                    "input manfnt"))))
          (replace 'install
            (lambda* (#:key outputs #:allow-other-keys)
              (let* ((out (assoc-ref outputs "out"))
@@ -698,20 +699,21 @@ fonts.")
                                       (assoc-ref inputs "texlive-fonts-cm")
                                       "/share/texmf-dist/fonts/source/public/cm")))
              (mkdir "build")
-             (every (lambda (font)
-                      (format #t "building font ~a\n" font)
-                      (zero? (system* "mf" "-progname=mf"
-                                      "-output-directory=build"
-                                      (string-append "\\"
-                                                     "mode:=ljfour; "
-                                                     "mag:=1; "
-                                                     "batchmode; "
-                                                     "input " font))))
-                    '("icmcsc10" "icmex10" "icmmi8" "icmsy8" "icmtt8"
-                      "ilasy8" "ilcmss8" "ilcmssb8" "ilcmssi8"
-                      "lasy5" "lasy6" "lasy7" "lasy8" "lasy9" "lasy10" "lasyb10"
-                      "lcircle10" "lcirclew10" "lcmss8" "lcmssb8" "lcmssi8"
-                      "line10" "linew10"))))
+             (for-each (lambda (font)
+                         (format #t "building font ~a\n" font)
+                         (invoke "mf" "-progname=mf"
+                                 "-output-directory=build"
+                                 (string-append "\\"
+                                                "mode:=ljfour; "
+                                                "mag:=1; "
+                                                "batchmode; "
+                                                "input " font)))
+                       '("icmcsc10" "icmex10" "icmmi8" "icmsy8" "icmtt8"
+                         "ilasy8" "ilcmss8" "ilcmssb8" "ilcmssi8"
+                         "lasy5" "lasy6" "lasy7" "lasy8" "lasy9" "lasy10" "lasyb10"
+                         "lcircle10" "lcirclew10" "lcmss8" "lcmssb8" "lcmssi8"
+                         "line10" "linew10"))
+             #t))
          (replace 'install
            (lambda* (#:key outputs #:allow-other-keys)
              (let* ((out (assoc-ref outputs "out"))
@@ -780,19 +782,20 @@ symbol fonts.")
                                       (assoc-ref inputs "texlive-fonts-cm")
                                       "/share/texmf-dist/fonts/source/public/cm")))
              (mkdir "build")
-             (every (lambda (font)
-                      (format #t "building font ~a\n" (basename font ".mf"))
-                      (with-directory-excursion (dirname font)
-                        (zero? (system* "mf" "-progname=mf"
-                                        "-output-directory=../build"
-                                        (string-append "\\"
-                                                       "mode:=ljfour; "
-                                                       "mag:=1; "
-                                                       "nonstopmode; "
-                                                       "input "
-                                                       (getcwd) "/"
-                                                       (basename font ".mf"))))))
-                    (find-files "." "[0-9]+\\.mf$"))))
+             (for-each (lambda (font)
+                         (format #t "building font ~a\n" (basename font ".mf"))
+                         (with-directory-excursion (dirname font)
+                           (invoke "mf" "-progname=mf"
+                                   "-output-directory=../build"
+                                   (string-append "\\"
+                                                  "mode:=ljfour; "
+                                                  "mag:=1; "
+                                                  "nonstopmode; "
+                                                  "input "
+                                                  (getcwd) "/"
+                                                  (basename font ".mf")))))
+                       (find-files "." "[0-9]+\\.mf$"))
+             #t))
          (replace 'install
            (lambda* (#:key outputs #:allow-other-keys)
              (let* ((out (assoc-ref outputs "out"))
@@ -953,37 +956,35 @@ book).")
 
                (mkdir "build")
                (mkdir "web2c")
-               (and (invoke "luatex" "-ini" "-interaction=batchmode"
-                            "-output-directory=build" "unpack.ins")
-                    (invoke "tex" "-ini" "-interaction=batchmode"
-                            "-output-directory=web2c" "tex.ini")
-                    ;; LaTeX, pdfetex/pdftex, and XeTeX require e-TeX, which
-                    ;; is enabled only in extended mode (activated with a
-                    ;; leading asterisk).  We should not use luatex here,
-                    ;; because that would make the generated format files
-                    ;; incompatible with any other TeX engine.
-                    (every
-                     (lambda (format)
-                       (invoke "latex" "-ini" "-interaction=batchmode"
-                               "-output-directory=web2c"
-                               "-translate-file=cp227.tcx"
-                               (string-append "*" format ".ini")))
-                     '("latex"
-                       "pdflatex"
-                       "pdfetex"))
-                    (every
-                     (lambda (format)
-                       (invoke format "-ini" "-interaction=batchmode"
-                               "-output-directory=web2c"
-                               (string-append "*" format ".ini")))
-                     '("xetex"
-                       "xelatex"))
-                    (every
-                     (lambda (format)
-                       (invoke "luatex" "-ini" "-interaction=batchmode"
-                               "-output-directory=web2c"
-                               (string-append format ".ini")))
-                     '("dviluatex" "dvilualatex" "luatex" "lualatex")))))
+               (invoke "luatex" "-ini" "-interaction=batchmode"
+                       "-output-directory=build" "unpack.ins")
+               (invoke "tex" "-ini" "-interaction=batchmode"
+                       "-output-directory=web2c" "tex.ini")
+               ;; LaTeX, pdfetex/pdftex, and XeTeX require e-TeX, which
+               ;; is enabled only in extended mode (activated with a
+               ;; leading asterisk).  We should not use luatex here,
+               ;; because that would make the generated format files
+               ;; incompatible with any other TeX engine.
+               (for-each (lambda (format)
+                           (invoke "latex" "-ini" "-interaction=batchmode"
+                                   "-output-directory=web2c"
+                                   "-translate-file=cp227.tcx"
+                                   (string-append "*" format ".ini")))
+                         '("latex"
+                           "pdflatex"
+                           "pdfetex"))
+               (for-each (lambda (format)
+                           (invoke format "-ini" "-interaction=batchmode"
+                                   "-output-directory=web2c"
+                                   (string-append "*" format ".ini")))
+                         '("xetex"
+                           "xelatex"))
+               (for-each (lambda (format)
+                           (invoke "luatex" "-ini" "-interaction=batchmode"
+                                   "-output-directory=web2c"
+                                   (string-append format ".ini")))
+                         '("dviluatex" "dvilualatex" "luatex" "lualatex"))
+               #t))
            (replace 'install
              (lambda* (#:key outputs #:allow-other-keys)
                (let* ((out (assoc-ref outputs "out"))
@@ -2918,16 +2919,17 @@ in SGML; use maths minus in text as appropriate; simple Young tableaux.")
                                       (assoc-ref inputs "texlive-fonts-cm")
                                       "/share/texmf-dist/fonts/source/public/cm")))
              (mkdir "build")
-             (every (lambda (font)
-                      (format #t "building font ~a\n" font)
-                      (invoke "mf" "-progname=mf"
-                              "-output-directory=build"
-                              (string-append "\\"
-                                             "mode:=ljfour; "
-                                             "mag:=1; "
-                                             "batchmode; "
-                                             "input " (basename font ".mf"))))
-                    (find-files "." "[0-9]+\\.mf$"))))
+             (for-each (lambda (font)
+                         (format #t "building font ~a\n" font)
+                         (invoke "mf" "-progname=mf"
+                                 "-output-directory=build"
+                                 (string-append "\\"
+                                                "mode:=ljfour; "
+                                                "mag:=1; "
+                                                "batchmode; "
+                                                "input " (basename font ".mf"))))
+                       (find-files "." "[0-9]+\\.mf$"))
+             #t))
          (replace 'install
            (lambda* (#:key outputs #:allow-other-keys)
              (let* ((out (assoc-ref outputs "out"))
@@ -3000,16 +3002,17 @@ texlive-2017.1/Master/texmf-dist/doc/fonts/ec/copyrite.txt"))))
                                       (assoc-ref inputs "texlive-fonts-cm")
                                       "/share/texmf-dist/fonts/source/public/cm")))
              (mkdir "build")
-             (every (lambda (font)
-                      (format #t "building font ~a\n" font)
-                      (invoke "mf" "-progname=mf"
-                              "-output-directory=build"
-                              (string-append "\\"
-                                             "mode:=ljfour; "
-                                             "mag:=1; "
-                                             "batchmode; "
-                                             "input " (basename font ".mf"))))
-                    (find-files "." "[0-9]+\\.mf$"))))
+             (for-each (lambda (font)
+                         (format #t "building font ~a\n" font)
+                         (invoke "mf" "-progname=mf"
+                                 "-output-directory=build"
+                                 (string-append "\\"
+                                                "mode:=ljfour; "
+                                                "mag:=1; "
+                                                "batchmode; "
+                                                "input " (basename font ".mf"))))
+                       (find-files "." "[0-9]+\\.mf$"))
+             #t))
          (replace 'install
            (lambda* (#:key outputs #:allow-other-keys)
              (let* ((out (assoc-ref outputs "out"))
@@ -3523,9 +3526,10 @@ TeX metrics (VF and TFM files) and macros for use with LaTeX.")
                                       "/share/texmf-dist/"))
                (unzip  (string-append (assoc-ref %build-inputs "unzip")
                                       "/bin/unzip")))
-           (system* unzip (assoc-ref %build-inputs "source"))
+           (invoke unzip (assoc-ref %build-inputs "source"))
            (mkdir-p target)
-           (copy-recursively "iwona" target)))))
+           (copy-recursively "iwona" target)
+           #t))))
     (native-inputs
      `(("unzip" ,unzip)))
     (home-page "http://jmn.pl/en/kurier-i-iwona/")
@@ -4025,7 +4029,8 @@ This package contains the complete tree of texmf-dist data.")
                    (for-each
                      (lambda (name)
                        (symlink (string-append texmf "/share/" name) name))
-                     '("texmf-dist" "texmf-var"))))))))
+                     '("texmf-dist" "texmf-var"))))
+               #t))))
    (synopsis "TeX Live, a package of the TeX typesetting system")
    (description
     "TeX Live provides a comprehensive TeX document production system.
@@ -4208,12 +4213,12 @@ PDF documents.")
          (replace 'configure
            (lambda* (#:key outputs #:allow-other-keys)
              (let ((out (assoc-ref outputs "out")))
-               (zero? (system* "qmake"
-                               (string-append "PREFIX=" out)
-                               (string-append "DESKTOPDIR=" out
-                                              "/share/applications")
-                               (string-append "ICONDIR=" out "/share/pixmaps")
-                               "texmaker.pro"))))))))
+               (invoke "qmake"
+                       (string-append "PREFIX=" out)
+                       (string-append "DESKTOPDIR=" out
+                                      "/share/applications")
+                       (string-append "ICONDIR=" out "/share/pixmaps")
+                       "texmaker.pro")))))))
     (inputs
      `(("poppler-qt5" ,poppler-qt5)
        ("qtbase" ,qtbase)