[tex-live] ls-R files and nasty symlinks

Karl Berry karl at freefriends.org
Sun Oct 19 18:05:13 CEST 2014


Hi Nelson,

Sorry for the pain.  I guess all I can do is essentially reiterate what
Heiko said: mktexlsr is supposed to be running on texmf trees, and that
does not include users' home directories.  Do you have TEXMFHOME = ~ at
Utah, perhaps?  Or TEXMFLOCAL?  That's the only reason I can think of
offhand why it would be going there.  The default is ~/texmf.

As another wrinkle, by default TEXMFHOME doesn't even have an ls-R
file and mktexlsr shouldn't run on it.  Running
  kpsewhich --show-path=ls-R
(this is what mktexlsr does) should show the list of trees being used.

It comes from the TEXMFDBS config variable (or env, but hopefully it is
not set in the environment).  As usual, adding --debug=-1 should show
lots of information about how they are being determined.  When I run
/usr/local/texlive/2014/bin/sparc-solaris/kpsewhich --show-path=ls-R
on sunlit, ~ isn't involved; it looks normal.

Finally, about removing the -L option.  Of course you could just remove
it as a quick sort-of fix, although some users' homes will be plenty big
even without following symlinks.  As Heiko says, mktexlsr needs to be
prevented from running on ~ at all.

If you do try removing the -L, though, I'd interested in hearing if it
makes any practical difference.  Although it's been included in the call
"forever" (going back to when the script was named MakeTeXls-R, 1997 and
earlier), I rather think that is a relic of when the tree was
specifically for Unix, and symlinks were used within it.  For many years
now, of course we have painfully kept all symlinks out of the
distributed texmf trees.  If a user creates a symlink in their tree,
*and* sets it up to use ls-R, *and* wants the symlink to be followed
.. well, I don't know.  Maybe there are people out there relying on
such setups.

Let me know,
Karl


More information about the tex-live mailing list