About Manned.org

Goal

The state of online indices of manual pages is a sad one. Existing sites only offer you a single version of a man page: From one origin, and often only in a single language. Most don't even tell you where the manual actually originated from, making it very hard to determine whether the manual you found actually applies to your situation and even harder to find a manual from a specific system. Additionally, some sites render the manuals in an unreadable way, don't correctly handle special formatting - like tables - or don't correctly display non-ASCII characters.

Manned.org was created in order to improve this situation. This site aims to index the manual pages from a variaty of systems, both old and new, and allows you to browse through the various versions of a manual page to find out how each system behaves. The manuals are stored in the database as UTF-8, and are passed through groff to render them in (mostly) the same way as they are displayed in your terminal.

URL format

You can link to specific packages and man pages with several URL formats. These URLs will keep working in the future, so you should not have to worry about eventual dead links.

Man pages

The following URLs are available to refer to an individual man page:

/<name>/<8-hex-digits>
This is the permalink format for a specific man page (e.g. /ls/910be0ed).
/<name>[.<section>]
Will try to get the latest and most-close-to-upstream version of a man page (e.g. /socket or /socket.7). Note that this may fetch the man page from any available system, so may result in confusing scenarios for system-specific documentation.
/man/<system>/<name>[.<section>]
Will get the latest version of a man page from the given system (e.g. /man/ubuntu-xenial/rsync)
/man/<system>/<category>/<package>/<name>[.<section>]
Will get the latest version of a man page from the given package (e.g. /man/ubuntu-xenial/net/rsync/rsync)
/man/<system>/<category>/<package>/<version>/<name>[.<section>]
Will get the man page from a specific package version (e.g. /man/ubuntu-xenial/net/rsync/3.1.1-3ubuntu1/rsync)

Currently, the last three URLs will perform a redirect to the appropriate permalink URL, but this may change in the future.
In all URLs where an optional .<section> can be provided, the search is performed as a prefix match. For example, /cat.3 will provide the cat.3tcl man page if no exact cat.3 version is available. Linking to the full section name is also possible: /cat.3tcl. If no section is given and multiple sections are available, the lowest section number is chosen.

Packages

Linking to individual packages is also possible. These pages will show a listing of all manual pages available in the given package.

/pkg/<system>/<category>/<package>
For the latest version of a package (e.g. /pkg/arch/core/coreutils).
/pkg/<system>/<category>/<package>/<version>
For a particular version of a package (e.g. /pkg/arch/core/coreutils/8.25-2).

Note that this site only indexes packages that actually have manual pages; Linking to a package that doesn't have any will result in a 404 page.

The indexing process

All man pages are fetched right from the (binary) packages available on the public repositories of Linux distributions. In particular:

Arch Linux
The core, extra and community repositories are fetched from a local Arch mirror. Indexing started around begin June 2012. The i686 architecture was indexed until November 6th, 2016, packages after that were fetched from from x86_64.
Debian
Historical releases were fetched from http://archive.debian.org/debian/ and http://snapshot.debian.org/. For buzz, rex and bo, we're missing a few man pages because some packages were missing from the repository archives. Where available, all components (main, contrib and non-free) from the $release and $release-updates repositories are indexed.
Fedora
Historical releases were fetched from archives.fedoraproject.org, current releases from a local repository. Fedora Core 1 till 6 are (incorrectly) called 'Fedora' here. To compensate for that, Fedora 3 till 6 also include the Extras repository. For Fedora 7 and later, the 'Everything' and 'updates' repositories are indexed. The i386 arch was indexed for Fedora 17 and older, the x86_64 arch starting with Fedora 18.
FreeBSD
Historical releases were fetched from http://ftp-archive.freebsd.org/mirror/FreeBSD-Archive/. The base installation tarballs are included in the database as packages prefixed with core-. The package repositories have also been indexed, except for 2.0.5 - 2.2.7 and 3.0 - 3.3 because those were not available on the ftp archive. Only the -RELEASE repositories have been included, which is generally a snapshot of the ports directory around the time of the release. The release dates indicated for many packages were guessed from the file modification dates in the tarball, and may be inaccurate.
Ubuntu
Historical releases were fetched from http://old-releases.ubuntu.com/ubuntu/, supported releases from a local mirror. All components (main, universe, restricted and multiverse) from the $release, $release-updates and $release-security repositories are indexed. Indexing started around mid June 2012.

Only packages for a single architecture (i386 or amd64) are scanned. To my knowledge, packages that come with different manuals for different architectures either don't exist or are extremely rare. It does happen that some packages are not available for all architectures. Usually, though, every package is at least available for the most popular architecture, so hopefully we're not missing out on much.

The repositories are scanned for new packages on a daily basis.

Other systems

Suggestions for new (or old) systems to index are welcome.

It would be great to index a few more non-Linux systems such as other BSDs, Solaris/Illumos and Mac OS X. Unfortunately, those don't always follow a binary package based approach, or are otherwise less easy to properly index.

In general, systems that follow an entirely source-based distribution approach can't be indexed without compiling everything. Since that is both very resource-heavy and open to security issues, there are no plans to include manuals from such systems at the moment. So unless someone comes with a solution I hadn't thought of yet, there won't be any Gentoo manuals here. :-(

Future plans

This site isn't nearly as awesome yet as it could be. Here's some ideas that would be nice to have in the future:

Copyright

All manual pages are copyrighted by their respective authors. The manuals have been fetched from publically available repositories of free and (primarily) open source software. The distributors of said software have put in efforts to only include software and documentation that allows free distribution. Nonetheless, if a manual that does not allow to be redistributed has been inadvertently included in our index, please let me know and I will have it removed as soon as possible.