NAME¶
dh_installtex - register Type 1 fonts, hyphenation patterns, or formats with TeX
SYNOPSIS¶
dh_installtex [
debhelper options] [
-n] [
--priority= n] [
--flavor=flavor[,
flavor]]
[
map=MixedMap,file.map] [
map=Map,file.map] [
map=KanjiMap, file.map] [
mapfile=file.cfg[=
n]] [
hyphen=lang,
file[,lhm=
n][,rhm=
n][,synonym=
syn,...]] [
hyphenfile=file.cnf[=
n]] [
format=format,
engine,
hyphenfile,
rest args]
[
formatfile=file.cnf[=
n]]
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
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 hyphen, and these files will be installed into
/etc/texmf/
configdir/ for the respective type (updmap.d for map files,
hyphen.d for hyphenation pattern files, and fmt.d for format files).
Example:
dh_installtex mapfile=foo.cfg formatfile=debian/bar.cnf=42
would install foo.cfg as /var/lib/tex-common/fontmap-cfg/texmf/foo.cfg, and
debian/bar.cnf as /etc/texmf/fmt.d/42bar.cnf.
2)
Directly on the cmd line: You can specify maps, formats, and
hyphenations on the cmd line. The items are stored in the respective config
file 20package
Example:
dh_installtex map=Map,foo.map hyphen=ngerman-x-2011-07-01,dehyphn-x-2011-07-01.tex,hyph-de-1996.pat.txt,lhm=2,rhm=2,synonym=ngerman-x-latest,exceptions=hyph-de-1996.hyp.txt
would install a file /var/lib/tex-common/fontmap-cfg/texmf/package.cfg
containing the line
Map foo.map
and a file /etc/texmf/hyphen.d/20package.cnf containing the lines
name=ngerman-x-2011-07-01 file=dehyphn-x-2011-07-01.tex file_patterns=hyph-de-1996.pat.txt lefthyphenmin=2 righthyphenmin=2 synonym=ngerman-x-latest file_exceptions=hyph-de-1996.hyp.txt
3)
Package files: You create a file debian/package.maps or debian/maps,
debian/package.hyphens or debian/hyphens, 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.formats file as
/etc/texmf/fmt.d/20package.cnf.
Mixing the different variants¶
The command line items (Variant 2) are merged into the debian/package.maps
(debian/package.hyphens, 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.
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 is used to select a different tree then the
default /usr/share/texmf, and to switch on additional options. The
argument specify a list from flavors to be selected. At the moment you can
select from the following list of flavors: tree:texlive,
map:config_for_active_maps, map:config_for_all_maps,
format:build_all,
format:add_one:formatname, and
lsr:full.
tree:texlive will select the tree /usr/share/texlive/texmf-dist and
should only be used for files installed into this tree.
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:formatname 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.
lsr:full: Recreate the lsr database not only for the standard trees,
but also the distribution tree "/usr/share/texlive/texmf" and
"/usr/share/texlive/texmf-dist".
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.