teTeXA new splitting scheme for the teTeX packages



Table of Contents

Guidelines

  1. Etch will (if nothing very surprising happens) come with two alternative TeX systems: teTeX and TeX-Live. TeX-Live is not only much bigger and more comprehensive, it is also much more fine-grained. This will allow users to install only the specific subset they need. Therefore we can refer people concerned with download size or disk space to using TeX-live and simply not care about this problem
  2. We expect that teTeX will continue to be the standard package for creating documentation when building a Debian package, and I think that we should try to develop our splitting schemes mainly along the needs of Build-Depending packages End users will probably just install everything, or switch to tex-live.
  3. We plan to create a tetex-base package that is smaller than before, but sufficient as a build-dependency (without tetex-extra) in more cases than before.
  4. The main reason why the new tetex-base package can be smaller is that we provide only a restricted set of fonts. This will allow the production of PostScript and PDF files written in english, and with some tweaks (or the additional lmodern package) in other european languages. Documentation in other scripts will need tetex-extra and/or other packages.
  5. A currently unresolved question is whether we see tetex-base and tetex-bin-core only as a build-dependency, or also as the standard package for people that use LaTeX (but not ConTeXt, Omega, etc.) for their daily work.

Proposed splitting schemes

tetex-bin

Scheme 1: tetex-bin-core, tetex-bin-x11, tetex-bin-extra

In this scheme, there would be a dummy package tetex-bin that would depend on all of them and make a smooth upgrade possible. The three packages would contain:
tetex-bin-core
This package would contain tex, pdfetex, mf-nowin and dvips and all helper programs needed to produce PDF and PostScript files from simple input.
tetex-bin-x11
This package would contain the binaries that are linked against xlibs (xdvi and mfw) and the scripts that depend on perl-tk or otherwise on a graphical screen (texdoctk, texfind, texshow, ...?).
tetex-bin-extra
This package would contain all the rest, like Omega-related things, ConTeXt etc.
This is a list of executables for the packages: >
tetex-bin-core tetex-bin-x11 tetex-bin-extra
/usr/bin/mktexpk
/usr/bin/mktexmf
/usr/bin/mktextfm
/usr/bin/mktexlsr
/usr/bin/kpsewhich
/usr/bin/kpsestat
/usr/bin/kpseaccess
/usr/bin/kpsereadlink
/usr/bin/pdfetex
/usr/bin/tex
/usr/bin/mf-nowin
/usr/bin/newer
/usr/bin/bibtex
/usr/bin/afm2tfm
/usr/bin/dvips
/usr/bin/makeindex
/usr/bin/mkindex
/usr/bin/mag
/usr/bin/fmtutil
/usr/bin/kpsetool
/usr/bin/kpsewhere
/usr/bin/pslatex
/usr/bin/texconfig (?)
/usr/bin/texconfig-dialog (?)
/usr/bin/texdoc
/usr/bin/updmap
/usr/bin/ps4pdf
/usr/bin/fmtutil-sys
/usr/bin/texconfig-sys
/usr/bin/updmap-sys
/usr/bin/a2ping
/usr/bin/e2pall
/usr/bin/epstopdf
/usr/bin/tetex-xwarn
/usr/bin/mf
/usr/bin/odvips
/usr/bin/kpsepath
/usr/bin/kpsexpand
/usr/bin/texhash
/usr/bin/texfont
/usr/bin/thumbpdf
/usr/bin/pdfcrop
/usr/bin/mktexfmt
/usr/bin/oxdvi
/usr/bin/latex
/usr/bin/pdflatex
/usr/bin/etex
/usr/bin/pdftex
/usr/bin/pktogf
/usr/bin/gftopk
/usr/bin/gsftopk
/usr/bin/ps2pk
/usr/bin/xdvi
/usr/bin/xdvizilla
/usr/bin/mfw
/usr/bin/xdvi.real
/usr/bin/texfind
/usr/bin/texshow
/usr/bin/omega
/usr/bin/otp2ocp
/usr/bin/outocp
/usr/bin/mkocp
/usr/bin/mkofm
/usr/bin/omfonts
/usr/bin/aleph
/usr/bin/pdfxtex
/usr/bin/mpost
/usr/bin/dmp
/usr/bin/mpto
/usr/bin/makempx
/usr/bin/ctangle
/usr/bin/ctie
/usr/bin/cweave
/usr/bin/dvicopy
/usr/bin/dvitomp
/usr/bin/dvitype
/usr/bin/gftodvi
/usr/bin/gftype
/usr/bin/mft
/usr/bin/odvicopy
/usr/bin/odvitype
/usr/bin/otangle
/usr/bin/patgen
/usr/bin/pktype
/usr/bin/pltotf
/usr/bin/pooltype
/usr/bin/tangle
/usr/bin/tftopl
/usr/bin/tie
/usr/bin/ttf2afm
/usr/bin/vftovp
/usr/bin/vptovf
/usr/bin/weave
/usr/bin/dvilj
/usr/bin/dvilj2p
/usr/bin/dvilj4
/usr/bin/dvilj4l
/usr/bin/dvihp
/usr/bin/dvipdfm
/usr/bin/ebb
/usr/bin/dvipdft
/usr/bin/pfb2pfa
/usr/bin/pk2bm
/usr/bin/allcm
/usr/bin/allneeded
/usr/bin/dvi2fax
/usr/bin/dvired
/usr/bin/fontinst
/usr/bin/ps2frag
/usr/bin/rubibtex
/usr/bin/rumakeindex
/usr/bin/texexec
/usr/bin/texlinks
/usr/bin/dvilj6
/usr/bin/mptopdf
/usr/bin/allec
/usr/bin/fdf2tan
/usr/bin/fdf2tex
/usr/bin/makempy
/usr/bin/texutil
/usr/bin/uniqleaf
/usr/bin/ofm2opl
/usr/bin/amstex
/usr/bin/lambda
/usr/bin/lamed
/usr/bin/opl2ofm
/usr/bin/ovf2ovp
/usr/bin/ovp2ovf

Questions

  1. Should MetaPost be part of -core?

tetex-base

Scheme 2: tetex-base with TeX and LaTeX, tetex-extra with the rest

tetex-base would contain all input files required to run TeX and LaTeX, and most of the LaTeX-add-on packages in tex/latex/ (see below). This includes the PSNFSS system and Type1 fonts, the CM and EC fonts in Metafont format and, as far as available in teTeX, in Type1 format. It does in principle not include other fonts, but exceptions may be made (see below).

Details for the tex/latex directory

In order to minimize the size of tetex-base, Ralf has suggested to check whether any of the large subdirectories in tex/latex can be excluded, because they are rarely used to build documentation. This is a list of subdirectories and their sizes in KBytes: >
custom-bib508
koma-script484
minitoc452
memoir300
jurabib300
ntgclass296
revtex4212
seminar184
On the other hand, this would mean that tetex-base would really only be useful as a build-dependency. On the other hand, tetex-base with the complete LaTeX directory, excluding font support for tetex-extra fonts, could be the standard installation for most people that use LaTeX for their daily work. Furthermore, all files in tex/latex that are needed to use fonts that are not included will be moved to tetex-extra.

Questions


Last update: July 26, 2005.