Puffy mdocml = mandoc — UNIX manpage compiler — base system, ports and packages

Availability of the mandoc toolset

mandoc in the base system

The following operating systems come with bundled mandoc utilities as part of the base system. On these systems, no installation of mandoc is required, you can use it out of the box. All of these projects have helped to make mandoc better, by providing feedback and advice, bug reports, and patches.

mandoc is the default manual formatter and viewer

The following operating systems by default use the mandoc implementation of man(1) and apropos(1).

OpenBSD (default formatter since April 3, 2010; default viewer since December 14, 2014)
src/usr.bin/mandoc (1.14.1 sources under active development and build system)
Maintainer: Ingo Schwarze (schwarze@)
Alpine Linux (testing aport July 6, 2010; main aport June 12, 2011; man(1), apropos(1), makewhatis(8) enabled since December 29, 2014)
aports/main/mdocml (1.14.1 port)
Maintainer: Natanael Copa (ncopa@)
Void Linux (default formatter since September 23, 2014; default viewer since March 14, 2015; a man-db package is also available)
srcpkgs/mdocml (1.14.1 base system package)
Maintainer: Leah Neukirchen

mandoc is the default manual formatter

The following operating systems by default use the bundled mandoc utility to format manual pages for display, but use different implementations of man(1) and apropos(1).

FreeBSD (default since Nov 23, 2014; mandoc apropos(1) supported as an option)
contrib/mdocml (1.14.1 sources) usr.bin/mandoc (build system)
Maintainer: Baptiste Daroussin (bapt@)
NetBSD (default since February 7, 2012)
src/external/bsd/mdocml (1.13.4 sources and build system)
Maintainer: Christos Zoulas (christos@), formerly Joerg Sonnenberger (joerg@)
illumos (default since July 21, 2014)
src/cmd/mandoc (1.13.4 sources and build system)
Maintainers: Yuri Pankov and Garrett D'Amore

mandoc is not the default manual formatter

The following operating systems install mandoc by default, but do not use it as the default manual formatter.

DragonFly BSD (in base since October 29, 2009)
contrib/mdocml (1.13.1 sources) lib/libmandoc usr.bin/mandoc (build system)
Maintainers: Sascha Wildner and Franco Fichtner
Minix 3 (in base since June 26, 2010)
external/bsd/mdocml (1.12.3 sources and build system)

mandoc via ports and packages

The following operating systems provide ports and packages of mandoc. To use mandoc, you do not need to build and install it manually. The easiest way probably is to install a precompiled package. In case that isn't available, you can build the package yourself, using the ports framework or an equivalent mechanism. Please refer to your operation system documentation for instructions how to install packages and/or how to use the ports system.

Official ports and packages

The following operating systems provide official ports or packages, that is, the files required to build the port or package are stored in an official repository maintained by the respective operating system project.

FreeBSD (since March 25, 2009, useful for version 9 and older)
ports/textproc/mdocml (1.13.4 port)
Maintainer: Ulrich Spoerlein (uqs@)
Debian (since July 3, 2016)
jessie-backports (stable) package (1.13.3) — stretch (testing) package (1.13.3) — sid (unstable) package (1.13.3) — version history
Maintainers: Bdale Garbee (bdale@) and Michael Stapelberg (stapelberg@)
Arch Linux (since October 3, 2010)
packages/md/mdocml (1.14.1 port)

Unofficial ports and packages

For the following operating systems, files to build a port or package are available from third parties, not from the maintainers of the operating system itself.

Slackware Linux (since January 7, 2014)
slackbuilds/system/mdocml (1.13.4 SlackBuild script provided by SlackBuilds.org)
Maintainer: Daniel Levai
Crux Linux (since June 10, 2014)
mdocml (1.14.1 port provided by Svyatoslav Mishyn)
IBM AIX (since February 4, 2011)
Main/mdocml (1.12.0 package provided by Michael Perzl)
Using this very old version is no longer recommended. Better use pkgsrc (see below) or compile from source as explained in the INSTALL file.
MacOS X
homebrew/mdocml (1.13.2 homebrew formula provided by Alexis Hildebrandt)
textproc/mdocml (1.13.1 port provided by MacPorts)
Cygwin (since December 5, 2012)
mdocml (1.12.2 port)
MinGW (since October 11, 2014)
mandoc (1.13.1 port and pre-built binaries for Microsoft Windows provided by Embedeo Ltd.)

mandoc via pkgsrc

On many other operating systems, for example other Linux distributions, Darwin/Mac OS X, AIX, HP-UX, IRIX, and Solaris, you can use the pkgsrc portable package build system, see the list of supported platforms.

pkgsrc (since March 1, 2009)
textproc/mdocml (1.14.1 port)
Maintainer: Thomas Klausner (wiz@)

Other tested platforms

Building mandoc directly from the distribution tarball as described in the INSTALL file and running it has been tested on the following platforms, but a port or package is not yet available and there is no maintainer for these platforms:

Add or improve mandoc support

If you are interested in building or maintaining another port or consider integrating mandoc into the base system of another operating system, please contact us, such that we can provide help and keep you updated regarding new releases.

Some time ago, Jesse Adams built Linux packages for several distributions on his Open Build Service account and tried to get his package into openSUSE, but then abandoned the project before getting anywhere. It would be useful if someone could pick that work up.

Copyright © 2013, 2014, 2015, 2016, 2017 Ingo Schwarze, $Date: 2017/03/15 08:21:46 $