Difference between revisions of "Debian installation"

From Wiki
Jump to navigation Jump to search
m ({{Installation navbox}})
(25 intermediate revisions by 8 users not shown)
Line 1: Line 1:
<font color="red"><b>Warning</b></font>: the repositories have been changed on January 17th. Please update <code>/etc/apt/sources.list</code> appropriately.
+
{{note|Releases of Debian (or any other distribution for that matter) usually contain way too old TeX distributions for ConTeXt MKIV (but should work fine for MKII). If you want to live on bleeding edge, consider using the packages from Debian/unstable, [[ConTeXt Standalone]], or at least install the latest version of [[TeX Live]] with [[TLContrib]] manually.}}
 
 
== 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 <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>:
 
 
 
<nowiki>
 
# for texlive
 
deb http://people.debian.org/~preining/TeX/ tl2007/
 
deb-src http://people.debian.org/~preining/TeX/ src/
 
 
# for lmodern
 
deb http://people.debian.org/~preining/TeX/ lmodern/
 
deb-src http://people.debian.org/~preining/TeX/ lmodern/
 
 
# for context
 
deb http://people.debian.org/~preining/TeX/ context/
 
deb-src http://people.debian.org/~preining/TeX/ context/
 
</nowiki>
 
 
 
It should work with ''etch'' as well (''etch'' is the current stable release, as of May 2007), both on intel and ppc platform. With either distribution, now install the packages:
 
 
 
  apt-get update
 
  apt-get install cm-super texlive-fonts-recommended context context-nonfree context-doc-nonfree
 
 
 
The texlive and lmodern packages will be installed automatically by the above line.
 
Check that you're now using the new version of ConTeXt:
 
 
 
  ctxtools --contextversion
 
 
 
Read on for more details of the installation, if you are curious.
 
 
 
<b>Warning</b>: The next update of these packages will probably ''not'' work with ''etch'' because ''etch'' has a too-old version of libpoppler-dev (0.4 instead of 0.5).
 
 
 
== Use TeXLive packages ==
 
 
 
The context packages depend on [http://www.tug.org/texlive TeXLive], so if you are using the Debian teTeX packages (e.g. see whether <tt>tetex-base</tt> is installed by doing <code>dpkg -l tetex-base</code>), 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 <b>purge</b>, not just remove the <tt>tetex-*</tt> packages before installing the TeXLive packages.  Otherwise the teTeX configuration files, including those in <tt>/etc/texmf/texmf.d/</tt> and <tt>/etc/texmf/fmt.d/</tt>, 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; or as root you may have done a system-wide install in, for example, <tt>/usr/local/share/texmf</tt> or other directory that shadows <tt>/usr/share/texmf</tt>.  In either case, the system-wide install from the packages won't be seen. 
 
 
 
If individual users prefer to shadow the system-wide install and to run their downloaded versions, that's fine.  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 <tt>~/.texmf-var/web2c/<i>engine</i></tt> where <i>engine</i> is typically <tt>pdfetex</tt>, then these will shadow the ones installed by the context package.  So the user should delete the ConTeXt-related ones, such as <tt>cont-*.fmt</tt>, <tt>mptopdf.fmt</tt>, and <tt>metafun.mem</tt>.
 
 
 
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. <tt>~</tt>), rather than from <tt>~/.texmf-var/web2c/pdfetex/</tt> (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 <tt>/usr/share/texmf</tt>,
 
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 ==
 
== 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 update, which is 2008.10.11, the latest package has the 2008.05.21 version of ConTeXt).  Here's how to use them. 
+
The status of ConTeXt in Debian/unstable is currently up to date with the soon to be released TeX Live 2011, and includes all the necessary bits and pieces, plus the modules shipped in TeX Live.
 
 
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>:
 
 
 
<nowiki>
 
# for texlive
 
deb http://people.debian.org/~preining/TeX/ tl2007/
 
deb-src http://people.debian.org/~preining/TeX/ tl2007/
 
 
# for lmodern
 
deb http://people.debian.org/~preining/TeX/ lmodern/
 
deb-src http://people.debian.org/~preining/TeX/ lmodern/
 
 
# for context
 
deb http://people.debian.org/~preining/TeX/ context/
 
deb-src http://people.debian.org/~preining/TeX/ context/</nowiki>
 
 
 
Either way, then do
 
 
 
  apt-get update
 
  apt-get install context context-nonfree context-doc-nonfree
 
 
 
and apt will download and install the latest ConTeXt packages.
 
 
 
Additionally, in particular if you intend on using mkiv (luatex) you may want to install the tex-gyre package (not yet in unstable as the license situation is unclear). Add these lines to your <tt>/etc/apt/sources.list</tt>:
 
 
 
<nowiki>
 
# for tex-gyre
 
deb http://people.debian.org/~preining/TeX/ tex-gyre/
 
deb-src http://people.debian.org/~preining/TeX/ tex-gyre/
 
</nowiki>
 
  
and install:
+
If you are running Debian sid or later, then the <code>context</code> and <code>context-modules</code> packages should already be visible (and the <code>context-nonfree</code> and <code>context-doc-nonfree</code> packages are in the nonfree repository).
 +
Then do
  
  apt-get update
+
aptitude update
  apt-get install tex-gyre
+
aptitude install context context-modules
 +
# optional
 +
aptitude install [http://packages.debian.org/experimental/all/context/download context-nonfree] [http://packages.debian.org/sid/context-doc-nonfree context-doc-nonfree]
  
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):
+
* The final version in debian squeeze (aka debian stable 6.0) is 2009.11.26-2
 +
* In ''unstable'' is a the version that will be in TeX Live 2011
  
  gpg --keyserver subkeys.pgp.net --recv-keys 0x09C5B094
+
=== Install latest unstable context .deb package ===
  gpg --export --armor 0x09C5B094 | sudo apt-key add -
 
  
[<tt>0x09C5B094</tt> was the key listed in one of Norbert Preining mail signatures. The <code>sudo</code> adds the key to apt's key list.]
+
<tt>unstable</tt> means ''(mature) development'', the version number may changes. The software is ''stable''
  
== Finished! ==
+
1. Download the two .deb-s
 +
http://packages.debian.org/unstable/all/context/download
 +
http://packages.debian.org/unstable/all/context-modules/download
  
That should do it! The output of <code>ctxtools --contextversion</code> is hopefully like this:
+
2. run as root (the version number might have increased a bit)
 +
dpkg --install context_2011.05.18.20110627-1_all.deb
 +
mtxrun --generate
  
<code>
+
3. run as user
CtxTools | context version: 2008.05.21 15:21 (/usr/share/texmf/tex/context/base/context.tex)
+
  mtxrun --generate
  CtxTools | context version: 2008.05.21 15:21 (/usr/share/texmf/tex/context/base/cont-new.tex)
 
</code>
 
  
The long path to <tt>context.tex</tt> and <tt>cont-new.tex</tt> show where the system thinks the context macros are installed. Make sure your installation is finding those versions!
+
Step 2. is currently still necessary, but soon an update of tex-common will  run mtxrun --generate automatically when packages have changed (like mktexlsr), and there will be no need to run this anymore.
  
== Postscript: Mark IV ==
+
Step 3. needs to be done only when you have files in TEXMFHOME or you change things there.
(README.MarkIV)
 
  
Mark IV is the name of the LuaTeX-aware part of ConTeXt; that is, when you use ConTeXt over the LuaTeX engine instead of PDFTeX or XeTeX. You run it with <code>texexec --lua</code>.                                                     
+
You have now a system wide context-installation!
 
 
Currently the integration of Mark IV into Debian is not completely done, especially because the details are currently worked out (see the dev-context mailing list).                                                             
 
 
 
If you want to start using Mark IV the following the following few points should get you started:                                                 
 
 
 
1) Right versions:
 
    luatex >= 0.20.2
 
    context >= 2007.12.20
 
 
 
2) environment variables and luatex-cache. Mark IV ships its own implementation of file searching and doesn't use the ls-R databases, but luatex-cache. You have to tell luatools where to find texmf.cnf, and then generate the cache:
 
<code>             
 
        export TEXMFCNF=/usr/share/texmf/web2c                       
 
        luatools --generate --verbose                               
 
</code>
 
This will generate the luatex-cache in $HOME. If you want to put it somewhere else set (and export) the TEXMFCACHE variable:     
 
<code>
 
  export TEXMFCACHE=/tmp
 
</code>
 
 
 
3) Generate a Mark IV format. This is not integrated into the usual format building process, and probably will need some time to be worked out completely as the current fmtutil cannot cope with Mark IV formats. Call
 
<code>
 
        luatools --ini --compile cont-en
 
</code>
 
 
 
4) Now you can try some simple document like (thanks to Arthur Reutenauer)
 
<code>
 
[[Category:Installation]]
 
See also the [[Debian TeXlive install]] page.
 
        \starttext
 
        \ctxlua{a = 1.5 ; b = 1.8 ; c = a*b ; tex.print(c) ;}
 
        % or the equivalent:
 
        \startlua
 
        a = 1.5
 
        b = 1.8
 
        c = a*b
 
        tex.print(c)
 
        \stoplua
 
        % You can also do more elaborate calculations with the lua math library:
 
        \ctxlua{tex.print("$\string\\sqrt{2} = " .. math.sqrt(2) .. "$")}
 
        \stoptext
 
</code>
 
  
and run it with
+
== See also ==
<code>
 
        texexec --lua filename.tex
 
</code>
 
  
== ==
+
{{Installation navbox}}
  
 
[[Category:Installation]]
 
[[Category:Installation]]
See also the [[Debian TeXlive install]] page.
 

Revision as of 16:00, 20 November 2012


NOTE: Releases of Debian (or any other distribution for that matter) usually contain way too old TeX distributions for ConTeXt MKIV (but should work fine for MKII). If you want to live on bleeding edge, consider using the packages from Debian/unstable, ConTeXt Standalone, or at least install the latest version of TeX Live with TLContrib manually.

Install the ConTeXt packages

The status of ConTeXt in Debian/unstable is currently up to date with the soon to be released TeX Live 2011, and includes all the necessary bits and pieces, plus the modules shipped in TeX Live.

If you are running Debian sid or later, then the context and context-modules packages should already be visible (and the context-nonfree and context-doc-nonfree packages are in the nonfree repository). Then do

aptitude update
aptitude install context context-modules
# optional
aptitude install context-nonfree context-doc-nonfree
  • The final version in debian squeeze (aka debian stable 6.0) is 2009.11.26-2
  • In unstable is a the version that will be in TeX Live 2011

Install latest unstable context .deb package

unstable means (mature) development, the version number may changes. The software is stable

1. Download the two .deb-s http://packages.debian.org/unstable/all/context/download http://packages.debian.org/unstable/all/context-modules/download

2. run as root (the version number might have increased a bit)

dpkg --install context_2011.05.18.20110627-1_all.deb
mtxrun --generate

3. run as user

mtxrun --generate

Step 2. is currently still necessary, but soon an update of tex-common will run mtxrun --generate automatically when packages have changed (like mktexlsr), and there will be no need to run this anymore.

Step 3. needs to be done only when you have files in TEXMFHOME or you change things there.

You have now a system wide context-installation!

See also