I am trying to install the "dropping" package from CTAN to compile a template in TeXstudio, using TeXlive2020 on Windows 10. The dropping.sty file cannot be found, as the error log in TeXStudio tells me when I try to compile (as well as the fact kpsewhich dropping.sty yields nothing even though it works for other .sty files). I copied the extracted file from the CTAN download to C:\texlive\texmf-local and I already ran the .ins file in latex. When I use the command kpsewhich -var-value TEXMFHOME I get the expected result C:/Users/<me>/texmf but the folder doesn't show up in explorer. I understand you have to make the directory yourself, and comply with the tds structure, so I've tried using the "new folder" icon in the explorer and also using mkdir tex with a latex folder inside to put the .sty file. I've also tried using texhash ~/texmf, however I then get the message "Cannot open ~/texmf/ls-R to write." Despite all this the .sty file refuses to be found and I'm not convinced I went about properly making my TEXMFHOME directory. I don't quite understand how to make the TEXMFHOME directory comply with the tds structure; do I have to add all those random file extensions manually? (I'm referring to something like https://tug.org/tds). I'm fairly green to everything programming related, TeX especially, so I apologize if I used incorrect verbiage. What are my options? All help is appreciated.

P.S. the TexLive documentation suggests creating an environment variable like TEXINPUTS=.:/my/macro/dir: to add a personal directory to a search path. Is this what I'm supposed to do? Do I just stick that verbatim in the ../2020/texmf.cnf file?


By default, TeX Live maintains three distribution subtrees where files for running LaTeX documents are searched for:

  1. the main distribution tree, corresponding to the variable TEXMFDIST;
  2. the local tree, corresponding to TEXMFLOCAL;
  3. the personal tree, corresponding to TEXMFHOME.

The standard value for the second one is .../texlive/texmf-local and this is where you put the style file. You should have created the whole structure, that is


and in this directory place dropping.sty.

In your case ... seems to stand for C:/texlive, on my system it's /usr/local/texlive/2020.

On a Unix-based system, I'd do

mkdir -p $(kpsewhich -var-value TEXMFLOCAL)/tex/latex/dropping

(with suitable privileges). On Windows there could be a similar way, but you can always look at the output of kpsewhich -var-value TEXMFLOCAL and copy-paste it when needed.

Next the task is to run mktexlsr (or texhash, but the name is deprecated) without options. This is because TEXMFLOCAL is searched in by looking at the ls-R file.

Never do mktexlsr ~/texmf: if a file named ls-R is found, the programs only “see” files that are listed there and don't do a recursive lookup.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.