aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/tex.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/tex.scm')
-rw-r--r--gnu/packages/tex.scm263
1 files changed, 0 insertions, 263 deletions
diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm
index 4d9bb4bb2a..877040ade5 100644
--- a/gnu/packages/tex.scm
+++ b/gnu/packages/tex.scm
@@ -38665,267 +38665,6 @@ documents as well as DVI output.")
(define-deprecated-package texlive-generic-pdftex texlive-pdftex)
-(define texlive-bin-full
- (package/inherit texlive-bin
- (name "texlive-bin-full")
- (arguments
- (substitute-keyword-arguments (package-arguments texlive-bin)
- ((#:configure-flags _)
- #~(let ((kpathsea #$(this-package-input "texlive-libkpathsea")))
- (list "--with-banner-add=/GNU Guix"
- "--enable-shared"
- "--disable-native-texlive-build"
- "--disable-static"
- "--disable-kpathsea"
- "--with-system-cairo"
- "--with-system-freetype2"
- "--with-system-gd"
- "--with-system-gmp"
- "--with-system-graphite2"
- "--with-system-harfbuzz"
- "--with-system-icu"
- "--with-system-libgs"
- "--with-system-libpaper"
- "--with-system-libpng"
- "--with-system-mpfr"
- "--with-system-pixman"
- "--with-system-potrace"
- "--with-system-teckit"
- "--with-system-zlib"
- "--with-system-zziplib"
- ;; Help locating external kpathsea. For some reason
- ;; PKG-CONFIG is unable to find it.
- "--with-system-kpathsea"
- (format #f "--with-kpathsea-includes=~a/include" kpathsea)
- (format #f "--with-kpathsea-lib=~a/lib" kpathsea)
- ;; LuaJIT is not ported to some architectures yet.
- #$@(if (or (target-ppc64le?)
- (target-riscv64?))
- '("--disable-luajittex"
- "--disable-luajithbtex"
- "--disable-mfluajit")
- '()))))
- ((#:phases phases)
- #~(modify-phases #$phases
- (add-after 'install 'symlink-kpathsea-binaries
- (lambda _
- (let ((bin (string-append
- #$(this-package-input "texlive-libkpathsea")
- "/bin"))
- (files
- '("kpseaccess" "kpsereadlink" "kpsestat" "kpsewhich")))
- (with-directory-excursion (string-append #$output "/bin")
- (for-each (lambda (b) (symlink (string-append bin "/" b) b))
- files)))))
- (add-after 'install 'merge-core-scripts
- (lambda* (#:key inputs native-inputs #:allow-other-keys)
- (let ((texlive-scripts
- (dirname
- (dirname
- (search-input-file (or native-inputs inputs)
- "tlpkg/texlive.tlpdb"))))
- (tlpkg (string-append #$output "/share/tlpkg")))
- ;; "tlpkg" directory is neither provided by texlive-bin nor
- ;; by texlive-texmf.
- (mkdir-p tlpkg)
- (copy-recursively (string-append texlive-scripts "/tlpkg")
- tlpkg)
- ;; texlive-bin source doesn't provide this Perl script.
- ;; Yet, it is referenced in "fmtutil.pl" so we need to move
- ;; it here too.
- (install-file
- (string-append texlive-scripts
- "/texmf-dist/scripts/texlive/mktexlsr.pl")
- (string-append #$output
- "/share/texmf-dist/scripts/texlive")))))
- (add-after 'merge-core-scripts 'patch-core-scripts
- (lambda _
- (with-directory-excursion
- (string-append #$output "/share/texmf-dist/scripts/texlive")
- ;; Make sure that fmtutil can find its Perl modules.
- (substitute* "fmtutil.pl"
- (("\\$TEXMFROOT/")
- (string-append #$output "/share/")))
- ;; Likewise for updmap.pl.
- (substitute* "updmap.pl"
- (("\\$TEXMFROOT/tlpkg")
- (string-append #$output "/share/tlpkg")))
- ;; Likewise for the tlmgr.
- (substitute* "tlmgr.pl"
- ((".*\\$::installerdir = \\$Master.*" all)
- (format #f " $Master = ~s;~%~a"
- (string-append #$output "/share")
- all))))))
- (add-after 'patch-core-scripts 'patch-shell-scripts
- (lambda _
- (with-directory-excursion
- (string-append #$output "/share/texmf-dist/scripts")
- ;; First patch shell scripts with ".sh" extension.
- (let* ((scripts (find-files "." "\\.sh$"))
- (commands '("awk" "basename" "cat" "grep" "mkdir" "rm"
- "sed" "sort" "uname"))
- (command-regexp
- (format #f "\\b(~a)\\b" (string-join commands "|")))
- (iso-8859-1-encoded-scripts
- '("./texlive-extra/rubibtex.sh"
- "./texlive-extra/rumakeindex.sh")))
- (define (substitute-commands scripts)
- (substitute* scripts
- ((command-regexp dummy command)
- (which command))))
- (substitute-commands
- (lset-difference string= scripts iso-8859-1-encoded-scripts))
- (with-fluids ((%default-port-encoding "ISO-8859-1"))
- (substitute-commands iso-8859-1-encoded-scripts)))
- ;; Then patch scripts without such extension.
- (let ((dirs (map (compose dirname which)
- (list "awk" "cat" "grep" "sed"))))
- (substitute* (find-files "texlive" "^mktex(mf|pk|tfm)$")
- (("^version=" m)
- (format #false "PATH=\"~{~a:~}$PATH\"; export PATH~%~a"
- dirs m)))))))))))
- (native-inputs
- (modify-inputs (package-native-inputs texlive-bin)
- (append (package-source texlive-scripts))))
- (inputs
- (modify-inputs (package-inputs texlive-bin)
- (append texlive-libkpathsea)))
- (propagated-inputs '())))
-
-(define texlive-texmf
- (package
- (name "texlive-texmf")
- (version (package-version texlive-bin))
- (source (origin
- (method url-fetch)
- (uri (string-append "ftp://tug.org/historic/systems/texlive/"
- (string-take version 4)
- "/texlive-" version "-texmf.tar.xz"))
- (sha256
- (base32
- "0lqjm11pr9vasvivaci3k9xcmdyd08ldnh31zf8avjjs09xcfkac"))))
- (build-system copy-build-system)
- (arguments
- (list
- #:modules '((guix build copy-build-system)
- (guix build utils)
- (srfi srfi-1)
- (srfi srfi-26))
- ;; This package takes 4 GiB, which we can't afford to distribute from
- ;; our servers.
- #:substitutable? #f
- #:install-plan #~'(("texmf-dist/" "share/texmf-dist"))
- #:phases
- #~(modify-phases %standard-phases
- (add-after 'install 'texmf-config
- (lambda* (#:key inputs native-inputs #:allow-other-keys)
- (let* ((share (string-append #$output "/share"))
- (texmf-dist (string-append share "/texmf-dist"))
- (web2c (string-append texmf-dist "/web2c"))
- (fmtutil.cnf (string-append web2c "/fmtutil.cnf"))
- (texlive-bin
- #$(this-package-native-input "texlive-bin-full")))
- ;; LuaJIT is not ported to powerpc64* yet.
- (if #$(target-ppc64le?)
- (substitute* fmtutil.cnf
- (("^(luajittex|luajithbtex|mfluajit)" m)
- (string-append "#! " m))))
- ;; Register paths in texmfcnf.lua, needed for context.
- (substitute* (string-append web2c "/texmfcnf.lua")
- (("selfautodir:") #$output)
- (("selfautoparent:") (string-append share "/")))
- ;; Set path to TeXLive Perl modules
- (setenv "PERL5LIB"
- (string-append (getenv "PERL5LIB") ":"
- (string-append texlive-bin
- "/share/tlpkg")))
- ;; Configure the texmf-dist tree.
- (setenv "GUIX_TEXMF" texmf-dist)
- (setenv "PATH"
- (string-append (getenv "PATH") ":" texlive-bin "/bin:"))
- (let ((updmap.cfg (string-append web2c "/updmap.cfg")))
- (invoke (string-append texlive-bin "/bin/updmap-sys")
- "--nohash" "--syncwithtrees"
- (string-append "--cnffile=" updmap.cfg)))
- (invoke (string-append texlive-bin "/bin/fmtutil-sys")
- "--cnffile" fmtutil.cnf
- "--all"
- "--fmtdir" web2c)))))))
- (native-inputs (list texlive-bin-full))
- (inputs (list lua perl python-wrapper ruby tcsh))
- (properties `((max-silent-time . 9600))) ; don't time out while grafting
- (synopsis "TeX Live, a package of the TeX typesetting system")
- (description
- "TeX Live provides a comprehensive TeX document production system.
-It includes all the major TeX-related programs, macro packages, and fonts
-that are free software, including support for many languages around the
-world.
-
-This package contains the complete tree of texmf-dist data.")
- (license (license:fsf-free "https://www.tug.org/texlive/copying.html"))
- (home-page "https://www.tug.org/texlive/")))
-
-(define-public texlive
- (package
- (name "texlive")
- (version (package-version texlive-bin))
- (source #f)
- (build-system trivial-build-system)
- (arguments
- (list
- #:modules '((guix build utils))
- #:builder
- ;; Build the union of texlive-bin-full and texlive-texmf, but take the
- ;; conflicting subdirectory share/texmf-dist from texlive-texmf.
- #~(begin
- (use-modules (guix build utils))
- (let ((bin #$(this-package-input "texlive-bin-full"))
- (texmf #$(this-package-input "texlive-texmf")))
- (mkdir #$output)
- (with-directory-excursion #$output
- ;; "include/" and "lib/" directories.
- (for-each
- (lambda (name)
- (symlink (string-append bin "/" name) name))
- '("include" "lib"))
- ;; "bin/" directory.
- (mkdir "bin")
- (with-directory-excursion "bin"
- (for-each
- (lambda (name) (symlink name (basename name)))
- (find-files (string-append bin "/bin/") "")))
- ;; "share/info", "share/man", share/texmf-dist/" and
- ;; "share/tlpkg/" directories.
- (mkdir "share")
- (with-directory-excursion "share"
- (for-each
- (lambda (name)
- (symlink (string-append bin "/share/" name) name))
- '("info" "man" "tlpkg"))
- (symlink (string-append texmf "/share/texmf-dist")
- "texmf-dist"))
- ;; Now everything is in place, generate ls-R file.
- (setenv "PATH"
- (string-append
- (getenv "PATH") ":"
- #$(this-package-input "texlive-bin-full") "/bin"))
- (invoke (string-append bin "/bin/mktexlsr")))))))
- (inputs (list texlive-bin-full texlive-texmf))
- (propagated-inputs (list texlive-libkpathsea))
- (native-search-paths
- (list (search-path-specification
- (variable "TEXMFLOCAL")
- (files '("share/texmf-local")))))
- (synopsis "TeX Live, a package of the TeX typesetting system")
- (description
- "TeX Live provides a comprehensive TeX document production system.
-It includes all the major TeX-related programs, macro packages, and fonts that
-are free software, including support for many languages around the world.
-
-This package contains the complete TeX Live distribution.")
- (license (license:fsf-free "https://www.tug.org/texlive/copying.html"))
- (home-page "https://www.tug.org/texlive/")))
-
(define-public texlive-biber
(package
(name "texlive-biber")
@@ -39022,8 +38761,6 @@ UTF-8, can (re)-encode input and output, supports highly configurable sorting,
dynamic bibliography sets and many other features.")
(license license:artistic2.0)))
-(define-deprecated-package biber texlive-biber)
-
(define-public rubber
(package
(name "rubber")