dh_installtex(1)

NAME

dh_installtex - register Type 1 fonts, languages, or formats with TeX

SYNOPSIS

dh_installtex [debhelper options] [-n] [--priority=n]
[--flavor=flavor[,flavor]] [map=MixedMap,file.map] [map=Map,file.map]
[mapfile=file.cfg[=n]] [language=lang,pattern[,alternate,...]]
[languagefile=file.cnf[=n]] [format=format,engine,hyphenfile,rest args]
[formatfile=file.cnf[=n]] [texmftrees=tree[,tree]]

DESCRIPTION

dh_installtex is a debhelper program that is responsible for updating
the ls-R databases, registering map files, new formats, and new
hyphenation patterns with TeX.

Your package should depend on an appropriate version of tex-common so
that the update-* commands are available. (This program adds that
dependency to ${misc:Depends}.)

WARNING This program does not check for the actual existence of any input files in TEXMF trees. If you call it without any further
specification on which packages to work on (using "-p" or "-N") it will add calls to management functions to all packages. In this case don't forget to add ${misc:Depends} to all packages' dependencies.

SIMPLE USAGE: Registering Files

If you only install files into /usr/share/texmf and want to be sure
that mktexlsr is called in a correct way (e.g., also in the postrm
script when there is no functional mktexlsr), simply call
dh_installtex
The ls-R databases are [only] updated for the following trees: /usr/share/texmf and /var/lib/texmf. Normal TeX related packages
following the Debian TeX Policy should only install files into these
directories and /etc/texmf (which does not need a ls-R DB), so this is a sensible choice. If you need to rehash the ls-R database of some
other trees (e.g., because an old version of your package had files in /usr/share/texmf-tetex), please specify these additional trees on the
command line via the texmftrees option:

dh_installtex texmftrees=tree1,tree2,...
This will update the ls-R databases for /usr/share/texmf,
/var/lib/texmf, and in addition tree1 and tree2.

COMPLEX USAGE: Registering fonts, hyphenation patterns and formats

If in addition, you have to install map files, hyphenation patterns for additional languages, or format definitions you can use three different methods to specify what should be installed:

1) Pre made config files: These files can be specified with the different typefile= options, together with an optional priority. type can be one of map, format and language, and these files will be
installed into /etc/texmf/configdir/ for the respective type (updmap.d for map files, language.d for language files, and fmt.d for format
files).

Example:
dh_installtex mapfile=foo.cfg formatfile=debian/bar.cnf=42
would install foo.cfg as /etc/texmf/updmap.d/20foo.cfg, and
debian/bar.cnf as /etc/texmf/fmt.d/42bar.cnf.
2) Directly on the cmd line: You can specify maps, formats, and languages on the cmd line. The items are stored in the respective
config file 20package
Example:

dh_installtex map=Map,foo.map language=greek,grphyph4.tex,polygreek
would install a file /etc/texmf/updmap.d/20package.cfg containing the
line

Map foo.map
and a file /etc/texmf/language.d/20package.cnf containing the lines

greek grphyph4.tex
=polygreek
3) Package files: You create a file debian/package.maps or debian/maps, debian/package.languages or debian/languages, debian/package.formats or debian/formats. These files are installed with default priority and the name of the package. Each of these files will be installed into the
first package dh_installtex is told to act on. By default this is the
first binary package in debian/control, but if you use -p, -i, or -a
flags, it will be the first package specified by those flags.
Example:

dh_installtex
would install a present debian/package.maps file as
/etc/texmf/updmap.d/20package.cfg.
Mixing the different variants
The command line items (Variant 2) are merged into the
debian/package.maps (debian/package.languages, debian/package.formats) file and the merged file is installed as 20package.cfg/cnf. If you
specify an additional package.cfg/cnf (Variant 1) without a different
priority than the default one on the cmd line, this will raise an error since both files would be installed as 20package.cfg/cnf. You can only specify package.cfg/cnf without a different priority than the default
one if no debian/package.maps nor any command line Map files are
present.
The pseudo-comment
If the provided cfg files do not contain the pseudo-comment as
described in the Debian TeX Policy, Font configuration, an additional
header with explanation, warning and the pseudo-comment is added.
This program automatically generates the postinst and postrm commands
needed to register the fonts with TeX. See dh_installdeb(1) for an explanation of how this works.

OPTIONS

-n, --noscripts
Do not modify postinst/prerm scripts.
--priority=n
Set the default priority to n instead of 20.
--flavor=flavor[,flavor]
This option will be used to switch additional options on. The
argument specify a list from flavors to be selected. At the moment you can select from the following list of flavors:
map:config_for_active_maps, map:config_for_all_maps, format:build_all, and format:add_one:ffoorrmmaattnnaammee.
map:config_for_active_maps will create a file config.bar for each active (i.e. uncommented) map in each of the cfg file generated by one of the three methods described above. These files are installed in /usr/share/texmf/dvips/config/.
If you select map:config_for_all_maps the script will generate config.bar even for those map files which are present in a cfg file, but deactivated by a comment.
The file config.bar is used when called by `dvips -Pbar ...'. Thus it allows the activation of single map files even if they are not
automatically activated via the updmap(-sys) mechanism.
Default is not to generate any config files.
format:build_all will add code to the postinst script to create all defined formats, and to the postrm script to clean and recreate?
FIXME? the generated formats.
format:add_one:ffoorrmmaattnnaammee allows to add the generation of a specific format without actually providing it (in a cnf file).
This is useful if a package adds hyphenation patterns to an
existing formats.
format:no_links: Usually, for every format that is specified in a configuration file in /etc/texmf/fmt.d/, dh_installtex will create a symlink /usr/bin/format that points to the corresponding engine. For example, /usr/bin/latex would be created as a symlink to
pdftex.
The flavor format:no_links inhibits this. If a link already exists, dh_installtex will skip this format with an informational message, even if this option is not given.

NOTES

Note that this command is not idempotent. "dh_clean -k" should be
called between invocations of this command, unless using the -n option. Otherwise, it may cause multiple instances of the same text to be added to maintainer scripts.

Please refer to the Debian TeX policy for details about fonts
configuration for TeX by Debian packages.

SEE ALSO

debhelper(7)

AUTHOR

This program and its documentation was written by Norbert Preining
<preining@logic.at> for the Debian Operating System and both are licensed under the GNU General Public License Version 2 or later.
Copyright © 2010-2025 Platon Technologies, s.r.o.           Home | Man pages | tLDP | Documents | Utilities | About
Design by styleshout