update-fmtutil(8) update

Other Alias

update-language, update-fmtlang

SYNOPSIS

update-language [options]
update-fmtutil [options]

DESCRIPTION

This manual page explains briefly the usage of the three TeX configuration update programs update-language and update-fmtutil.

The update-fontlang script should not be called directly, but only via the two described links. For a more in-depth description, please see the document TeX on Debian in /usr/share/doc/tex-common/TeX-on-Debian.txt.gz (also available as HTML and PDF).

The programs update-language and update-fmtutil create or update the configuration files language.dat and fmtutil.cnf, respectively. These files define the hyphenation patterns to be loaded into LaTeX-related TeX formats (language.dat), and the list of formats to be created (fmtutil.cnf).

These programs can be used either in system-wide mode if called by root, or in a user-specific mode if called by a user without super-user privileges.

OPTIONS

-c DIR, --conf-dir=DIR
directory where the user-specific configuration files are looked for in user-specific mode (default TEXMFCONFIG/language.d for update-language and TEXMFCONFIG/fmt.d for update-fmtutil, where TEXMFCONFIG is usually $HOME/.texmf-config).
-o FILE, --output-file=FILE
file to write the output to. Per default, in system-wide mode, update-language writes to /var/lib/texmf/tex/generic/config/language.dat and update-fmtutil writes to /var/lib/texmf/web2c/fmtutil.cnf.
--checks
perform sanity checks on the generated config file. Don't use this in maintainer scripts.
--quiet
don't write anything to the standard output during normal operation
--help
print a summary of the command-line usage and exit
--version
output version information and exit

USAGE

In system-wide mode, both programs merge those files ("configuration snippets") with a specific extension in the respective configuration directories to produce the final file. These configuration directories and extensions are language.d and .cnf for update-language, and fmt.d and .cnf for update-fmtutil. In system-wide mode, these directories are those under /etc/texmf/. Both TeX add-on packages and local administrators can add files to these directories.

If a package that provides such snippets is removed but not purged, including the snippet will likely break the system. To prevent the inclusion in these cases, snippets installed by packages have to contain a magic header:

# -_- DebPkgProvidedMaps -_-

which local administrators should not remove. From the files with a magic header, only those files which are also listed in one of the files in /var/lib/tex-common/language-cnf/ for update-language, and /var/lib/tex-common/fmtutil-cnf/ for update-fmtutil, are actually included into the final output file. This way, local changes to the configuration can be preserved while the package is in state 'rc' (that is, the package is removed, but its configuration files are still present). For details about this mechanism, package maintainers should consult the Debian TeX Policy. As a special case, the files for JadeTeX and xmlTeX are only included if there is already a file for the LaTeX format (see TeX on Debian for details).

The user-specific mode provides a way for a non-admin user to override system-wide settings. In this mode, update-language writes to TEXMFVAR/tex/generic/config/language.dat, and update-fmtutil writes to TEXMFVAR/web2c/fmtutil.cnf, where TEXMFVAR is usually $HOME/.texmf-var. Furthermore, files present within the user-specific configuration directories are included in addition to the files present in the system-wide configuration directories. In case the same filename exists in the system-wide configuration directory and the user-specific configuration directory, the user-specific file is used instead of the system-wide one. The user-specific configuration directories are TEXMFCONFIG/language.d for update-language and TEXMFCONFIG/fmt.d for update-fmtutil, where TEXMFCONFIG is usually $HOME/.texmf-config. The system-wide configuration directories have the same names, but are located in /etc/texmf/ instead of TEXMFCONFIG.

Note that changes introduced by updates of packages are not propagated to the user's configuration files. This has to be done by hand.

FILES

/var/lib/texmf/tex/generic/config/language.dat
This file is generated or updated by update-language in system-wide mode and contains a list of the hyphenation patterns loaded into LaTeX-based formats by fmtutil-sys.
/var/lib/texmf/web2c/fmtutil.cnf
This file is generated or updated by update-fmtutil in system-wide mode and contains a list of formats to be generated by fmtutil-sys.
/etc/texmf/language.d/name.cnf
Input files for update-language
/etc/texmf/fmt.d/name.cnf
Input files for update-fmtutil
/var/lib/tex-common/language-cnf/package.list
Lists the file(s) installed by package in /etc/texmf/language.d/.
/var/lib/tex-common/fmtutil-cnf/package.list
Lists the file(s) installed by package in /etc/texmf/fmt.d/.

AUTHOR

This manual page was written by Norbert Preining <[email protected]> for the Debian distribution (and may be used by others). It was later updated by Florent Rougon <[email protected]>.