[tex-live] More on texlive configuration

John R. Culleton john at wexfordpress.com
Tue Aug 22 14:35:30 CEST 2006

On Tuesday 22 August 2006 03:23, Frank Küster wrote:
> Reinhard Kotucha <reinhard.kotucha at web.de> wrote:
> >>>>>> "Ken" == Ken Brooks <kenb at rpath.com> writes:
> >   >
> >   > Now, why the desire for .../texmf-local if /usr/local/share/texmf
> >   > is already available?
> >
> > There is no UNIX program I know which is provided by the distribution
> > and expects any files in /usr/local.
> Not expect, but accept.
> > /usr/local should be empty after you installed the system and no
> > program provided by the distribution should expect any file there.
> >
> > /usr/share/texmf-local is similar as /usr/share/emacs/site-lisp or
> > /usr/lib/perl5/site_perl.
> On a Debian system (and I assume this is the same on most Linux
> systems), files in /usr/local/ are also searched for, e.g. by Perl or
> Emacs:
> $ perl -e 'print "@INC\n";'
> /etc/perl /usr/local/lib/perl/5.8.4 /usr/local/share/perl/5.8.4
> /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.8 /usr/share/perl/5.8
> /usr/local/lib/site_perl .
> Emacs also has /usr/local/share/emacs/site-lisp and
> /usr/local/share/emacs/<version>/site-lisp in its load-path, besides
> /usr/share/emacs/site-lisp and friends.
> On a TeX system, it makes sense IMO to have only one local tree, either
> SELFAUTOLOC/share/texmf-local or /usr/local/share/texmf.  As far as I
> understand the comment in texmf.in,
> ,----
> | % This definition isn't used from this .cnf file itself (that would be
> | % paradoxical), but the compile-time default in paths.h is built from it.
> | % The SELFAUTO* variables are set automatically from the location of
> | % argv[0], in kpse_set_progname.
> | %
> | % The TETEXDIR stuff isn't likely to relevant unless you're using teTeX,
> | % but it doesn't hurt.
> | %
> | % For security reasons, it is better not to have . part of the path.
> | %
> | {$SELFAUTOLOC,$SELFAUTODIR,$SELFAUTOPARENT}{,{/share,}/texmf{-local,}/web
> |2c};$TETEXDIR;$TEXMF/web2c;@web2c@
> `----
> selfautoloc is mainly used and intended to generate the search path
> information for texmf.cnf at compile time.  At runtime, it's probably
> more transparent to explicitly configure TEXMFLOCAL in texmf.cnf.
> Regards, Frank

On my Slackware Linux system the copy of TeX that comes with the
OS is loaded into /usr/share/texmf. It is tetex based I believe.
The default location for the TeXlive distribution is
/usr/local/texlive, with a further subdivision into 2005 and
texmf-local.  The surest way to get a recent copy of Context is
to download the minimal Context distro and unzip it in a separate 
directory. I use /usr/local/cont. I always have trouble updating Context 
in a regular distribution. But Context is updated more or less en bloc 
and the software changes frequently so I need to keep reasonably

As a result I have three different distros, each with its own
internal path logic. I end up copying the texmf-local tree or
parts of it to the three different spaces. I switch from one to
the other through /etc/profile, where I have three different path
definitions, two of them commented out.  

I do almost all my work in pdftex or Context. The minimal Context
distro has both of these but not LaTeX, plain tex etc. 

None of the above  schema is very elegant. But I don't chase
around setting values. I take the distributions the way thay are
issued and put them in their default locations.  My priority is
the standalone Context distribution, followed by texlive. When
there is a new texlive I may revert to that as my day-to-day
distro since it should have a recent Context included.

Bottom line I have things to typeset and the less I fuss with the
installation business the better for me. If I take the default
locations of any TeX distro and in my profile point to the proper
bin directory it seems always to work. 

John Culleton

John Culleton
Able Indexing and Typesetting
Precision typesetting (tm) at reasonable cost.
Satisfaction guaranteed. 

More information about the tex-live mailing list