[tex-live] More trouble with TeXLive 2008 preview on Windows

Vasile Gaburici vgaburici at gmail.com
Sun Aug 10 09:42:08 CEST 2008


Well, that's easy enough to change, but on XP one must additionally
change TEXMFHOME as well since %HOMEPATH% has spaces in it too; on
Vista %HOMEPATH% doesn't have blanks in it. I used
C:/tlhome/$USERNAME, so it would still be different for each user. (I
saw that %SystemRoot% is $SystemRoot to TeXLive, so I put $USERNAME
for %USERNAME%). But changing it in the installer wasn't enough...

C:\tlhome> luatools --generate

LuaTools | error unable to locate texmfcnf.lua
LuaTools | loading C:/texlive/2008/texmf/web2c/texmf.cnf
LuaTools | preparing configuration for Documents and
Settings/Vasile/luatex-cache/context/3236d28ff38909cc68507fe0979fbbf0/trees/a9242cc4ac8b58f8a1b613c7103ba2f1.tma
LuaTools | saving configuration in Documents and
Settings/Vasile/luatex-cache/context/3236d28ff38909cc68507fe0979fbbf0/trees/a9242cc4ac8b58f8a1b613c7103ba2f1.tma
LuaTools | compiling configuration to Documents and
Settings/Vasile/luatex-cache/context/3236d28ff38909cc68507fe0979fbbf0/trees/a9242cc4ac8b58f8a1b613c7103ba2f1.tmctexluac:
cannot open and: No such file or directory

LuaTools | compiling failed for configuration, deleting file Documents
and Settings/Vasile/luatex-cache/context/3236d28ff38909cc68507fe0979fbbf0/trees/a9242cc4a
c8b58f8a1b613c7103ba2f1.tmc
LuaTools | locating list of /.texlive2008/texmf-config
LuaTools | locating list of /.texlive2008/texmf-var

As you can see it keeps trying (and failing) to use "Documents and
Settings", but goes for the current directory for .texlive2008. It
looks like luatools ignores C:/texlive/2008/texmf.cnf completely.
Unfortunately that's where TEXMFHOME gets set by the installer. So, I
manually changed  C:/texlive/2008/texmf/web2c/texmf.cnf to read:

TEXMFHOME = C:/tlhome/$USERNAME
TEXMFVAR = C:/tlhome/$USERNAME/.texlive2008/texmf-var
TEXMFCONFIG = C:/tlhome/$USERNAME/.texlive2008/texmf-config

I ran luatools again, and... I got the exact same errors. Then I
changed LuaTools C:/texlive/2008/texmf/web2c/context.cnf to read
HOMETEXMF     = C:/tlhome/$USERNAME, and this helped a little since it tried:

LuaTools | loading C:/texlive/2008/texmf/web2c/texmf.cnf
LuaTools | preparing configuration for Documents and
Settings/Vasile/luatex-cache/context/3236d28ff38909cc68507fe0979fbbf0/trees/a9242cc4ac8b58f8a1b613c7103ba2f1.tma
LuaTools | saving configuration in Documents and
Settings/Vasile/luatex-cache/context/3236d28ff38909cc68507fe0979fbbf0/trees/a9242cc4ac8b58f8a1b613c7103ba2f1.tma
LuaTools | compiling configuration to Documents and
Settings/Vasile/luatex-cache/context/3236d28ff38909cc68507fe0979fbbf0/trees/a9242cc4ac8b58f8a1b613c7103ba2f1.tmctexluac:
cannot open and: No such file or directory

LuaTools | compiling failed for configuration, deleting file Documents
and Settings/Vasile/luatex-cache/context/3236d28ff38909cc68507fe0979fbbf0/trees/a9242cc4ac8b58f8a1b613c7103ba2f1.tmc
LuaTools | locating list of C:/tlhome/Vasile/.texlive2008/texmf-config
LuaTools | locating list of C:/tlhome/Vasile/.texlive2008/texmf-var
LuaTools | locating list of C:/tlhome/Vasile

As you can see it accesses C:/tlhome/Vasile/.texlive2008/ this time,
but it still doesn't use it; it still goes for "Documents and
Settings" to compile stuff... At this point I have no ~ in any .cnf
file (I grepped). So I looked in the .lua files. There's a bunch of
them since instead writing a single function to deal with paths and ~
substitution there's copy & pasted code everywhere. Anyway, it seem
that the problem is in lines like 'cachepath = os.getenv("TEXMFCACHE")
or os.getenv("HOME") or os.getenv("HOMEPATH") or os.getenv("TMP")'...
since os.getenv("HOMEPATH") gives "\Documents and Settings\Vasile". I
removed os.getenv("HOMEPATH") and now it goes for the next one, %TMP%,
which works:

C:\tlhome> luatools --generate

LuaTools | error unable to locate texmfcnf.lua
LuaTools | loading C:/texlive/2008/texmf/web2c/texmf.cnf
LuaTools | preparing configuration for
C:/DOCUME~1/Vasile/LOCALS~1/Temp/luatex-cache/context/3236d28ff38909cc68507fe0979fbbf0/trees/a9242cc4ac8b58f8a1b613c7103ba2f1.tma
LuaTools | saving configuration in
C:/DOCUME~1/Vasile/LOCALS~1/Temp/luatex-cache/context/3236d28ff38909cc68507fe0979fbbf0/trees/a9242cc4ac8b58f8a1b613c7103ba2f1.tma
LuaTools | compiling configuration to
C:/DOCUME~1/Vasile/LOCALS~1/Temp/luatex-cache/context/3236d28ff38909cc68507fe0979fbbf0/trees/a9242cc4ac8b58f8a1b613c7103ba2f1.tmc

The real bug seem that lua stuff assumes os.getenv("TEXMFCACHE") will
actually work on Windows. But it seems that setting stuff in .cnf
files doesn't set environment variables on Windows, even inside Lua.
I'll let you guys sort it out from here...


BTW, since I paid close attention to the installation this time I
noticed a couple of harmless warnings:
tar: Unknown file type '2' for
texmf-dist/doc/latex/marvosym/mac/README, extracted as normal file
tar: Unknown file type '2' for
texmf-dist/doc/latex/marvosym/vtex/README, extracted as normal file


On Thu, Aug 7, 2008 at 5:41 PM, Staszek Wawrykiewicz <staw at gust.org.pl> wrote:
> On Thu, 7 Aug 2008, Vasile Gaburici wrote:
>
>> Thanks, I was aware of the contextgarden wiki, that's where I've got
>> the commands from :) The problem is that texlive 2008 (on Windows)
>> defaults to paths that do have spaces in them, i.e. "Program Files".
>> Perhaps this should be changed for the release...
>
> Sorry, we cannot change that for so many reasons (please read The TL
> Guide). If the user have write permissions elsewhere, he can change
> TLROOT to eg. d:\tl\2008
>
> --
> Staszek Wawrykiewicz
> StaW at gust.org.pl
>
>
>


More information about the tex-live mailing list