me
/
guix
Archived
1
0
Fork 0

doc: Update TeX Live related documentation.

* doc/guix.texi (Invoking guix import): "texlive.tlpdb" is located in
TEXLIVE-SCRIPTS package.
(Using TeX and LaTeX): Mention collections and schemes as a starting point.
Illustrate it with an updated example.  Update tiny TODO list.  Fix call to
"tlmgr".
Nicolas Goaziou 2023-06-27 15:11:18 +02:00
parent 81ccfeb928
commit 350562e9f4
No known key found for this signature in database
GPG Key ID: DA00B4F048E92F2D
1 changed files with 30 additions and 27 deletions

View File

@ -14088,9 +14088,10 @@ TeX packages that are part of the @uref{https://www.tug.org/texlive/,
TeX Live distribution}. TeX Live distribution}.
Information about the package is obtained from the TeX Live package Information about the package is obtained from the TeX Live package
database, a plain text file that is included in the @code{texlive-bin} database, a plain text file that is included in the
package. The source code is downloaded from possibly multiple locations @code{texlive-scripts} package. The source code is downloaded from
in the SVN repository of the Tex Live project. possibly multiple locations in the SVN repository of the Tex Live
project.
The command command below imports metadata for the @code{fontspec} The command command below imports metadata for the @code{fontspec}
TeX package: TeX package:
@ -45406,14 +45407,19 @@ single @TeX{} Live package} (more than 7,000 of them), but it is huge
(more than 4@tie{}GiB for a single package!). (more than 4@tie{}GiB for a single package!).
@item @item
The ``modular'' @code{texlive-} packages: you install The ``modular'' @samp{texlive-} packages: you start off with
@code{texlive-base}, which provides core functionality and the main a combination of @TeX{} Live @dfn{collections} and
@dfn{schemes}---``meta-packages'' such as
@code{texlive-collection-fontsrecommended}, or
@code{texlive-collection-context}, that provide the set of packages
needed in this particular domain, schemes being the name for collections
of such collections. This grants you core functionality and the main
commands---@command{pdflatex}, @command{dvips}, @command{luatex}, commands---@command{pdflatex}, @command{dvips}, @command{luatex},
@command{mf}, etc.---together with individual packages that provide just @command{mf}, etc. You can then complete your selection with additional
the features you need---@code{texlive-listings} for the collections or individual packages that provide just the features you
@code{listings} package, @code{texlive-hyperref} for @code{hyperref}, need---@code{texlive-listings} for the @code{listings} package,
@code{texlive-beamer} for Beamer, @code{texlive-pgf} for PGF/TikZ, @code{texlive-beamer} for Beamer, @code{texlive-pgf} for PGF/TikZ, and
and so on. so on.
@end itemize @end itemize
We recommend using the modular package set because it is much less We recommend using the modular package set because it is much less
@ -45421,29 +45427,29 @@ resource-hungry. To build your documents, you would use commands such
as: as:
@example @example
guix shell texlive-base texlive-wrapfig \ guix shell texlive-scheme-basic texlive-cm-super -- pdflatex doc.tex
texlive-hyperref texlive-cm-super -- pdflatex doc.tex
@end example @end example
You can quickly end up with unreasonably long command lines though. The You can quickly end up with unreasonably long command lines though. The
solution is to instead write a manifest, for example like this one: solution is to instead write a manifest, for example like this one,
which would probably be a reasonable starting point for a French
@LaTeX{} user:
@lisp @lisp
(specifications->manifest (specifications->manifest
'("rubber" '("rubber"
"texlive-base" "texlive-scheme-basic"
"texlive-wrapfig" "texlive-collection-latexrecommended"
"texlive-collection-fontsrecommended"
"texlive-microtype" "texlive-babel-french"
"texlive-listings" "texlive-hyperref"
;; PGF/TikZ ;; PGF/TikZ
"texlive-pgf" "texlive-pgf"
;; Additional fonts. ;; Additional font.
"texlive-cm-super" "texlive-amsfonts" "texlive-kpfonts"))
"texlive-times" "texlive-helvetic" "texlive-courier"))
@end lisp @end lisp
You can then pass it to any command with the @option{-m} option: You can then pass it to any command with the @option{-m} option:
@ -45452,12 +45458,9 @@ You can then pass it to any command with the @option{-m} option:
guix shell -m manifest.scm -- pdflatex doc.tex guix shell -m manifest.scm -- pdflatex doc.tex
@end example @end example
@xref{Writing Manifests}, for more on @xref{Writing Manifests}, for more on manifests. In the future, we plan
manifests. In the future, we plan to provide packages for @TeX{} Live to provide more collections and schemes. That will allow you to list
@dfn{collections}---``meta-packages'' such as @code{fontsrecommended}, fewer packages.
@code{humanities}, or @code{langarabic} that provide the set of packages
needed in this particular domain. That will allow you to list fewer
packages.
The main difficulty here is that using the modular package set forces The main difficulty here is that using the modular package set forces
you to select precisely the packages that you need. You can use you to select precisely the packages that you need. You can use
@ -45493,7 +45496,7 @@ you can search the @TeX{} Live package database using the @command{tlmgr}
command: command:
@example @example
$ guix shell texlive-base -- tlmgr info phvr7t $ guix shell texlive-bin -- tlmgr info phvr7t
tlmgr: cannot find package phvr7t, searching for other matches: tlmgr: cannot find package phvr7t, searching for other matches:
Packages containing `phvr7t' in their title/description: Packages containing `phvr7t' in their title/description: