[tex-k] web2c-7.5.4, tetex-2.99.10-beta -- patches and problem

Thomas Esser te at dbs.uni-hannover.de
Wed Jan 26 21:48:55 CET 2005


> I read the documentation, and have browsed a bit through the sources.  I 
> still don't really understand what the problem would be with
> 
> TEXMF='{$TEXMFHOME,!!$TEXMFCONFIG,!!$TEXMFVAR,!!$TEXMFMAIN,!!$TEXMFLOCAL,!!$TEXMFDIST}'
> 
> as a default.  Can you explain, please?  How would this cause problems with 
> updmap/texconfig/etc.?  If I, as a random user, run updmap, I'd think the 
> changed files SHOULD go into my home directory.  If updmap etc. wrote into 
> the first writable directory in TEXMF, everything would seem to work out OK.

Writing into the first writable directory in the TEXMF list would be
a different concept and this makes the use of TEXMFCONFIG / TEXMFVAR
pointless. And in your setup, it would always be TEXMFHOME.

If I want to use TEXMFCONFIG / TEXMFVAR as write pointers for my tools,
I must list them first.

Example how it could go wrong if set up otherwise: Assume that
some user has a language.dat file in his TEXMFHOME and he sets
TEXMFCONFIG=$TEXMFCONFIG=$HOME/texmf-texconfig.

If he runs "texconfig hyphen latex" then his modified language.dat gets
copied into $TEXMFCONFIG and it won't be used from there, because it is
shadowed by the version in TEXMFHOME. The old version will be used and
the user will complain about texconfig which does not work.

> It seems like a bad idea to set TEXMFVAR=$TEXMFHOME and 
> TEXMFCONFIG=$TEXMFHOME. If someone had built a separate TEXMFVAR or 
>  TEXMFCONFIG, then I'd need to copy the entire contents of that tree into 
> TEXMFHOME; it would become unclear what I had changed.  I'm happy with 

No, not if that "someone" has used TEXMFMAIN for this. In that case, you
could use his versions for those files where you don't have your own copy.

> Some particularly bad problems may come from packagers who set 

Packagers will do whatever they want. If someone has the time to write
a readme what packagers should do and what they should not, I'd happily
add that to the distribution.

> Nits: The definition of SYSTEXMF says, effectively, that TEXMFCONFIG and 
> TEXMFVAR are per-user.

Don't talk about variables, better think in terms of directories. In the
default configuration, TEXMFCONFIG = TEXMFVAR = TEXMFMAIN and this is
listed in SYSTEXMF. If some user reassigns TEXMFCONFIG / TEXMFVAR to
one of his trees, then it is right that these are not included in SYSTEXMF.

> not, SYSTEXMF should be updated.  Also, the comment above TEXMF's 
> definition in texk/kpathsea/texmf.cnf is out of date.

Maybe, this should be shortened to the part explaining the braces. It
might have made sense in the past to explain how to use multiple trees,
but it is the default for many years. And the default definition is
already an example, so I don't see the point to repeat it all in the
comment.

> thought for a lot of people, to adapt their setups.  I still haven't quite 
> figured out what I should personally do.

Hm... You could try to detect teTeX-3.0 and then strictly follow its rules:
  - write generated data (tfm files) into TEXMFVAR
  - when modifying lcdftools.map, first search the file with kpsewhich,
    then store the modified file in TEXMFCONFIG

In your manual, tell people to make sure that TEXMFCONFIG / TEXMFVAR
point to some directory that is writable.

Thomas



More information about the tex-k mailing list