From 6d187271eddacb3e583df805b0be041988928678 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Mon, 27 May 2024 22:55:19 +0200 Subject: [PATCH] gnu: Add texlive-m-tx-bin. * gnu/packages/tex.scm (texlive-m-tx-bin): New variable. (texlive-m-tx)[propagated-inputs]: Add TEXLIVE-M-TX-BIN. Change-Id: Ia068b4062dd1e7d5c4af8011abf9435611c84fa1 --- gnu/packages/tex.scm | 47 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 7c4b3d040e..cf5d2f9bf3 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -20986,6 +20986,7 @@ (define-public texlive-m-tx (outputs '("out" "doc")) (build-system texlive-build-system) (arguments (list #:link-scripts #~(list "m-tx.lua"))) + (propagated-inputs (list texlive-m-tx-bin)) (home-page "https://ctan.org/pkg/m-tx") (synopsis "Preprocessor for @command{pmx}") (description @@ -20996,6 +20997,52 @@ (define-public texlive-m-tx those who prefer its language.") (license license:expat))) +(define-public texlive-m-tx-bin + (package + (inherit texlive-bin) + (name "texlive-m-tx-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" '("m-tx")) + (delete-other-directories "texk" '()))))) + (arguments + (substitute-keyword-arguments (package-arguments texlive-bin) + ((#:configure-flags flags) + #~(cons "--enable-m-tx" (delete "--enable-web2c" #$flags))) + ((#:phases phases) + #~(modify-phases #$phases + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (with-directory-excursion "utils/m-tx" + (invoke "make" "check"))))) + (replace 'install + (lambda _ + (with-directory-excursion "utils/m-tx" + (invoke "make" "install")))))))) + (native-inputs '()) + (inputs '()) + (propagated-inputs '()) + (home-page (package-home-page texlive-m-tx)) + (synopsis "Binary for @code{texlive-m-tx}") + (description + "This package provides the binary for @code{texlive-m-tx}.") + (license (package-license texlive-m-tx)))) + (define-public texlive-macros2e (package (name "texlive-macros2e")