[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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: