I am developing a style file locally and while I have the released version as part of my TEXMFHOME, I have the latest version of the style in git. When I develop with this git, I want to easily switch to that TEXMF and use it instead. On Windows with MiKTeX I used the initexmf --user-roots= ... command, but now it is time to transfer to Linux and TeX Live.

So what I understood is, that auxtrees would be the way to go here, so I called sudo tlmgr conf auxtrees add /home/MYUSERNAME/my/location/texmfofme. But if I compile a document, it seems TeXlive does not know about this location. So I called tlmgr conf auxtrees show and it shows:

(running on Debian, switching to user mode!)
List of auxiliary texmf trees:

I then found out, that I can also check with kpsewhich by calling kpsewhich -var-value=TEXMFHOME, but this only results in /home/MYUSERNAME/texmf and therefore I suspect I am missing something. I tried texhash as well, but with no success.

Version running is

> tex --version
TeX 3.14159265 (TeX Live 2017/Debian)
kpathsea version 6.2.3


> tlmgr --version
(running on Debian, switching to user mode!)
tlmgr revision 46207 (2018-01-04 19:34:36 +0100)
tlmgr using installation: /usr/share/texlive
TeX Live (http://tug.org/texlive) version 2017

Any ideas what I am doing wrong here?


I figured out, that asking kpsewhich for TEXMFHOME if adding an auxtree is a bit stupid, I should ask for AUXTREES, don't you think? So I called kpsewhich -var-value=TEXMFAUXTREES and the result is {}, even though tlmgr conf auxtrees show still shows my added path.

Is tlmgr maybe writing to the wrong texmf.cnf file? I think it uses /usr/share/texlive/texmf.cnf, but I don't know, if this is right.

Another update

I now found out, that calling kpsewhich -all texmf.cnf should show me, which configuration files are used and it returns:


As you can see, /usr/share/texlive/texmf.cnf is not in the list, is that the issue?

Further investigations

I now got a working configuration, but only through manual intervention. What did I do? I moved the file /usr/share/texlive/texmf.cnf to /usr/local/share/texmf/web2c/texmf.cnf and manually added the line TEXMFAUXTREES = /home/MYUSERNAME/my/location/texmfofme,. The , at the end is important, you can also put a : there, which as far as I understand allows kpathsea to look further for files. After setting this manually, my graphic is found and can be used.

So my new question is: Why does tlmgr modify a file that is not found by kpathsea? Is there maybe something wrong in my general config, in a system variable or so?

  • If I remember correctly the auxtrees option was added in 2019. Do you perhaps have two tex systems? Jul 10, 2020 at 23:20
  • @UlrikeFischer not that I am aware of, it is a recent installation and I only installed texlive through apt-get, nothing else. I added the versioning of tlmgr in my question, if that is of help.
    – TobiBS
    Jul 10, 2020 at 23:49
  • hm, time flies. It was added in 2017. How do you know that texlive doesn't use the location? Jul 11, 2020 at 12:41
  • Because I am referring to images that are stored in the added TEXMF tree that I add as an auxtree, but they are not found by PDFlatex.
    – TobiBS
    Jul 11, 2020 at 12:50
  • @UlrikeFischer I‘d be happy to use another mechanism than auxtree, my requirement is that I can add a folder temporary through a script and remove it later. So none of the standard TEXMF trees works, as I don‘t want to move my files there.
    – TobiBS
    Jul 11, 2020 at 13:14


You must log in to answer this question.

Browse other questions tagged .