Re: Configuration of teTeX broken (send once more due to list problems)
Andreas Tille writes:
> I have installed tetex-base_0.9-5 and the other related teTeX packages
> -----------------------------------------------------------------------
> I think there are several problems:
> 1) As the Conffiles part shows there is no
> /etc/texmf/texmf.cnf and
> /etc/texmf/maketex.site
> as it was the case in former teTeX packages of the 0.4 release.
> I consider it to be in contrast with the usual way of Debian to store
> configuration files into /etc or subdirectories.
> The files now reside in
> /usr/lib/tetex/web2c/texmf.cnf and
> /usr/lib/tetex/web2c/mktex.cnf
> (use `kpsewhich texmf.cnf mktex.cnf` to verify this fact!)
> Actually when using `texconfig` these files were changed which
> is bad when mounted /usr readonly.
> In my opinion this should be changed before hamm goes to stable.
> (Sorry, I don't know if it is considered as bug. If so I should
> write an official bug-report, but may be the teTeX maintainer
> reads this thread.)
It would probably take some changes to the sources of texconfig to
enable you to use symlinks for texmf.cnf and mktex.cnf into an
etc/texmf directory. It takes some fiddling with the original sources
to make those symlinks unneccesary.
You might make texmf/web2c itself a symlink to /etc/texmf, but note
that this directory might contain largish files which IMHO are not
conffiles. The letter of the law might insist on those being moved to
a /var/texmf/web2c directory.
> 2) It's very strange that setting the seach variables in the way it worked
> under teTeX 0.4 won't work under 0.9.
> I set up in /usr/lib/texmf/web2c/texmf.cnf the following
> % The main tree, which must be mentioned in $TEXMF, below:
> TEXMFMAIN = /usr/lib/texmf
> % A place for local additions to a "standard" texmf tree. For example:
> TEXMFLOCAL = /usr/local/lib/texmf
> % Now, list all the texmf trees. If you have multiple trees,
> % use shell brace notation, like this:
> TEXMF = {!!$TEXMFLOCAL:!!$TEXMFMAIN}
> VARTEXFONTS = /var/spool/texmf
> TEXMFDBS = $TEXMFLOCAL:$TEXMFMAIN:$VARTEXFONTS
> SYSTEXMF = $TEXMFLOCAL:$TEXMFMAIN
> But files in /usr/local/lib/texmf were not found!!!
> `kpsewhich <any_file_from_/usr/local/lib/texmf/> fails!!
This should work, as I'm using something similar to this. Do you have
a concrete example at hand? Btw, you can use the -debug=-1 to get
(extensive) debugging info as where kpswhich is looking.
And please do note that the files in /usr/local/lib/texmf _must_ be
contained in a TDS-conforming structure. That is, metafont won't be
able to find
/usr/local/lib/texmf/mf/foo.mf
but would find e.g.,
/usr/local/lib/texmf/fonts/source/local/foo/foo.mf
You may have to run mktexlsr to get files to be found, though this
shouldn't be necessary as long as no ls-R file exist.
> That's boring and took me several hours editing the config file.
> Now I'm using the workaround:
> ln -s /usr/local/lib/texmf /usr/lib/texmf/local
> ln -s /usr/lib/texmf/local/tex /usr/lib/texmf/tex/local
> ...
> to get it work. But this is *not* the sense of the configuration
> file, thought.
> Despite the ugly not working configuration file the additional
> drawback of this workaround is that you can not say which tree
> is searched first. If there are two style files with the same
> name in /usr/lib/texmf/tex and /usr/local/lib/texmf/tex TeX uses
> *any* of them and not the one in $TEXMFLOCAL which should be used
> according to the config file.
I do not understand the workaround: it doesn't match the situation you
described above, with a /usr/local/lib/texmf tree. In any case, the
/usr/local/lib/texmf tree ought to look somewhat like this:
/usr/local/lib/texmf
/usr/local/lib/texmf/bibtex
/usr/local/lib/texmf/dvips
/usr/local/lib/texmf/fonts
/usr/local/lib/texmf/makeindex
/usr/local/lib/texmf/mft
/usr/local/lib/texmf/tex
/usr/local/lib/texmf/tex/latex
/usr/local/lib/texmf/tex/generic
For example, an additional latex style file _has_ to be in
/usr/local/lib/texmf/tex/latex
or a subdirectory if it is to be found.
> 3) When using the workaround under 2) make sure that you do
> ln -s /usr/lib/texmf/local/mf /usr/lib/texmf/fonts/source/local
> AND NOT
> ln -s /usr/lib/texmf/local/mf /usr/lib/texmf/metafont/local
> In the latter case, which I've done first, any local font (*.tfm,
> *pk) file will be stored in "." which is really boring!
The /usr/lib/texmf/metafont directory is, odd enough, not the place
where font sources should be stored. Those go to texmf/fonts/source.
> 4) The workaround does work only if you do `texhash` after linking
> the local tree into the appropriate directory. If I understood
> kpathseach right at first the TeX looks into the ls-R databases.
> If that fails TeX searches the filesystem "manually" in the
> appropriate directories. So the files in the local tree should
> be found whether texhash has rebuild the databases or not.
The workaround works because the files are found through the symlinks,
and through those links _only_, hence considered part of
/usr/lib/texmf. Thus the /usr/lib/texmf/ls-R file needs to contain
their names, if you forbid tex from searching the disk by using !!.
> This is importand for users which want to install private
> styles but hav't write permissions to the ls-R database.
Users who want to install private styles and don't have write
permissions for the ls-R file should not be writing in that system
tree at all.
> 5) Am I the first who has this trouble????
> This is a real question, because I wonder why I'm busy for hours
> making my teTeX working. This was the first time since years
> using several TeX distributions and I never expected such
> trouble with the very fine teTeX and the "ever-working" ;-)
> Debian system.
--
Olaf Weber
--
To UNSUBSCRIBE, email to debian-devel-request@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Reply to: