gnu: Deprecate texlive-base in favor of texlive-scheme-basic.

* gnu/packages/tex.scm (texlive-base): Deprecate variable.
(texlive-updmap.cfg): Use default packages from now deprecated TEXLIVE-BASE.
Also remove already implemented TODO.
* doc/build.scm (pdf-manual):
* gnu/packages/statistics.scm: Replace TEXLIVE-BASE with call to
TEXLIVE-UPDMAP.CFG.
* guix/profiles.scm (texlive-font-maps): Trigger TeX Live hook whenever
a texlive package is included in the manifest.
This commit is contained in:
Nicolas Goaziou 2023-06-10 09:40:38 +02:00
parent f1b21bcfb1
commit 36d7acf003
No known key found for this signature in database
GPG key ID: DA00B4F048E92F2D
4 changed files with 29 additions and 61 deletions

View file

@ -912,11 +912,10 @@ (define texinfo-profile
sed
tar
texinfo
texlive-base
texlive-bin ;for GUIX_TEXMF
texlive-epsf
texlive-ec
texlive-texinfo)))))
(texlive-updmap.cfg
(list texlive-ec
texlive-epsf
texlive-texinfo)))))))
(define build
(with-imported-modules '((guix build utils))

View file

@ -4837,9 +4837,8 @@ (define-public r-spams
(list hevea
perl
swig
;;texlive-aeguill ;;FIXME: package me!
texlive-base
texlive-jknapltx))
(texlive-updmap.cfg
(list texlive-aeguill texlive-jknapltx))))
(propagated-inputs
(list r-lattice
r-matrix))

View file

@ -4135,52 +4135,6 @@ (define-public texlive-psnfss
(define-deprecated-package texlive-latex-psnfss texlive-psnfss)
;; For user profiles
(define-public texlive-base
(let ((default-packages
(list texlive-bin
texlive-cm
texlive-cm-super ; to avoid bitmap fonts
texlive-dvips
texlive-fontname
texlive-graphics
texlive-kpathsea ;for mktex.opt
texlive-latex-base
texlive-latex-fonts
texlive-metafont
;; LaTeX packages from the "required" set.
texlive-amsmath
texlive-amscls
texlive-babel
texlive-babel-english
texlive-cyrillic
texlive-psnfss
texlive-tools)))
(package
(name "texlive-base")
(version (number->string %texlive-revision))
(source #f)
(build-system trivial-build-system)
(arguments
'(#:builder
(begin (mkdir (assoc-ref %outputs "out")))))
(propagated-inputs
(map (lambda (package)
(list (package-name package) package))
default-packages))
(home-page (package-home-page texlive-bin))
(synopsis "TeX Live base packages")
(description "This is a very limited subset of the TeX Live distribution.
It includes little more than the required set of LaTeX packages.")
(license (fold (lambda (package result)
(match (package-license package)
((lst ...)
(append lst result))
((? license:license? license)
(cons license result))))
'()
default-packages)))))
(define-public texlive-default-updmap.cfg
(origin
(method url-fetch)
@ -4193,15 +4147,29 @@ (define-public texlive-default-updmap.cfg
(base32
"0zhpyld702im6352fwp41f2hgfkpj2b4j1kfsjqbkijlcmvb6w2c"))))
;;; TODO: Add a TeX Live profile hook computing fonts maps (and others?)
;;; configuration from the packages in the profile, similar to what's done
;;; below.
(define-public texlive-updmap.cfg
(lambda* (#:optional (packages '()))
"Return a 'texlive-updmap.cfg' package which contains the fonts map
configuration of a base set of packages plus PACKAGES."
(let ((default-packages (match (package-propagated-inputs texlive-base)
(((labels packages) ...) packages))))
(let ((default-packages
(list texlive-bin
texlive-cm
texlive-cm-super
texlive-dvips
texlive-fontname
texlive-graphics
texlive-kpathsea
texlive-latex-base
texlive-latex-fonts
texlive-metafont
;; LaTeX packages from the "required" set.
texlive-amsmath
texlive-amscls
texlive-babel
texlive-babel-english
texlive-cyrillic
texlive-psnfss
texlive-tools)))
(package
(version (number->string %texlive-revision))
(source (origin
@ -13082,6 +13050,8 @@ (define-public texlive-scheme-basic
@code{collection-latex}.")
(license (license:fsf-free "https://www.tug.org/texlive/copying.html"))))
(define-deprecated-package texlive-base texlive-scheme-basic)
;;;
;;; Avoid adding new packages to the end of this file. To reduce the chances
;;; of a merge conflict, place them above by existing packages with similar

View file

@ -1868,8 +1868,8 @@ (define build
(invoke mktexlsr b)
(install-file (string-append b "/ls-R") a))))))
(mlet %store-monad ((texlive-base (manifest-lookup-package manifest "texlive-base")))
(if (and texlive-base (pair? texlive-inputs))
(with-monad %store-monad
(if (pair? texlive-inputs)
(gexp->derivation "texlive-font-maps" build
#:substitutable? #f
#:local-build? #t