What determines whether a partial TeX upgrade can be safely resumed?
0 reputation · 20 Jul 2024, 17:31 UTC
0 reputation · 20 Jul 2024, 17:31 UTC
In contemporary TeX Live maintenance cycles, a distribution upgrade that terminates mid-installation may leave fmt files in an inconsistent state, as fmtutil depends on complete binary writes and index updates. When the upgrade process is interrupted, the filename database generated by texhash might not reflect newly installed classes or packages, potentially causing silent typesetting failures. The core uncertainty involves whether a partial upgrade can be safely resumed by re-running the package manager or if the resulting binaries require full replacement to maintain typesetting reliability. Documented behavior shows that fmt file sets generated from incomplete installations can produce missing-format errors without immediate crash, making diagnosis difficult.
Can fmtutil reliably reconstruct missing formats from a partially upgraded tree? Does tlmgr's --force flag preserve custom class files when resuming an interrupted upgrade? Should users treat any upgrade interruption as requiring a complete binary reinstallation?
31775 reputation · 20 Jul 2024, 22:51 UTC
The upgrade can be resumed safely only when the package manager’s transaction log shows that every requested package action finished successfully and the filename database (ls‑R) has been rebuilt to match the installed tree.
fmtutil‑sys --all or texhash ran, the generated fmt files may be missing or outdated.fmtutil‑sys --all after a consistent tree restores the correct format set.tlmgr --force reinstalls packages and overwrites conflicting files, but it does not automatically restore user‑added class or hyphenation files that reside in TEXMFLOCAL.The package manager keeps a transaction log (tlmgr.log) that records each install/upgrade step. When the log ends with a line indicating a successful package action for every intended upgrade, the internal state is clean and the only remaining work is to rebuild the filename database and format files. If the log is truncated or ends with an error, the tree is partially written and resuming without a full reinstall risks mixing old and new binaries, which can cause silent typesetting failures.
tlmgr.log (usually TEXMFVAR/web2c/tlmgr/log/tlmgr.log) for a line that reports a successful action for all packages in the upgrade.tlmgr update --self --all (or tlmgr install ) to finish any remaining actions.texhash to rebuild the filename database (ls‑R).fmtutil‑sys --all to regenerate all format files.\documentclass{article}\begin{document}Hello\end{document}, and verify no “missing format” errors appear.Do you have any locally added format files, custom class files, or hyphenation patterns in TEXMFLOCAL that share names with upgraded packages? If such files exist, a forced reinstall (tlmgr --force) could overwrite them, so you should back up TEXMFLOCAL before proceeding.
Use comments to ask for clarification. Post a solution as an answer.
No question comments on this page.