12.1. Manual pages

You should install manual pages in nroff source form, in appropriate places under /usr/share/man. You should only use sections 1 to 9 (see the FHS for more details). You must not install a pre-formatted “cat page”.

Each program, utility, and function should have an associated manual page included in the same package. It is suggested that all configuration files also have a manual page included as well. Manual pages for protocols and other auxiliary things are optional.

If no manual page is available, this is considered as a bug and should be reported to the Debian Bug Tracking System (the maintainer of the package is allowed to write this bug report themselves, if they so desire). Do not close the bug report until a proper man page is available. 1

You may forward a complaint about a missing man page to the upstream authors, and mark the bug as forwarded in the Debian bug tracking system. Even though the GNU Project do not in general consider the lack of a man page to be a bug, we do; if they tell you that they don’t consider it a bug you should leave the bug in our bug tracking system open anyway.

Manual pages should be installed compressed using gzip -9.

If one man page needs to be accessible via several names it is better to use a symbolic link than the .so feature, but there is no need to fiddle with the relevant parts of the upstream source to change from .so to symlinks: don’t do it unless it’s easy. You should not create hard links in the manual page directories, nor put absolute filenames in .so directives. The filename in a .so in a man page should be relative to the base of the man page tree (usually /usr/share/man). If you do not create any links (whether symlinks, hard links, or .so directives) in the file system to the alternate names of the man page, then you should not rely on man finding your man page under those names based solely on the information in the man page’s header. 2

Manual pages in locale-specific subdirectories of /usr/share/man should use either UTF-8 or the usual legacy encoding for that language (normally the one corresponding to the shortest relevant locale name in /usr/share/i18n/SUPPORTED). For example, pages under /usr/share/man/fr should use either UTF-8 or ISO-8859-1. 3

A country name (the DE in de_DE) should not be included in the subdirectory name unless it indicates a significant difference in the language, as this excludes speakers of the language in other countries. 4

If a localized version of a manual page is provided, it should either be up-to-date or it should be obvious to the reader that it is outdated and the original manual page should be used instead. This can be done either by a note at the beginning of the manual page or by showing the missing or changed portions in the original language instead of the target language.