aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/tex.scm
diff options
context:
space:
mode:
authorNicolas Goaziou <mail@nicolasgoaziou.fr>2024-05-27 18:46:41 +0200
committerLudovic Courtès <ludo@gnu.org>2024-08-31 10:45:22 +0200
commit3394febb2aead9d61df8f09fabe18a4ad648d96e (patch)
tree069cd0af4f1d6a33286ef8184ec718b5892aa797 /gnu/packages/tex.scm
parentaeb1a37db08591053238d6f5caec287edfbfe4d9 (diff)
downloadguix-3394febb2aead9d61df8f09fabe18a4ad648d96e.tar
guix-3394febb2aead9d61df8f09fabe18a4ad648d96e.tar.gz
gnu: Add texlive-dvipdfmx-bin.
* gnu/packages/tex.scm (texlive-dvipdfmx-bin): New variable. (texlive-dvipdfmx)[propagated-inputs]: Add TEXLIVE-DVIPDFMX-BIN. Change-Id: I189a1561dd19613775b8c2e4422ffceeb5f2f27a
Diffstat (limited to 'gnu/packages/tex.scm')
-rw-r--r--gnu/packages/tex.scm93
1 files changed, 92 insertions, 1 deletions
diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm
index b641ae16f2..4fbc7e604e 100644
--- a/gnu/packages/tex.scm
+++ b/gnu/packages/tex.scm
@@ -38474,7 +38474,7 @@ TeX tree.")
;; This map file is supposed to be generated in a profile hook.
(lambda _
(delete-file "fonts/map/dvipdfmx/updmap/kanjix.map"))))))
- (propagated-inputs (list texlive-glyphlist))
+ (propagated-inputs (list texlive-glyphlist texlive-dvipdfmx-bin))
(home-page "https://ctan.org/pkg/dvipdfmx")
(synopsis "Extended version of dvipdfm")
(description
@@ -38486,6 +38486,97 @@ executable. A secondary design goal is to support as many PDF features as
does pdfTeX.")
(license license:gpl3+)))
+(define-public texlive-dvipdfmx-bin
+ (package
+ (inherit texlive-bin)
+ (name "texlive-dvipdfmx-bin")
+ (source
+ (origin
+ (inherit texlive-source)
+ (modules '((guix build utils)
+ (ice-9 ftw)))
+ (snippet
+ #~(let ((delete-other-directories
+ (lambda (root dirs)
+ (with-directory-excursion root
+ (for-each
+ delete-file-recursively
+ (scandir "."
+ (lambda (file)
+ (and (not (member file (append '("." "..") dirs)))
+ (eq? 'directory (stat:type (stat file)))))))))))
+ (delete-other-directories "libs" '())
+ (delete-other-directories "utils" '())
+ (delete-other-directories "texk" '("dvipdfm-x"))))))
+ (arguments
+ (substitute-keyword-arguments (package-arguments texlive-bin)
+ ((#:configure-flags flags)
+ #~(cons "--enable-dvipdfm-x" (delete "--enable-web2c" #$flags)))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (with-directory-excursion "texk/dvipdfm-x"
+ (invoke "make" "check")))))
+ (replace 'install
+ (lambda _
+ (with-directory-excursion "texk/dvipdfm-x"
+ (invoke "make" "install"))))))))
+ (native-inputs (list pkg-config))
+ (inputs (list libpaper libpng texlive-libkpathsea))
+ (propagated-inputs '())
+ (home-page (package-home-page texlive-dvipdfmx))
+ (synopsis "Binaries for @code{texlive-dvipdfmx}")
+ (description
+ "This package provides the binaries for @code{texlive-dvipdfmx}.")
+ (license (package-license texlive-dvipdfmx))))
+
+(define texlive-dvips-bin
+ (package
+ (inherit texlive-bin)
+ (name "texlive-dvips-bin")
+ (source
+ (origin
+ (inherit texlive-source)
+ (modules '((guix build utils)
+ (ice-9 ftw)))
+ (snippet
+ #~(let ((delete-other-directories
+ (lambda (root dirs)
+ (with-directory-excursion root
+ (for-each
+ delete-file-recursively
+ (scandir "."
+ (lambda (file)
+ (and (not (member file (append '("." "..") dirs)))
+ (eq? 'directory (stat:type (stat file)))))))))))
+ (delete-other-directories "libs" '())
+ (delete-other-directories "utils" '())
+ ;; XXX: One test needs "texmf.cnf" file to be present in the tree.
+ (delete-other-directories "texk" '("dvipsk" "kpathsea" "tests"))
+ (with-directory-excursion "texk/kpathsea"
+ (for-each
+ delete-file-recursively
+ (scandir "." (lambda (f)
+ (not (member f '("." ".." "texmf.cnf")))))))))))
+ (arguments
+ (substitute-keyword-arguments (package-arguments texlive-bin)
+ ((#:configure-flags flags)
+ #~(cons* "--enable-dvipsk" (delete "--enable-web2c" #$flags)))
+ ((#:phases _)
+ #~(modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (with-directory-excursion "texk/dvipsk"
+ (invoke "make" "check")))))
+ (replace 'install
+ (lambda _
+ (with-directory-excursion "texk/dvipsk"
+ (invoke "make" "install"))))))))
+ (inputs '())))
+
(define-public texlive-dvips
(package
(name "texlive-dvips")