JezK
Edit File: 05TeXMF.cnf
% original texmf.cnf -- runtime path configuration file for kpathsea. % (If you change or delete `original' on the previous line, the % distribution won't install its version over yours.) % Public domain. % % What follows is a super-summary of what this .cnf file can % contain. Please read the Kpathsea manual for more information. % % texmf.cnf is generated from texmf.in, by replacing @var@ with the % value of the Make variable `var', via a sed file texmf.sed, generated % (once) by kpathsea/Makefile (itself generated from kpathsea/Makefile.in % by configure). % % Any identifier (sticking to A-Za-z_ for names is safest) can be assigned. % The `=' (and surrounding spaces) is optional. % No % or @ in texmf.in, for the sake of autogeneration. % (However, %'s and @'s can be edited into texmf.cnf or put in envvar values.) % $foo (or ${foo}) in a value expands to the envvar or cnf value of foo. % % Earlier entries (in the same or another file) override later ones, and % an environment variable foo overrides any texmf.cnf definition of foo. % % All definitions are read before anything is expanded, so you can use % variables before they are defined. % % If a variable assignment is qualified with `.PROGRAM', it is ignored % unless the current executable (last filename component of argv[0]) is % named PROGRAM. This foo.PROGRAM construct is not recognized on the % right-hand side. For environment variables, use FOO_PROGRAM. % % Which file formats use which paths for searches is described in the % various programs' and the kpathsea documentation. % % // means to search subdirectories (recursively). % A leading !! means to look only in the ls-R db, never on the disk. % A leading/trailing/doubled ; in the paths will be expanded into the % compile-time default. Probably not what you want. % % You can use brace notation, for example: /usr/local/{mytex:othertex} % expands to /usr/local/mytex:/usr/local/othertex. Instead of the path % separator you can use a comma: /usr/local/{mytex,othertex} also expands % to /usr/local/mytex:/usr/local/othertex. However, the use of the comma % instead of the path separator is deprecated. % % The text above assumes thet path separator is a colon (:). Non-UNIX % systems use different path separators, like the semicolon (;). % Part 1: Search paths and directories. % You can set an environment variable to override TEXMF if you're testing % a new TeX tree, without changing anything else. % % You may wish to use one of the $SELFAUTO... variables here so TeX will % find where to look dynamically. See the manual and the definition % below of TEXMFCNF. % The tree containing the runtime files closely related to the specific % program version used: TEXMFMAIN = /usr/share/texmf % The main distribution tree: TEXMFDIST = /usr/share/texmf-texlive % A place for local additions to a "standard" texmf tree. % This tree is not used for local configuration maintained by % texconfig, it uses TEXMFCONFIG below. TEXMFLOCAL = /usr/local/share/texmf % TEXMFSYSVAR, where texconfig-sys stores variable runtime data. % With teTeX-3.0 or later, this must be set. % For sharing this tree with $TEXMFMAIN: % TEXMFSYSVAR = $TEXMFMAIN % For using a separate tree: % TEXMFSYSVAR = /usr/share/texmf-var TEXMFSYSVAR = /var/lib/texmf % TEXMFSYSCONFIG, where texconfig-sys stores configuration data. % With teTeX-3.0 or later, this must be set. % For sharing this tree with $TEXMFMAIN: % TEXMFSYSCONFIG = $TEXMFMAIN % For using a separate tree: % TEXMFSYSCONFIG = /usr/share/texmf-config TEXMFSYSCONFIG = /etc/texmf % User texmf trees are allowed as follows. % This used to be HOMETEXMF. TEXMFHOME = $HOME/texmf % TEXMFVAR, where texconfig stores variable runtime data. % With teTeX-3.0 or later, this must be set. % For sharing this tree with $TEXMFMAIN: % TEXMFVAR = $TEXMFMAIN % For using a separate tree: % TEXMFVAR = $HOME/.texmf-var # teTeX 3.0 default TEXMFVAR = $HOME/.texmf-var % TEXMFCONFIG, where texconfig stores configuration data. % With teTeX-3.0 or later, this must be set. % For sharing this tree with $TEXMFMAIN: % TEXMFCONFIG = $TEXMFMAIN % For using a separate tree: % TEXMFCONFIG = $HOME/.texmf-config # teTeX 3.0 default % For using a separate tree: % TEXMFCONFIG = /usr/share/texmf-config TEXMFCONFIG = $HOME/.texmf-config % Now, list all the texmf trees. If you have multiple trees you can % use shell brace notation, like this: % TEXMF = {$TEXMFHOME,!!$TEXMFLOCAL,!!$TEXMFMAIN} % The braces are necessary. % % For texconfig to work properly, TEXMFCONFIG and TEXMFVAR should be named % explicitly and before all other trees. TEXMF = {$TEXMFCONFIG,$TEXMFVAR,$TEXMFHOME,$TEXMFSYSCONFIG,!!$TEXMFSYSVAR,!!$TEXMFLOCAL,!!$TEXMFMAIN,!!$TEXMFDIST} % The system trees. These are the trees that are shared by all the users. % If a tree appears in this list, the mktex* scripts will use % VARTEXFONTS for generated files, if the original tree isn't writable; % otherwise the current working directory is used. SYSTEXMF = $TEXMFSYSVAR,$TEXMFLOCAL;$TEXMFMAIN;$TEXMFDIST % Where generated fonts may be written. This tree is used when the sources % were found in a system tree and either that tree wasn't writable, or the % varfonts feature was enabled in MT_FEATURES in mktex.cnf. VARTEXFONTS = /tmp/texfonts % Where to look for ls-R files. There need not be an ls-R in the % directories in this path, but if there is one, Kpathsea will use it. % % By default, this is only the !! elements of TEXMF, so that mktexlsr % does not create ls-R files in the non-!! elements -- because if an % ls-R is present, it will be used, and the disk will not be searched. % This is arguably a bug in kpathsea, but we will not think about it now. % % Historically, Debian has included $TEXMFHOME here, and therefore % keeps updating its ls-R file. It is safe to remove it from this list TEXMFDBS = {!!$TEXMFSYSVAR,!!$TEXMFLOCAL,!!$TEXMFMAIN,!!$TEXMFDIST} % It may be convenient to define TEXMF like this: % TEXMF = {$TEXMFHOME,!!$TEXMFLOCAL,!!$TEXMFMAIN,$HOME} % which allows users to set up entire texmf trees, and tells TeX to % look in places like ~/tex and ~/bibtex. If you do this, define TEXMFDBS % like this: % TEXMFDBS = $TEXMFHOME;$TEXMFLOCAL;$TEXMFMAIN;$VARTEXFONTS % or mktexlsr will generate an ls-R file for $HOME when called, which is % rarely desirable. If you do this you'll want to define SYSTEXMF like % this: % SYSTEXMF = $TEXMFLOCAL;$TEXMFMAIN;$TEXMFDIST % so that fonts from a user's tree won't escape into the global trees. % % On some systems, there will be a system tree which contains all the font % files that may be created as well as the formats. For example % TEXMFVAR = /var/lib/texmf % is used on many Linux systems. In this case, set VARTEXFONTS like this % VARTEXFONTS = $TEXMFVAR/fonts % and do not mention it in TEXMFDBS (but _do_ mention TEXMFVAR). % % Remove $VARTEXFONTS from TEXMFDBS if the VARTEXFONTS directory is below % one of the TEXMF directories (avoids overlapping ls-R files).