I recently updated a TeXLive 2013 installation to 2014 on a server, and XeLaTeX stoped working. First it kept running that
kpathsea: Running mktexfmt xelatex.fmt ... I can't find the format file `xelatex.fmt'!
So I googled and stackoverflowed and saw that I can rebuild this
fmt file with
But it told me that it was trying to get some file:
! I can't find file `dehypht-x-2013-05-26.tex'.
This is a German hyphenation tool. I don’t really write in German, but TeXLive wants to have this stuff anyway… Someone suggests to install texlive-lang-german package, but since I install directly through TeXLive scripts instead of apt-get, this is a bit awkward. Others suggests to comment out this definition
TEXMFSYSVAR=/usr/local/texlive/2013/texmf-var but I don’t feel good about that either.
Looking further into this error, it turns out that we have a definition file
where we see this troublemaking file defined:
It asks us not to directly edit this file, so I ran
sudo tlmgr generate language
Now we see that
language.def has been updated to
I do need to get this file though, so
sudo tlmgr install dehyph-exptl
And then as suggested by
tlmgr, I ran
sudo fmtutil-sys --byhyphen /usr/local/texlive/2013/texmf-var/tex/generic/config/language.dat.lua sudo fmtutil-sys --byhyphen /usr/local/texlive/2013/texmf-var/tex/generic/config/language.dat sudo fmtutil-sys --byhyphen /usr/local/texlive/2013/texmf-var/tex/generic/config/language.def
All is good now.