[NTG-context] linux installations

Taco Hoekwater taco at elvenkind.com
Tue Dec 13 11:55:35 CET 2005


Hi Thomas,

Thomas A. Schmitz wrote:
> Dear all (and especially the linux heads...),
> 
> I have been playing with my linux partition lately and looking at the  
> linux installation section in the wiki. I see there are two approaches:
> - take the minimal linux distribution that Hans prepares,
> - start from TexLive

Minor correction:
    - start from teTeX (not the same as texlive)

> I see why these approaches have their advantages. Nevertheless, I  would 
> want to add a further point: shouldn't we provide some hints  for those 
> who have a working TeX installation on linux and want to  keep it 
> because they are not (yet) exclusive ConTeXt users and want  to be able 
> to upgrade with their distribution's system?

I believe this is quite hard, because every distribution has a
slightly different teTeX setup. My view was: if you want an up-to-date
ConTeXt, start out fresh. Otherwise, you can save yourself an enormous
hassle by learning to live with an outdated system.

If you want to spend time on this, then kudos to you, but I have
given up on the distribution-supplied TeX's altogether.

> I have played around with several distros and think some general  points 
> could go into the wiki:
> 
> 1. look at texmf.cnf; find out where TEXMFLOCAL is on your system. In  
> most distros, the directory doesn't exist yet, create it.
>
> 2. In the definitions of texmf.cnf, make sure that TEXMFLOCAL comes  
> before the other TEXMF trees.
> 
> 3. unzip cont-tmf.zip into this directory, run mktexlsr or texhash

> 4. run texexec --make --al

Now you often still have a broken ConTeXt distribution, even if you
can get 4. to work, because you also need the latest latin-modern
font distribution.

And for that, you have to make another set of changes to texmf.cnf
because the older latin-moderns used different paths and filenames
for just about everything, and you have to make sure the new ones
are found. And don't forget that you probably have to fix updmap's
config file as well to make sure dvips remains working.

You'll also still have a rather outdated pdftex and metapost, but
I guess that is not really a big deal for most people.

> This last step gave and still gives me some headaches (my last  attempt 
> was with Opensuse 10.1 alpha 4), and that's where I ask for  some 
> elucidation: texexec does not rely on kpsewhich to locate the  directory 
> where it dumps the formats. So what I've seen happening is  that I have 
> brandnew formats in one place, yet texexec --version will  still display 
> the old versions (or say somehting like "cont-en.fmt  unknown"). I have 
> often just found out where kpsewhich searches for  the formats and then 
> replaced these old formats with symlinks to the  new ones, but I'm not 
> quite sure if this is a good approach. Does  anyone have more insights 

That solution is fine. Here's what happened. In the "really old" days,
formats ended with .fmt, like plain.fmt.

When etex and omega came around, they identified themselves by having
e.g. plain.efmt (note the extra "e"), so that they could coexist
happily.

However, this cluttered the build system quite a bit, so recently it
was decided to drop the extra characters. At that time, it was
understood that there would be an extra subdirectory below texmf/web2c
to differentiate between the different engines (at least, that is what
Hans and I gathered from the discussion). So you would have, e.g.
"web2c/pdfetex/cont-en.fmt"  as well as "web2c/omega/cont-en.fmt".

But it turned out that since LaTeX has separate names for the
different formats anyway (Lambda etc.), ConTeXt was the only client
of this new feature, and Thomas Esser decided that it was not worth
the effort to support these extra directories.

However, for ConText it  would be very, very unwieldy to have 
cont-pdfetex-en.fmt, cont-xetex-en.fmt, cont-aleph-en.fmt etc., each six
or seven times. And because context is always called through texexec,
the latest texexec's implement this engine subdirectory functionality
for you.

Finally, what goes wrong: unless you either delete the teTeX-supplied
context formats or change texmf.cnf, the old formats will be found first
by kpathsea.

> on this? What's with this proliferation of  TEXMF-trees in recent 
> versions of teTeX: which ones do we actually  need? Which ones can be 
> deleted safely?

The strangest ones are the ~/.texmf-var ones, where
fmtutil and updmap dump their stuff. They are documented in

   /usr/local/teTeX/share/texmf/web2c/texmf.cnf

if you use Thomas' distribution.

Cheers and good luck!

Taco


More information about the ntg-context mailing list