I have spent the better part of two days trying to figure out why my ubuntu linux system (two different systems, actually) are suddenly failing to find .cls and .sty files from my texlive distribution. I had originally used the ubuntu texlive, and that's where it started showing up. So, I did a purge of all my texlive packages and installed the 2020 texlive from the TUG installation script as explained here. But I still have the same problem. Here's what I've done so far:
- when logged in as the texlive user, all seems fine. In particular,
$ kpsewhich article.cls
/usr/local/texlive/2020/texmf-dist/tex/latex/base/article.cls
But when I run it as my normal user name, I get nothing and an exit code of 1.
- When logged in as either me or texlive, I get the following for the TEXMF variable:
$ kpsewhich --expand-var='$TEXMF'
{{}/home/ded/.texlive2020/texmf-config,/home/ded/.texlive2020/texmf-var,/home/ded/texmf,!!/usr/local/texlive/texmf-local,!!/usr/local/texlive/2020/texmf-config,!!/usr/local/texlive/2020/texmf-var,!!/usr/local/texlive/2020/texmf-dist}
which looks right in both cases.
- I have checked file permissions, and all the texlive files have "other" read permission. Just to make sure, I can do this when logged in as me:
$ cat $(find /usr/local/texlive/2020/texmf-dist -name article.cls | head -n 1)
and I get the contents of artlicle.cls dumped to my screen.
I have a ~/texmf directory, and it all looks kosher. I have no ~/.texlive2020 directory.
I have run kpsewhich with various debug flags, and I can see where it searches the right directory, but still does not return the path for article.cls. I see this line in the output:
$ kpsewhich --debug=13 --must-exist --path=/usr/local/texlive/2020/texmf-dist// article.cls 2>~/tmp/kps-out
...
kdebug:dir_links(/usr/local/texlive/2020/texmf-dist/tex/latex/base) => 2
...
but still is not seeing article.cls.
I am hoping someone can suggest something else that I might try or suggest a solution.