TeX Live5 env vars [old:] fptex0.4a3

Staszek Wawrykiewicz StaW@gust.org.pl
Thu, 24 Feb 2000 04:41:22 +0100 (MET)


Kaja Christiansen:
> While talking about texmf.cnf: is there any particular reason for
> having both VARTEXMF and TEXMFLOCAL? Wouldn't one site specific tree do?

Fabrice Popineau:
> VARTEXMF and TEXMFLOCAL mostly have the same role. 
> ...
> There is no such difference under windows.
> ...
> So my intention was to use TEXMFLOCAL for all local configuration 
> ...
> Maybe for completeness, VARTEXMF should point to $TEXMFLOCAL.

Having CD TeX Live in mind... 
I think that seting TEXMFCNF to some directory (as Fabrice proposed) can be 
optimal only on Windows, provided that we have here also texmf.cnf copy 
with some modifications. The actual installations and texconfig (teTeX) use 
only the $MAINTEXMF/web2c/texmf.cnf; it means that even if the local tree 
for configuration files was made automatically by texconfig (not _by hand_), 
we still use the same main texmf.cnf with all consequences. The texmf.cnf 
contains, e.g., a line:
  VARTEXMF=$SELFAUTOPARENT/texmf-var
and changing it was ignored during installation (many cases).
On the other hand, the windows installer proposes something like 
.../texmf.local for the local tree (also often ignored!, but look at the 
different names), so even we set TEXMFCNF to that directory, nothing 
will work without manual changes in the main texmf.cnf, or without
seting VARTEXMF in the system environment. What more else has to be set?
The installation and the whole stuff is enough complicate...
Please remember all mails on mailing lists or private mailbox, additional 
explanations, and so on.

So we have to decide what is more important in the multiplatform 
installations as TeX Live.
My goal is to have homogenous installations on all systems, without 
specialities: ``this is for Windows'', ``this is for Linux''.

Assume such situation:
1. The admin installed TeX Live somewhere on the server and didn't touch
   the main texmf.cnf. Evebody has access to the binaries and TEMFMAIN 
   tree (RO).
2. In most cases, he doesn't know all nuances of TeX installation (he was 
   only asked to make the installation as it was prepared and he has no 
   more time to be absorbed). Somehow real, isn't it? :-(

Last time I proposed something like this for the default texmf.cnf:
HOMETEXMF=$HOME/texmf  % already set
VARTEXMF=$HOMETEXMF    % it is only set by experienced users ;-)
TEXMFMAIN={$VARTEXMF,$TEXMFLOCAL,!!$TEXMFMAIN}

(TEXMFLOCAL can be set as it was decided during installation, it is enough
stressed by the installation scripts, so we can ignore it here).

In such a case the normal user on Unix/Linux can just start texconfig 
(_without_ seting any more variables in the environment), which, in turn, 
will build the local tree (_not manualy_; it is not so easy for the BLU), 
and then can start his/her adventure with TeX.
Please also consider that, in many cases, the user can have more knowledge 
about TeX than sysadmin!
As I've  already wrote (and Kaja also has agreed), the main disandvantage
is that texconfig rebuilds all formats declared in the main fmtutil.cnf
--hardly acceptable by the sysadmin and also by the user (I always consider 
TeX Live).
Fabrice reminded also that on Windows we can have problems with $HOME, 
since it is rather rarely set and used ;-)

So to conclude and make live easier:
1. we can leave texmf.cnf on the CD TeX Live `as it is', but have to adapt 
   installation programs (both install-cd.sh and setup.exe for Win32) 
   to reflect the same defaults to the proposed during installation 
   additional directories (if we have, e.g., in texmf.cnf
   TEXMFLOCAL=$SELFAUTOPARENT/texmf-local, the Windows setup would propose 
   `texmf-local', not `texmf.local', OK?)
2. we can stick that the user has only to set VARTEXMF, if he wants his 
   local configuration and automagically build tree (at the moment it works 
   on Unix, but I think it can be also Windows).
   Can texconfig be changed to not start with remaking all formats?
   I would propose adding `make all formats' item in the menu. 
   What do think, Thomas?
3. we can stress in the documentations (and even during instalations)
   that seting VARTEXMF is the most important (by now, it is somehow not 
   well interpreted).
4. we can have quite the same strategy for both worlds (Unix and Windows).

Staszek Wawrykiewicz
email: staw@gust.org.pl