Changes

Jump to navigation Jump to search
If you have already followed the following steps (because you've already upgraded your context installation relative to the default tetex-provided context), then you're done. Otherwise, read on for the fiddly bits that need fixing.
=== Steps to finish a first context upgrade ===
The Debian tetex-3.0 package (and probably the vanilla tetex-3.0) in combination with <tt>texexec</tt> puts user-generated format files in <tt>~/.texmf-var/web2c/<i>engine</i></tt> where <i>engine</i> is typically <tt>pdfetex</tt>. (If you don't have such a directory, and you are using the default tetex configuration, tell the mailing list so that this installation information can be corrected!)
The default <tt>tetex</tt> setup doesn't know about such locations (it doesn't know what it should), and it instead knows about other locations (it knows what it shouldn't). Here is how to fix both problems.
==== Older context formats ====
There may be older context formats lying around, and the path searching code may find these older ones instead of the new ones lovingy made by <tt>texexec</tt>.
===== Deleting the older context formats ====
So you need delete the older ones. But where are they?
If you cannot find them, use <tt>kpsewhich cont-en.fmt</tt> (and similarly for the other formats). Run the <tt>kpsewhich</tt> from a 'typical' directory (e.g. your home directory), rather than from <tt>~/.texmf-var/web2c/pdfetex/</tt> (adjust for your engine), otherwise it will find the newly created formats before any others.
===== Stopping fmtutil from making context-related formats =====
But how did the older ones get there? <tt>fmtutil</tt>
update-fmtutil
==== Finding the new formats ===
The path searching code will not find the newer formats because the code doesn't search subdirectories of <tt>web2c/</tt>. The simple fix, telling it to search all subdirectories, does not work: Context may use several different engines, e.g. <tt>pdfetex</tt> or <tt>xetex</tt>, each with a set of formats, and you want <tt>texexec</tt> to find the correct set. If it searches all subdirectories, it will use the first set that it happens to run across, which may not match the engine that you use. Instead the searches should look in the subdirectory chosen according to the <i>engine</i>.
To specify this kind of search, you'd normally edit <tt>texmf.cnf</tt> directly, but Debian uses configlets for it. So edit (still as root) the <tt>TEXFORMATS</tt> line in <tt>/etc/texmf/texmf.d/45TeXinputs.cnf</tt> to include this magic:
TEXFORMATS = .;$TEXMF/web2c/{$engine,}
It says to look first in the <i>engine</i> subdirectory, then in the <tt>web2c</tt> directory itself. Now generate a new <tt>texmf.cnf</tt> configuration file with (still as root):
update-texmf
That step generates a new <tt>/etc/texmf/texmf.cnf</tt>, which Debian symlinks from its standard tetex location <tt>/usr/share/texmf/web2c/texmf.cnf</tt>. With luck, you are done. In the next section you will check whether everything is working by running <tt>texexec --version</tt>(as yourself, not as root!).
== Finished! ==
127

edits

Navigation menu