diff mbox series

[bug#62331,1/2] gnu: Add texlive-pict2e.

Message ID 20230321132355.349979-1-mail@nicolasgoaziou.fr
State New
Headers show
Series Add: texlive-halloweenmath. | expand

Commit Message

Nicolas Goaziou March 21, 2023, 1:23 p.m. UTC
* gnu/packages/tex.scm (texlive-pict2e): New variable.
---
 gnu/packages/tex.scm | 65 ++++++++++++++++++++++++++++++++++++++------
 1 file changed, 57 insertions(+), 8 deletions(-)


base-commit: 3893758dac76fc30b23d4715e849e262306f268d
diff mbox series

Patch

diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm
index 0c4e545edf..f03a9608d5 100644
--- a/gnu/packages/tex.scm
+++ b/gnu/packages/tex.scm
@@ -4388,6 +4388,55 @@  (define-public texlive-latex-cyrillic
 language that is written in a Cyrillic alphabet.")
     (license license:lppl1.3c+)))
 
+(define-public texlive-pict2e
+  (let ((template (simple-texlive-package
+                   "texlive-pict2e"
+                   (list "doc/latex/pict2e/"
+                         "source/latex/pict2e/"
+                         "tex/latex/pict2e/")
+                   (base32
+                    "0pazv1khsgjhxc673qrhjrbzlkgmcj53qccb9hw7ygdajxrjc2ba"))))
+    (package
+      (inherit template)
+      (arguments
+       (substitute-keyword-arguments (package-arguments template)
+         ((#:tex-directory _ #t) "latex/pict2e")
+         ((#:build-targets _ '()) '(list "pict2e.ins"))
+         ((#:phases phases)
+          #~(modify-phases #$phases
+              (add-after 'unpack 'chdir
+                (lambda _ (chdir "source/latex/pict2e/")))
+              (add-after 'build 'build-doc
+                (lambda _
+                  (copy-file "p2e-drivers.dtx" "build/p2e-drivers.dtx")
+                  (with-directory-excursion "build"
+                    (invoke "pdflatex" "p2e-drivers.dtx")
+                    (delete-file "p2e-drivers.dtx")
+                    ;; texlive.tlpbd expects a "pict2e.cfg" configuration file
+                    ;; instead of "pict2e-example.cfg".  Please it.
+                    (rename-file "pict2e-example.cfg" "pict2e.cfg"))))
+              (replace 'copy-files
+                (lambda* (#:key inputs #:allow-other-keys)
+                  (let ((origin (assoc-ref inputs "source"))
+                        (source (string-append #$output
+                                               "/share/texmf-dist/source"))
+                        (doc (string-append #$output:doc
+                                            "/share/texmf-dist/doc")))
+                    (copy-recursively (string-append origin "/source") source)
+                    (copy-recursively (string-append origin "/doc") doc))))))))
+      (home-page "https://ctan.org/pkg/pict2e")
+      (native-inputs
+       (list (texlive-updmap.cfg)))
+      (synopsis "New implementation of picture commands")
+      (description
+       "This package extends the existing LaTeX @code{picture} environment,
+using the familiar technique (the @code{graphics} and @code{color} packages)
+of driver files (at present, drivers for dvips, pdfTeX, LuaTeX, XeTeX, VTeX,
+dvipdfm, and dvipdfmx are available).  The package documentation has a fair
+number of examples of use, showing where things are improved by comparison
+with the LaTeX @code{picture} environment.")
+      (license license:lppl1.3+))))
+
 (define-public texlive-psnfss
   (let ((template (simple-texlive-package
                    "texlive-psnfss"
@@ -4495,14 +4544,14 @@  (define-public texlive-psnfss
              (add-after 'unpack 'chdir
                (lambda _
                  (chdir "source/latex/psnfss")))
-           (add-before 'copy-files 'unchdir
-             (lambda _
-               (chdir "../../..")))
-           (add-after 'copy-files 'delete-extra-files
-             (lambda* (#:key outputs #:allow-other-keys)
-               (delete-file-recursively
-                (string-append (assoc-ref outputs "out")
-                               "/share/texmf-dist/source/latex/psnfss/build"))))))))
+             (add-before 'copy-files 'unchdir
+               (lambda _
+                 (chdir "../../..")))
+             (add-after 'copy-files 'delete-extra-files
+               (lambda* (#:key outputs #:allow-other-keys)
+                 (delete-file-recursively
+                  (string-append (assoc-ref outputs "out")
+                                 "/share/texmf-dist/source/latex/psnfss/build"))))))))
       (native-inputs
        (list texlive-cm))
       (home-page "https://www.ctan.org/pkg/psnfss")