[tex-live] Has anything changed in the order TL searches for packages?

Urs Liska lists at openlilylib.org
Thu May 17 10:50:17 CEST 2018


Hi Norbert,

thank you for pointing this out in more detail.

After your earlier post I had already tried to follow your solution - 
but with a mistake: I created an additional link in ~/texmf/tex/lualatex 
instead of ..luatex. Now that I changed this it finally works.

I have now created *two* symlinks to my latex-git directory, from both 
~texmf/tex/latex and ~texmf/tex/luatex, and I hope this won't create 
other conflicting situations down the road. For now it works, and I know 
I'll have to do a lot of work explaining this in the Contributors' Guide 
(where the project set-up is already somewhat "fragile", with numerous 
variable elements ...).

Best
Urs

Am 17.05.2018 um 10:37 schrieb Norbert Preining:
> Hi all,
>
> first of all, this is NOT a problem with Debian, it happens the same way
> in normal TeX Live
>
> $ kpsewhich lyluatex.sty
> /home/norbert/texmf/tex/latex/latex-git/lyluatex/lyluatex.sty
> $ lualatex
> This is LuaTeX, Version 1.07.0 (TeX Live 2018)
>   restricted system commands enabled.
> **\relax
> LaTeX2e <2018-04-01> patch level 4
> (using write cache: /home/norbert/tl/2018/texmf-var/luatex-cache/generic)(using read cache: /home/norbert/tl/2018/texmf-var/luatex-cache/generic /home/norbert/.texlive2018/texmf-var/luatex-cache/generic)
> luaotfload | main : initialization completed in 0.135 seconds
> *\documentclass{article}\relax
> (/home/norbert/tl/2018/texmf-dist/tex/latex/base/article.cls
> Document Class: article 2014/09/29 v1.4h Standard LaTeX document class
> (/home/norbert/tl/2018/texmf-dist/tex/latex/base/size10.clo(load luc: /home/nor
> bert/tl/2018/texmf-var/luatex-cache/generic/fonts/otl/lmroman10-regular.luc)))
> *\usepackage{lyluatex}\relax
> (/home/norbert/tl/2018/texmf-dist/tex/luatex/lyluatex/lyluatex.sty
> ...
>
>
> The reason is simple:
> $ kpsewhich -progname=luatex -expand-braces='$TEXINPUTS' | sed -e 's/:/\n/g'
> .
> /home/norbert/.texlive2018/texmf-config/tex/luatex//
> /home/norbert/.texlive2018/texmf-var/tex/luatex//
> /home/norbert/texmf/tex/luatex//
> !!/usr/local/share/texmf/tex/luatex//
> !!/home/norbert/tl/2018/texmf-config/tex/luatex//
> !!/home/norbert/tl/2018/texmf-var/tex/luatex//
> !!/home/norbert/tl/2018/texmf-dist/tex/luatex//
> /home/norbert/.texlive2018/texmf-config/tex/plain//
> /home/norbert/.texlive2018/texmf-var/tex/plain//
> /home/norbert/texmf/tex/plain//
> !!/usr/local/share/texmf/tex/plain//
> !!/home/norbert/tl/2018/texmf-config/tex/plain//
> !!/home/norbert/tl/2018/texmf-var/tex/plain//
> !!/home/norbert/tl/2018/texmf-dist/tex/plain//
> /home/norbert/.texlive2018/texmf-config/tex/generic//
> /home/norbert/.texlive2018/texmf-var/tex/generic//
> /home/norbert/texmf/tex/generic//
> !!/usr/local/share/texmf/tex/generic//
> !!/home/norbert/tl/2018/texmf-config/tex/generic//
> !!/home/norbert/tl/2018/texmf-var/tex/generic//
> !!/home/norbert/tl/2018/texmf-dist/tex/generic//
> /home/norbert/.texlive2018/texmf-config/tex///
> /home/norbert/.texlive2018/texmf-var/tex///
> /home/norbert/texmf/tex///
> !!/usr/local/share/texmf/tex///
> !!/home/norbert/tl/2018/texmf-config/tex///
> !!/home/norbert/tl/2018/texmf-var/tex///
> !!/home/norbert/tl/2018/texmf-dist/tex///
>
>
> Which clearly shows that
>    !!/home/norbert/tl/2018/texmf-dist/tex/luatex//
> comes *before*
>    /home/norbert/texmf/tex//
>
> Because the engine specific dirs are searched first through all the
> trees, and then the more general one.
>
>
> Moving the file from
>    ~/texmf/tex/latex/latex-git/lyluatex/lyluatex.sty
> to
>    texmf/tex/luatex/latex-git/lyluatex/lyluatex.sty
> it immediatly works out of the box:
>
> $ lualatex minimal.tex
> This is LuaTeX, Version 1.07.0 (TeX Live 2018)
>   restricted system commands enabled.
> (./minimal.tex
> LaTeX2e <2018-04-01> patch level 4
> (using write cache: /home/norbert/tl/2018/texmf-var/luatex-cache/generic)(using
>   read cache: /home/norbert/tl/2018/texmf-var/luatex-cache/generic /home/norbert
> /.texlive2018/texmf-var/luatex-cache/generic)
> luaotfload | main : initialization completed in 0.125 seconds
> (/home/norbert/tl/2018/texmf-dist/tex/latex/base/article.cls
> Document Class: article 2014/09/29 v1.4h Standard LaTeX document class
> (/home/norbert/tl/2018/texmf-dist/tex/latex/base/size10.clo(load luc: /home/nor
> bert/tl/2018/texmf-var/luatex-cache/generic/fonts/otl/lmroman10-regular.luc)))
> (/home/norbert/texmf/tex/luatex/latex-git/lyluatex/lyluatex.sty)
> ....
>
>
> So the explanation is simply by reading texmf.cnf:
>    TEXINPUTS.luatex        = .;$TEXMF/tex/{luatex,plain,generic,}//
>    TEXMF = {$TEXMFAUXTREES$TEXMFCONFIG,$TEXMFVAR,$TEXMFHOME,!!$TEXMFLOCAL,$TEXMFSYSCONFIG,!!$TEXMFSYSVAR,!!$TEXMFDIST}
> And the expansion seems to first expand the
>    {luatex,plain,generic,}
> and then the
>    TEXMF
> part
>
>
>
> This has always been like this, the only change was that lyluatex moved
> to the luatex hierarchy, and thus is found before the one in $HOME.
>
> Solution, follow the same TDS as the original package.
>
>
> Norbert
>
> --
> PREINING Norbert                               http://www.preining.info
> Accelia Inc.     +    JAIST     +    TeX Live     +    Debian Developer
> GPG: 0x860CDC13   fp: F7D8 A928 26E3 16A1 9FA0 ACF0 6CAC A448 860C DC13



More information about the tex-live mailing list