[tlmgr]: mtxrun and context no longer executed

Max Chernoff mseven at telus.net
Tue Apr 11 12:00:36 CEST 2023

Hi Uwe,

> After today's infra update the two post-update commands
> mtxrun --generate
> context --luatex --generate
> are no longer executed. At least I did not see them in the messages.
> Don't know if it's intentional or not.

As Norbert said, this is intentional. kpathsea-based TeX keeps per-tree
filename databases (1 ls-R file in each tree), but ConTeXt keeps per-
user filename databases (cache files in ~/.texlive2023/texmf-var/). 

If you had a system-wide installation of TL, then tlmgr would run
"mtxrun --generate" with the system account (root/Admin). This would
only update the cache for the system account which is both (1)
pointless, since no one should ever be typesetting as root, and (2)
ineffective, since all the per-user caches wouldn't be updated.

The new code has ConTeXt compare the modified date of its cache with the
modified date of the ls-R files every time that you compile a document.
If the ConTeXt date is older, then it regenerates the caches at startup.

So now running "mktexlsr" will also update the ConTeXt cache
(indirectly). The only downside is that the first time you run ConTeXt
after an update, it'll take about 2 seconds longer since it has to
rebuild the cache.

-- Max

More information about the tex-live mailing list.