[tex-live] TEXINPUTS on windows

Vladimir Lomov lomov.vl at gmail.com
Sat Nov 6 11:07:07 CET 2010


** Lars Madsen [2010-11-05 14:35:11 +0100]:

> Given a TL10 on windows and a user who has a dir with his own
> private packages, say C:\mytexstuff
> 
> How do we add this to TEXINPUTS in TL10?
> 
> MikTeX has a very easy interface for this, but I have no idea as to
> how one should add this on TL10. I assume it is texmf.cnf in
> texlive/2010/, but I cannot figure out the syntax
> 
> (an exaple of this would be nice in the manual)

Here you could find advice about TEXINPUTS:
  http://www.tex.ac.uk/cgi-bin/texfaq2html?label=tempinst
and here
  http://www.tex.ac.uk/cgi-bin/texfaq2html?label=privinst
is, may be, the awnser to your real question.

If have in mind only LaTeX:
  http://www.tex.ac.uk/cgi-bin/texfaq2html?label=installthings

Below is mine attempt to answer to your question.

First, you have to advice to use directory structure (you may use
different illustrations for this principle).

Assume that user use file 'worksA.tex' for plain TeX and wrote
his/her own package 'workB.sty' (may be just combining other
standard ones). Where he/she should put that files? The answer:
see TDS. But if very simple then we have following:
1. DON'T put all of them into
    C:\mytexstuff

2.1 Place plain TeX stuff in
    C:\mytexstuff\tex\plain
in the example
    C:\mytexstuff\tex\plain\works\workA.tex

2.2 Place LaTeX stuff in
    C:\mytexstuff\tex\latex
in the example
    C:\mytexstuff\tex\latex\works\workB.sty

Of course instead of 'works' user should use more
descriptive (for him/her) name.

2.3 If some files could be used in plain TeX and in LaTex
place them into
    C:\mystufftex\tex\generic

This is more or less the same as in FAQ.

Now how tex/latex will find them.

The most easy is to use TEXMFHOME.

Create in HOME or USERPROFILE directory 'texmf' (private!)
and put all stuff there (so in above change C:\mytexstuff to
TEXMFHOME, by default on linux TEXMFHOME=$HOME/texmf,
I assume that on Windows TEXMFHOME = %USERPROFILE%/texmf but I
didn't check!). That's all! You even don't need to run any
'hashing' procedure because tex will search TEXMFHOME every
time (in contrast to TEXMF, for which only 'database' file
is used, though this is configurable).

Okey, then where to put files that will be used for several
users?

Use TEXMFLOCAL. Of course you have to run 'texconfig-sys rehash'
(will rehash all trees).

If you still want to place 'all my stuff as is and I want that
tex find it' then shoot in your foot :) Really.
Begin organize your files, spend time for it.

So, remember, that you always have HOME/USERPROFILE, so you always
have TEXMFHOME, put stuff there but organize them!

(You could test moving your stuff into TEXMFHOME and if this works
leave them there but don't complain after that).

---
WBR, Vladimir Lomov.

-- 
Death, when unnecessary, is a tragic thing.
		-- Flint, "Requiem for Methuselah", stardate 5843.7


More information about the tex-live mailing list