missing formats in fmtutil.cnf
Description:
I'm by no means an expert on TeXLive and its packaging, but it seems like texlive-bin should put a file inside /var/lib/texmf/arch/installedpkgs so that the fmtutil hook from texlive-basic can do its thing.
Additional info:
- package version(s):
texlive-bin 2023.66984-17
texlive-basic 2023.66594-20
- config and/or log files: N/A
- link to upstream bug report, if any: N/A
Steps to reproduce:
podman run --rm -ti archlinux:latest bash -c 'cd /tmp && echo "\documentclass{article}\begin{document}x\end{document}" > test.tex && pacman -Syu --noconfirm texlive-bin texlive-basic && pdflatex test.tex && ls -la'
Output:
This is pdfTeX, Version 3.141592653-2.6-1.40.25 (TeX Live 2023/Arch Linux) (preloaded format=pdflatex)
restricted \write18 enabled.
kpathsea: Running mktexfmt pdflatex.fmt
mktexfmt: mktexfmt is using the following fmtutil.cnf files (in precedence order):
mktexfmt: /etc/texmf/web2c/fmtutil.cnf
mktexfmt: mktexfmt is using the following fmtutil.cnf file for writing changes:
mktexfmt: /root/.texlive/texmf-config/web2c/fmtutil.cnf
mktexfmt [INFO]: writing formats under /var/lib/texmf/web2c
mktexfmt [INFO]: Did not find entry for byfmt=pdflatex skipped
mktexfmt [INFO]: not selected formats: 8
mktexfmt [INFO]: total formats: 8
mktexfmt [INFO]: exiting with status 0
I can't find the format file `pdflatex.fmt'!
BTW, the directory /root/.texlive/texmf-config deosn't exist and /etc/texmf/web2c/fmtutil.cnf has this content and no mention of pdflatex
, which is (as far as I understand) the reason fmtutil and ultimately pdflatex fails:
# $Id: fmtutil-hdr.cnf 53804 2020-02-16 17:57:32Z karl $
# Originally written by Thomas Esser, 1998. Public domain.
#
# For guidance on how to support local formats, see the man
# page of fmtutil, or the output of fmtutil --help.
#
# any manual edits of this file (fmtutil.cnf in the TEXMFDIST tree) will
# be lost on update. So don't do that.
#
# The format of the table is:
#
# format engine pattern-file arguments
# Either spaces or tabs can be used as separators.
#
# The last "argument" must be the name of the file on which to run the
# engine (e.g., initex). If the ini-engine is e-TeX (or compatible), and
# the e-TeX extensions need to be enabled explicitly, the filename must
# be prefixed with a * character; this is essentially equivalent to the
# -etex option. (So don't use it if the engine doesn't support -etex.)
#
# The purpose of the pattern-file is to support fmtutil's --byhyphen
# option. It is not included in the command line to rebuild the format.
# If no pattern-file is desired, use -.
# fmtutil always passes the -ini option to the engine.
#
# Other notes:
# 1) tex and amstex just load hyphen.tex. No customization.
# You can have your own customized (via babel's hyphen.cfg)
# formats on top of plain by using "bplain.tex" instead of
# plain.tex (e.g., bplain.ini file for bplain format).
#
# 2) etex-based formats load language.def, not language.dat.
#
# 3) The symbolic link to the right engines (e.g. bplain -> tex)
# is generated by the "texlinks" script.
#
# 4) usual comments start with "# ", whereas disabled configurations
# start with "#! " in this file.
#
# 5) The entries in the main TeX Live fmtutil.cnf are created from the
# AddFormat directives in (ultimately) the *.tlpsrc files. Don't edit here.
# var/lib/texmf/arch/installedpkgs/basic.fmts
luahbtex luahbtex language.def,language.dat.lua luatex.ini
dviluatex luatex language.def,language.dat.lua dviluatex.ini
luatex luatex language.def,language.dat.lua luatex.ini
mf mf-nowin - -translate-file=cp227.tcx mf.ini
etex pdftex language.def -translate-file=cp227.tcx *etex.ini
pdfetex pdftex language.def -translate-file=cp227.tcx *pdfetex.ini
pdftex pdftex language.def -translate-file=cp227.tcx *pdfetex.ini
tex tex - tex.ini