ConTeXt Standalone

From Wiki
Revision as of 14:54, 28 November 2008 by Mojca Miklavec (talk | contribs) (→‎Prerequisites: around 200 MB disk space (rough estimation that might change with time))
Jump to navigation Jump to search

< Installation | ConTeXt Minimals/Structure | ConTeXt Minimals/Implementation >

The Minimals are an attempt to provide a ConTeXt distribution that:

  • includes the latest & greatest binaries
  • includes the latest stable & beta version of ConTeX (one can choose which one to install)
  • takes minimal amount of time & bandwidth to upgrade
  • does not interfere with existing TeX installations (MikTeX, TeX Live, ... one can have both installed)
  • does not need root privileges to be installed
  • takes reasonable amount of space
    • does not include any LaTeX packages & binaries
    • faster
    • not such a problem to have multiple versions installed (they do not interfere)
    • possible to make it even smaller by installing only luatex for example

They are hosted on http://minimals.contextgarden.net (equivalent to rsync://contextgarden.net/minimals/).

Everyone is invited to test this distribution, but is kindly asked for patience and understanding until we tidy up the details. You need to have rsync installed, for windows it's shipped together with the minimals.

Quick Start

Linux/Mac/FreeBSD/Solaris

Prerequisites

You need rsync, ruby, around 200 MB free disk space (might change with time) and one of supported platforms (see below).

Installation

Go to a folder where you want to put ConTeXt. We'll assume installation into ~/context, but you can install it anywhere where you have writing permissions. You can install several copies to several places without interference. (Mac users can also take a look at ConTeXt Minimals/Mac Installation.)

mkdir context && cd context
rsync -ptv rsync://contextgarden.net/minimals/setup/first-setup.sh .
./first-setup.sh

... go and have a coffee ...

Usage: permanent

(For those who mostly use ConTeXt and [almost] never LaTeX.)

Put the following line to ~/.bash_profile or ~/.bashrc:

source ~/context/tex/setuptex ~/context/tex

(t)csh users can use the variant:

source ~/context/tex/setuptex.csh

In theory it should already suffice to add export PATH=~/context/tex/texmf-<platform>/bin:$PATH.

Usage: temporary

(For those who often use LaTeX, but need the latest ConTeXt every now and then.)

Just type

. ~/context/tex/setuptex ~/context/tex

to switch from system-wide TeX distribution to the minimals inside current shell.

Updating

For now just run ./first-setup.sh again. This will change - the name is not most self-explanatory at the moment. In theory

mtxrun --script update

should work, but it has not been tested yet.

Uninstalling

Just remove the folder (distribution did not touch anything else):

rm -rf ~/context

Windows

Installation: global & GUI

(For those who don't need MikTeX/TeX Live and prefer Graphical user interface.)

Download and run the GUI installer (made by Vyatcheslav Yatskovsky).

Slides from author's presentation can be downloaded here.

Use standard windows tool for uninstalling the application.

Installation: local & command-line

(For those who need MikTeX/TeX Live and are comfortable with command-line.)

Download and unzip context-setup-mswin.zip

Run first-setup.bat, go for a coffee.

Before being able to use ConTeXt you need to run setuptex.bat to initialize the environment. A simple way to do it is to create a file startcontext.bat (use any name) somewhere in PATH and put this line into it

C:\Programs\context\tex\setuptex.bat C:\Programs\context\tex

Then, you can type startcontext into CMD whenever you want to use ConTeXt Minimals instead of MikTeX.

For uninstalling just delete the folder with minimals.

Troubleshooting

  • rsync sometimes has problems with paths with uppercase letters (like c:\Temp or c:\Documents and Settings). Installing into all-lowercase paths without spaces sometimes helps.
  • If you're behind firewall and rsync times out you need to open port 873 for outgoing TCP connections.

Testing

\starttext
Hello World!
\stoptext

Now, you should be able to run

context hello.tex

or

texexec hello.tex

context uses LuaTeX by default.

Goals

We wanted to provide:

  • an easy to (no-need-to-)install ConTeXt distribution
  • a fast and convenient way to update ConTeXt and binaries to the latest version (no need to fetch 100 MB when only minimal modifications have been made in the distribution)
  • a reference ConTeXt distribution
  • an easy way to revert to an older ConTeXt (in case the latest one is broken)

We do not plan to provide:

  • LaTeX packages (perhaps the really-basic-latex as an add-on package, but only if someone else has time to investigate what is needed)
  • extensive support for whatever binaries or packages which are otherwise standard in TeX distributions: use TeX Live or MikTeX for that purpose

The minimals contain:

  • ConTeXt
  • Fonts: most important TeX-aware ones
  • pdfTeX, XeTeX, LuaTeX and Metapost (latest version, if possible)
  • formats (need to be generated by user) for
    • ConTeXt, mptopdf and plain TeX for pdfTeX/XeTeX/LuaTeX
    • metafun and plain for Metapost
  • it would be nice to have tex4ht as a package if someone can figure out what is needed to make it work

Supported platforms

Windows mswin Akira Kakuto (W32TeX)
Linux linux contextgarden.net compiled with glibc 2.3.6
Linux, 64-bit linux-64 Peter Münster we consider renaming it to linux-amd64
Mac OS X, Intel osx-intel Mojca Miklavec
Mac OS X, PowerPC osx-ppc Mojca Miklavec
Mac OS X, Universal Binaries osx-universal Mojca Miklavec
FreeBSD freebsd Yue Wang, Diego Depaoli we consider renaming it to freebsd-intel
Solaris, Intel solaris-intel Michael Krauß
Solaris, Sparc solaris-sparc Arthur Reutenauer outdated

Other platforms can be added on request provided that you are willing to keep sending us updates with recent versions of binaries. Please write to the ntg-context mailing list.


Binaries

Binaries are mostly taken from TeX Live 2007, but new ones are used whenever available.

Origin of the binaries

  • TeX Live 2007 for most binaries and most platforms
  • Akira's W32TeX for windows binaries (including metapost, LuaTeX, pdfTeX and XeTeX) - automatic
  • for pdfTeX, XeTeX, LuaTeX and metapost for other platforms added manually whenever possible (nice if it could be automated, but no idea how)
  • texmf/scripts/context/stubs from ConTeXt

List of included binaries

Core binaries

We will do our best to keep them as up to date as possible. If they're still not up to date for your platform and you know where to find them, please notify us, we will fix that. We might provide XeTeX and LuaTeX in separate packages (on TODO list).

  • pdftex
  • luatex
  • texlua, texluac (only symlinks on "unix" platforms, in Akira's distribution luatex.dll is used + 3 small executables)
  • xetex, xdvipdfmx
  • metapost
    • dvitomp
    • makempx
    • mpost
    • mpto (can this be replaced by ConTeXt's variant in future?)

Other binaries

  • kpathsea
    • kpseaccess
    • kpsestat
    • kpsewhich
  • different tools
    • bibtex
    • dvipos
    • mktexlsr
    • pdftosrc

Stubs & other ConTeXt-related

  • everything from texmf/scripts/context/stubs
  • luatools, mtxrun
  • texmfstart (take the latest version by Hans automatically: doesn't happen yet)

Font-related

Might be removed or moved to a special category of "font-related binaries", and only available as an additional package.

  • only left for testing
    • afm2pl
    • afm2tfm
    • ttf2afm
  • Knuth's
    • pltotf
    • tftopl
    • vftovp
    • vptovf

Might-be-removed-soon

  • dvipdfmx
  • dvips

ConTeXt

The Minimals provide several versions of ConTeXt:

  • stable
  • beta (suggested for living-on-the-edge ones; will default to stable if not available)
  • alpha (rarely used; will use beta if not available)
  • experimental (only for testing - not meant for general use)
  • date-based ones (currenty only a few versions available - planning to improve)

You can use

   --context=XXX

to get the desired version.

Fonts

Fonts are split in three packages:

  • used in both pdfTeX and XeTeX/LuaTeX: mostly math (pfb, map, enc, tfm)
  • used in pdfTeX only: pfb, map, enc, tfm (those that are not present in "common")
  • used in XeTeX/LuaTeX only: otf

Currently we have (the latest version, in sync with CTAN):

  • Latin Modern
  • Antykwa Torunska
  • Iwona & Kurier
  • TeX Gyre
  • ams

Other fonts to be added:

  • TODO

It is possible that we'll provide a really minimal package with LM only, and additional three packages (common, for new TeX, for old TeX) with all the other fonts.

  • fonts/data/<foundry>/<family|distro>/*
  • lm : always
  • gyre : all of them in one set, optional
  • rest : optional

Third-party modules & Other

  • TODO
  • also cont-* from Hans's page

Documentation

TODO

Implementation

See the implementation page.

Hans's requests

  • reorganize fonts into fonts/data/e-foundry/texgyre/<everything>
  • list directory contents
  • list of files to fetch an old ConTeXt version

Who are “we”?

Ein Teil von jener Kraft, / Die stets das Böse will, und stets das Gute schafft. :-)