Today's update

Karl Berry karl at
Fri Feb 28 00:41:08 CET 2020

    hs> [Tue Feb 25 06:58:53 2020] update: l3backend (53875 -> 53888)

That explains the lack of building xelatex. Right now all the latex fmts
except xelatex depend on l3backend. This will change in due time.

(Boring reason for this: I know Joseph said the fmts don't depend on it,
and I concur with that, but this was the easiest way to make sure that
it was a dependency and thus would get installed if need be, for
non-full installations. Eventually I'll add explicit depend lines,
probably. Meanwhile, I left it out for xelatex more or less as an
experiment, since it was convenient to try, due to the way our *.tlpsrc
files are organized.)

    Just to note: This morning xelatex was rebuilt (along with xetex, etc.)
    but `byengine' while all the other format updates were `byfmt'.

I believe that's the expected outcome ...

    Of course there was an explicit update of xetex.

.. because of this. For no particular reason except experimentation, I
defined the fmttriggers differently for xetex and xelatex than all other
fmts (including xe*tex-dev). It will probably all become consistent in

nb> Curiously, the log file does not later mention xelatex-dev.fmt and
nb> xelatex.fmt, although the filesystem timestamps show that they were
nb> created 3 minutes after xetex.fmt.
nb> That, I think, is mysterious!

I agree, it is mysterious. I cannot conceive of how that could come
about. Unless the "log file" you're referring to is tlmgr.log, which
doesn't at present record fmtutil runs at all. (By default, that output
only goes to stdout during the tlmgr run.)

By the way, the package list which triggers fmt rebuilds can be seen with
  grep fmttriggers .../tlpkg/texlive.tlpdb
(There are long lines in this output, so beware of that.)

These "triggers" are also implicit dependencies of the package in which
they appear (as if "depend foo" was specified). --best, karl.

More information about the tex-live mailing list.