Hello, Folks--
Once again I'm returning to ConTeXt after a long absence [maybe if I
just kept using it I wouldn't have these problems?]. I'm trying to get
started with MkIV; I don't feel a strong need to have the very latest
code, so unless there are serious bugs, I want to use the version
included with TexLive. At any rate, that's what I currently have and
am trying to use. But I am running into issues with files not being
found, e.g.:
$ context --make
mtxrun | unknown script 'context.lua' or 'mtx-context.lua'
Yes, I ran mtxrun --generate first, though I am a bit confused as to
whether I need to run that *and* luatools --generate, or just one or
the other. Anyway, mtxrun --generate appears to work:
$ mtxrun --generate
....
resolvers | resolving | found configuration file
'/usr/share/texmf-dist/web2c/texmfcnf.lua'
....
system | lua | compiling
'/var/cache/texmf/luatex-cache/context/0399a8df3aef8d154781d0a9c2b8e28d/trees/5044cbe2799fe389b078f26ff6b9ee8e.lua'
into '/var/cache/texmf/luatex-cache/context/0399a8df3aef8d154781d0a9c2b8e28d/trees/5044cbe2799fe389b078f26ff6b9ee8e.luc'
system | lua | dumping
'/var/cache/texmf/luatex-cache/context/0399a8df3aef8d154781d0a9c2b8e28d/trees/5044cbe2799fe389b078f26ff6b9ee8e.lua'
into '/var/cache/texmf/luatex-cache/context/0399a8df3aef8d154781d0a9c2b8e28d/trees/5044cbe2799fe389b078f26ff6b9ee8e.luc'
stripped
resolvers | caching | 'files' compiled to
'/var/cache/texmf/luatex-cache/context/0399a8df3aef8d154781d0a9c2b8e28d/trees/5044cbe2799fe389b078f26ff6b9ee8e.luc'
This shows that mtxrun finds the correct configuration file--as far as
I know, /usr/share/texmf-dist/web2c/texmfcnf.lua is the only instance
of texmfcnf.lua on my system. And then it uses the value I have set in
texmfcnf.lua to cache its output:
TEXMFCACHE = "/var/cache/texmf",
-- not used by context at all
TEXMFSYSVAR = "$TEXMFCACHE",
TEXMFVAR = "$TEXMFCACHE",
So that's good. Yet the 'context' and 'luatools' commands can't find
the lua scripts. Well, I hypothesized that $LUAINPUTS might be wrong,
so I tried this:
LUAINPUTS=/usr/share/texmf-dist/scripts/context/lua luatools --generate
And it seems to work. However:
LUAINPUTS=/usr/share/texmf-dist/scripts/context/lua context --make
....
resolvers | resolving | using given filetype 'tex'
resolvers | resolving | remembering file 'cont-en.mkiv'
resolvers | resolving | using given filetype 'tex'
resolvers | resolving | remembering file 'cont-en.tex'
resolvers | formats | no tex source file with name 'cont-en' (mkiv or tex)
resolvers | formats | using format path
'/var/cache/texmf/luatex-cache/context/0399a8df3aef8d154781d0a9c2b8e28d/formats/luatex'
resolvers | resolving | using given filetype 'tex'
resolvers | resolving | remembering file 'cont-nl.mkiv'
resolvers | resolving | using given filetype 'tex'
resolvers | resolving | remembering file 'cont-nl.tex'
resolvers | formats | no tex source file with name 'cont-nl' (mkiv or tex)
system | total runtime: 0.239
So now the lua scripts are found, but the context macro files are not.
At this point let me describe how my system is set up. As I said
above, I'm attempting to use the ConTeXt that comes with TexLive. I've
just upgraded TeXLive to the 2013 release, but that does not seem to
affect these issues. Anyway, the executables are in /usr/bin;
/usr/bin/mtxrun is the complete Lua script (i.e. not a symlink or any
sort of stub), which appears to be identical to
$TEXMF/scripts/context/stubs/unix/mtxrun. /usr/bin/luatools and
/usr/bin/context also appear to be copies of their counterparts in the
aforementioned stubs directory.
The TeXLive packages for Arch provide the following trees:
/usr/share/texmf
/usr/share/texmf-dist
/usr/share/texmf-config
Almost everything important is now in /usr/share/texmf-dist, and there
are no ConTeXt-related files in /usr/share/texmf. Accordingly,
texmf.cnf contains the following definitions:
TEXMFDIST = $TEXMFROOT/texmf-dist
TEXMFMAIN = $TEXMFDIST
TEXMFLOCAL = /usr/local/share/texmf;/usr/share/texmf
So I have updated texmfcnf.lua to contain the following:
TEXMFDIST = "selfautoparent:texmf-dist",
TEXMFMAIN = "$TEXMFDIST",
TEXMFLOCAL = "/usr{/local}/share/texmf",
I'm not sure if that syntax is correct, but the definition of
TEXMFLOCAL does not appear to affect the issues I'm concerned with
here. Also, I should mention that my main reason for defining
TEXMFLOCAL as I did (as well as TEXMFCACHE = /var/cache/texmf), is
that I feel rather strongly (in keeping with what I understand to be
'Linux best practices') that files which are not managed by the Linux
package manager should not be under /usr. But if by chance that is
causing problems I don't absolutely have to do it that way.
Anyway, somehow important files are not being found. Any suggestions?
--
Matt Gushee