summaryrefslogtreecommitdiff
path: root/gnu/packages
diff options
context:
space:
mode:
authorLeo Prikler <leo.prikler@student.tugraz.at>2021-05-15 16:16:48 +0200
committerLeo Prikler <leo.prikler@student.tugraz.at>2021-07-15 13:14:25 +0200
commite89036e2f18a558ecc810dadb428ee07e04442a6 (patch)
tree14cbd149044510472ec6205be7b61a8c71153e3d /gnu/packages
parent313d5e62864fdcef45a0d6b334c6a210683bad88 (diff)
gnu: Add texlive-libkpathsea.
* gnu/packages/tex.scm (texlive-libkpathsea): New variable.
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/tex.scm33
1 files changed, 33 insertions, 0 deletions
diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm
index 8d86264209..b404ca8ff1 100644
--- a/gnu/packages/tex.scm
+++ b/gnu/packages/tex.scm
@@ -460,6 +460,39 @@ This package contains the binaries.")
(license (license:fsf-free "https://www.tug.org/texlive/copying.html"))
(home-page "https://www.tug.org/texlive/")))
+(define-public texlive-libkpathsea
+ (package/inherit texlive-bin
+ (name "texlive-libkpathsea")
+ (source
+ (origin
+ (inherit (package-source texlive-bin))
+ (snippet
+ `(begin
+ ,(origin-snippet (package-source texlive-bin))
+ (with-directory-excursion "texk"
+ (let ((preserved-directories '("." ".." "kpathsea")))
+ (for-each
+ delete-file-recursively
+ (scandir "."
+ (lambda (file)
+ (and (not (member file preserved-directories))
+ (eq? 'directory (stat:type (stat file)))))))))))))
+ (arguments
+ (substitute-keyword-arguments (package-arguments texlive-bin)
+ ((#:configure-flags flags)
+ `(cons* "--disable-all-pkgs" "--enable-kpathsea"
+ "--enable-shared" ,flags))
+ ((#:phases phases)
+ `(modify-phases %standard-phases
+ (add-after 'install 'post-install
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (with-directory-excursion "texk/kpathsea"
+ (invoke "make" "install"))))))))
+ (inputs '())
+ (synopsis "Path searching library")
+ (description "kpathsea is a library, whose purpose is to return a filename
+from a list of user-specified directories similar to how shells look up
+executables. It is maintained as a part of TeX Live.")))
(define texlive-docstrip
(package