Difference between revisions of "Debian installation"

From ConTeXt wiki
m (simplify alternatives for sources.list)
m (simplify alternatives for sources.list)
Line 67: Line 67:
 
Norbert Preining has produced reliable, complete ConTeXt packages for Debian, and they use very recent versions of ConTeXt (as of this writing, which is 2007.01.05, the latest package has the 2007.01.02 version of ConTeXt).  Here's how to use them.   
 
Norbert Preining has produced reliable, complete ConTeXt packages for Debian, and they use very recent versions of ConTeXt (as of this writing, which is 2007.01.05, the latest package has the 2007.01.02 version of ConTeXt).  Here's how to use them.   
  
If you are running Debian unstable (a.k.a. sid), then the <code>context</code> package should already be visible (and the <code>context-nonfree</code> and <code>context-doc-nonfree</code> packages are in the nonfree repository).  If you are not running unstable, or want the very, very latest packages, simply add these lines to your <tt>/etc/apt/sources.list</tt>:
+
If you are running Debian unstable (a.k.a. sid), then the <code>context</code> package should already be visible (and the <code>context-nonfree</code> and <code>context-doc-nonfree</code> packages are in the nonfree repository).  If you are not running unstable, simply add these lines to your <tt>/etc/apt/sources.list</tt>:
  
 
   deb <nowiki>http://www.tug.org/texlive/Debian/</nowiki> context/
 
   deb <nowiki>http://www.tug.org/texlive/Debian/</nowiki> context/

Revision as of 20:51, 8 January 2007

Quickstart for the impatient

(all done as root) If you have the tetex packages, get rid of them:

 apt-get --purge remove tetex-{extra,doc,bin,base}

If you are running Debian unstable (a.k.a. sid), then the context package should already be visible (and the context-nonfree and context-doc-nonfree packages are in the nonfree repository). If you are not running unstable, simply add these lines to your /etc/apt/sources.list:

 deb http://www.tug.org/texlive/Debian/ context/
 deb-src http://www.tug.org/texlive/Debian/ context/

With either choice, now install the packages:

 apt-get update
 apt-get install texlive lmodern cm-super texlive-fonts-recommended \
 context context-nonfree context-doc-nonfree

Check that you're now using the new version:

 ctxtools --contextversion

Read on for the details.

Use TeXLive packages

The context packages depend on TeXLive, so if you are using the Debian teTeX packages (e.g. see whether tetex-base is installed by doing dpkg -l tetex-base), it's time to change to TeXLive. You'll have to do so eventually since teTeX 3.0 will be the last upstream release of teTeX. If not now, when?

If you are switching from teTeX, it's important to purge, not just remove the tetex-* packages before installing the TeXLive packages. Otherwise the teTeX configuration files, including those in /etc/texmf/texmf.d/ and /etc/texmf/fmt.d/, will haunt the system like a ghost. To purge:

 apt-get --purge remove tetex-{extra,doc,bin,base}

The full directions for using TeXLive are at http://www.tug.org/texlive/debian.html or Debian TeXlive install, though if you are brave you can just try:

 apt-get update && apt-get install texlive

Once you've installed the basic packages, you'll need a few extras:

 apt-get install lmodern cm-super texlive-fonts-recommended

Check for shadowing formats and macros

These installation instructions describe a system-wide install. But individual users may have followed the old directions on this page and (sorry!) made a per-user ConTeXt installation. Those will shadow the system-wide install. If that's what they want to do, no problem.

But if they want to use the system-wide install (recommended except for those who are testing Hans's latest versions...), then there are two issues.

The first issue is old format files. If a user has format files in ~/.texmf-var/web2c/engine where engine is typically pdfetex, then these will shadow the ones installed by the context package. So the user should delete the ConTeXt-related ones, such as cont-*.fmt, mptopdf.fmt, and metafun.mem.

To find them, the user can do:

 kpsewhich cont-en.fmt

or

 kpsewhich -engine pdfetex cont-en.fmt

(and similarly for the other formats). Run it from a 'typical' directory (e.g. ~), rather than from ~/.texmf-var/web2c/pdfetex/ (adjust for your engine), otherwise it will find the newly created formats before any others even if they are not shadowing anything else.

The second issue is the ConTeXt macros. If a user has installed them a directory that shadows /usr/share/texmf, then they will be found rather than the system-wide ones. So move the shadowing context installations out of the way. The user can check with

 kpsewhich cont-new.tex

and make sure that it's not finding any (until you do the system-wide install, of course).

Install the ConTeXt packages

Norbert Preining has produced reliable, complete ConTeXt packages for Debian, and they use very recent versions of ConTeXt (as of this writing, which is 2007.01.05, the latest package has the 2007.01.02 version of ConTeXt). Here's how to use them.

If you are running Debian unstable (a.k.a. sid), then the context package should already be visible (and the context-nonfree and context-doc-nonfree packages are in the nonfree repository). If you are not running unstable, simply add these lines to your /etc/apt/sources.list:

 deb http://www.tug.org/texlive/Debian/ context/
 deb-src http://www.tug.org/texlive/Debian/ context/

Then do

 apt-get update
 apt-get install context context-nonfree context-doc-nonfree

and apt will download and install the latest ConTeXt packages.

If you don't like the warnings about the GPG key, do this as yourself (if you are happy to trust the chain of trust; insert usual signing-key disclaimers here):

  gpg --keyserver subkeys.pgp.net --recv-keys 0x09C5B094
  gpg --export --armor 0x09C5B094 | sudo apt-key add -

[0x09C5B094 was the key listed in one of Norbert Preining mail signatures. The sudo adds the key to apt's key list.]

Finished!

That should do it! The output of ctxtools --contextversion is hopefully like this:

CtxTools | context version: 2007.01.02 13:44 (/usr/share/texmf/tex/context/base/context.tex)
CtxTools | context version: 2007.01.02 13:44 (/usr/share/texmf/tex/context/base/cont-new.tex)

The long path to context.tex and cont-new.tex show where the system thinks the context macros are installed. Make sure your installation is finding those versions! See also the Debian TeXlive install page.