[tex-live] texmf.cnf-4WIN

Reinhard Kotucha reinhard.kotucha at web.de
Thu Feb 15 00:05:33 CET 2007

>>>>> "Staszek" == Staszek Wawrykiewicz <staw at gust.org.pl> writes:

  > On Sun, 4 Feb 2007, Reinhard Kotucha wrote:
  >> Hi, there are some significant differences between texmf.cnf and
  >> texmf.cnf-4WIN which are probably not desired, for instance:

  > Done, #3903

as far as I can see #3909 fixed the problem.  However, I noticed the
bug accidentally.  It would be nice if we can avoid problems like this
in the future.

The problem was that new features had been introduced, texmf.cnf had
been changed accordingly, but Staszek did not notice this change.

There had been similar problems in the past.  I wrote a little script
which derives texmf.cnf-4WIN from texmf.cnf and changes only variables
which should be set different on Windows.  However, such a script does
not solve all problems.  The main problem is that you have to know
when the main texmf.cnf file had been changed.

However, there is a better solution.  Kpathsea looks for texmf.cnf
files at various places.  All texmf.cnf files it finds are evaluated
but if a variable is set in one file it will never be overwritten if
it appears in a file which is evaluated later.

If you run

   kpsewhich --expand-path=\$TEXMFCNF

you'll see that it first looks for


Obviously it's best to create a file "Master/bin/win32/texmf.cnf"
which only contains things which are supposed to be different on

This has many advantages:

   1. Changes made in the main texmf.cnf file will be taken into
      account immediately.  Only variables you changed will not be

   2. The installer does not have to rename
      texmf.cnf-4WIN => texmf.cnf.

   3. You can add any comments to the variables you change (which my
      program doesn't support).

   4. People who want a full network installation can simply
      remove/rename bin/win32/texmf.cnf.

The only drawback is that people who do not know how things work might
be confused if something does not work as expected.  But this can be
solved easily by adding a comment to the main texmf.cnf file.  This is
needed anyway.  Many people unnecessarily make use of the TEXMFCNF
environment variable which is always a source of trouble.


Reinhard Kotucha			              Phone: +49-511-4592165
Marschnerstr. 25
D-30167 Hannover	                      mailto:reinhard.kotucha at web.de
Microsoft isn't the answer. Microsoft is the question, and the answer is NO.

More information about the tex-live mailing list