Bug#304294: teTeX 3.0 (experimental) - installation of additional fonts not working
tags 304294 + experimental
Tobias Hilbricht <email@example.com> wrote:
> Trying to install additional fonts into the tetex-system according to the
> manual given in /usr/share/doc/tetex-bin/README.Debian.gz does not work
> because the map files are not distributed properly:
You're right, the instructions there are not up-to-date. With tetex 3,
you have to use updmap-sys for system-wide configuration, instead of
updmap. Otherwise, resulting files go to $HOME/.texmf-var, as you could
see, which is a bit silly in the case of root. I would suggest the
following text for section 3.3 (from tetex-bin 3.0-3):
3.3 Font installation
If you wish to install a font package in a system-wide manner, please
follow the instructions in this section. If you are preparing a Debian
package containing fonts, you should refer to the Debian teTeX policy
In the following paragraphs, $TEXMFLOCAL stands for
"/usr/local/share/texmf". This is where most files should be installed
during system-wide installations that are not done by Debian packages.
Generally, you should first have a look at the installation instructions
that come with the font package, in case there is something specific to
that package with respect to installation. Usually, files have to be put
in specific subdirectories below $TEXMFLOCAL. For instance, AFM files
should be stored into:
where <supplier> identifies the supplier of the fonts (for instance,
"adobe", "urw" or "public") and <typeface> refers to the name of the
font family (e.g., "marvosym" or "lm"). If in doubt, you should have a
look at the system tree managed by Debian packages, /usr/share/texmf; it
follows the same layout, called the TeX Directory Structure, and
In order for the various TeX-related programs to be able to use a font,
you need to somehow register its map files (simply copying the files to
$TEXMFLOCAL is not enough). You can do this with the following steps,
performed as root, where "foo" stands for the name of the font package
you are installing:
a) Make sure you have stored all the relevant files shipped in the
package (.afm, .tfm, .pfb, .pfa, .mf, .fd, .enc, .map, .sty are all
relevant in this context) in the appropriate subdirectories of
$TEXMFLOCAL, as explained above.
Note: in teTeX 3 (as opposed to teTeX 2)
- .map files should go to $TEXMFLOCAL/fonts/map/<syntax>/foo/
- .enc files should go to $TEXMFLOCAL/fonts/enc/<syntax>/foo/
where <syntax> indicates the syntax followed by the files (it is
often "dvips"). Please refer to the teTeX Manual for details (you
can read it with the command 'texdoc TETEXDOC').
b) Create a configuration file /etc/texmf/updmap.d/10local-foo.cfg (the
extension ".cfg" is important!). The file should list the map files
you stored in step a) under $TEXMFLOCAL, with one line per file, as
# This is a comment line
If a font is available both as bitmap and outline, you should use
MixedMap instead of Map. Please refer to update-updmap(8) and
updmap-sys(1) for details.
c) Run the program "update-updmap". This will generate an appropriate
updmap.cfg file under /var/lib/texmf/web2c/ (not /etc/texmf/!),
containing the Map and/or MixedMap lines taken from 10local-foo.cfg.
Note: modifying updmap.cfg directly is not supported in Debian,
because Debian font packages need to update it when they are
installed or removed. This is why updmap.cfg is not stored under
/etc and why you have to use update-updmap whenever you want to
d) Run the program "mktexlsr" (or "texhash", which is the same). This
will record all the newly created files in ls-R files (these are
used by TeX-related programs as indices to find the files they need
e) Run the program "updmap-sys". This will use your updated updmap.cfg
to generate files that are needed by dvips, pdflatex, dvipdfm, etc.,
such as psfonts.map or pdftex.map.
At this point, the font package should be properly installed for all
users on the system.
Thanks for the report.