[NTG-context] ConTeXt on Debian: The wiki entry

Taco Hoekwater taco at elvenkind.com
Tue Oct 24 09:22:52 CEST 2006

Frank Küster wrote:
> Can you point me to the place where it is documented which calls are
> needed to be called

I was going to say: on the wiki, but that clearly wouldn't work
this time.

To actually update ConTeXt, assuming you already have a relatively
modern context installed, you say
   # ctxtools --update

and that fetches the zip file(s) from the pragma site (or a mirror),
unpacks them, and updates the various perl and ruby scripts that come
with ConTeXt.

You have to be root for this when you want to update the global install,
otherwise you have a few extra caveats, see below.

After a succesful update, you have to run
  # texexec --make --all [--xetex | --aleph | --pdftex] <formats>

Where <formats> are the desired formats to run. The accepted list
at the moment is: the eight ConTeXt formats, in both long
("cont-en" etc.) and  short from ("en","nl","de","it","fr","cz",
"ro","uk"), and "mptopdf", and the metapost mems "mpost" and "metafun".

This works fine if you are root, and had a previous context update
done already. If you have not already and/or are not root, then you
have two big problems:

* TEXFORMATS as shipped with teTeX/TL is uncomplete: there is that
   missing format-specific subdirectory. If you are not root, then
   you have to create a local texmf.cnf to overrule the default
   texmf.cnf. I have:

   TEXFORMATS    = .;$TEXMF/web2c/{$engine,}

   because context's texexec pushes the $engine setting to the
   environment, this works fine (Originally this was supposed to
   be handled by kpathsea, but like I said, that never got off
   the ground)

   If you don't make this change, you cannot use texexec for the
   format regeneration, at all. (Formats created by texexec will
   never be used because the fmtutil-generated old one is always
   discovered first).

   Not using texexec is not a big deal in itself, as long as you
   restrict yourself to using pdfetex and know how to edit the
   fmtutil config file, I guess. That's why you sometimes see that
   approach promoted on the wiki.

* TEXFONTMAPS is also wrong: it makes pdftex (and dvipdfmx as well,
   I guess) find the mapfiles for dvips before their own mapfiles
   (those are shipped with ConTeXt).

   I have:

   TEXFONTMAPS.dvipdfm  = .;$TEXMF/fonts/map/{dvipdfm,dvips,}//
   TEXFONTMAPS.dvipdfmx = .;$TEXMF/fonts/map/{dvipdfm,dvips,}//
   TEXFONTMAPS.pdftex   = .;$TEXMF/fonts/map/{pdftex,dvips,}//
   TEXFONTMAPS.pdfetex  = .;$TEXMF/fonts/map/{pdftex,dvips,}//
   TEXFONTMAPS.xetex    = .;$TEXMF/fonts/map/{xetex,pdftex,dvips,}//
   TEXFONTMAPS.dvips    = .;$TEXMF/fonts/map/{dvips,pdftex,}//
   TEXFONTMAPS          =.;$TEXMF/fonts/map/{$progname,pdftex,dvips,}//;\

   this works fine (but it is perhaps a bit too verbose).

* Lastly, ctxtools --update does a kpsewhich on context.tex to find
   where to install the updated files. That only works if  you have
   write permission for that directory (i.e. you are root),  or if you
   have done a private install already.

I think that is all, but I may have missed something, so if you read
this message and know a thing or two about updating, please double
check my text. Thanks in advance.


More information about the ntg-context mailing list