Chapter 19. Categories

Table of Contents
19.1. Current list of categories
19.2. Choosing the right category

As you already know, ports are classified in several categories. But for this to work, it is important that porters and users understand what each category is for and how we decide what to put in each category.

19.1. Current list of categories

First, this is the current list of port categories. Those marked with an asterisk (*) are virtual categories--those that do not have a corresponding subdirectory in the ports tree.

Note: For non-virtual categories, you will find a one-line description in the pkg/COMMENT file in that subdirectory (e.g., archivers/pkg/COMMENT).

Category Description
afterstep* Ports to support the AfterStep window manager.
archivers Archiving tools.
astro Astronomical ports.
audio Sound support.
benchmarks Benchmarking utilities.
biology Biology-related software.
cad Computer aided design tools.
chinese Chinese language support.
comms Communication software. Mostly software to talk to your serial port.
converters Character code converters.
databases Databases.
deskutils Things that used to be on the desktop before computers were invented.
devel Development utilities. Do not put libraries here just because they are libraries--unless they truly do not belong anywhere else, they should not be in this category.
editors General editors. Specialized editors go in the section for those tools (e.g., a mathematical-formula editor will go in math).
elisp* Emacs-lisp ports.
emulators Emulators for other operating systems. Terminal emulators do not belong here--X-based ones should go to x11 and text-based ones to either comms or misc, depending on the exact functionality.
french French language support.
ftp FTP client and server utilities. If your port speaks both FTP and HTTP, put it in ftp with a secondary category of www.
games Games.
german German language support.
gnome* Ports from the GNU Object Model Environment (GNOME) Project.
graphics Graphics utilities.
hebrew Hebrew language support.
irc Internet Relay Chat utilities.
ipv6* IPv6 related software.
japanese Japanese language support.
java Java language support.
kde* Ports from the K Desktop Environment (KDE) Project.
korean Korean language support.
lang Programming languages.
linux* Linux applications and support utilities.
mail Mail software.
math Numerical computation software and other utilities for mathematics.
mbone MBone applications.
misc Miscellaneous utilities--basically things that do not belong anywhere else. This is the only category that should not appear with any other non-virtual category. If you have misc with something else in your CATEGORIES line, that means you can safely delete misc and just put the port in that other subdirectory!
net Miscellaneous networking software.
news USENET news software.
offix* Ports from the OffiX suite.
palm Software support for the 3Com Palm(tm) series.
perl5* Ports that require perl version 5 to run.
picobsd Ports to support PicoBSD.
plan9* Various programs from Plan9.
print Printing software. Desktop publishing tools (previewers, etc.) belong here too.
python* Software written in python.
ruby* Software written in ruby.
russian Russian language support.
science Scientific ports that don't fit into other categories such as astro, biology and math.
security Security utilities.
shells Command line shells.
sysutils System utilities.
tcl76* Ports that use Tcl version 7.6 to run.
tcl80* Ports that use Tcl version 8.0 to run.
tcl81* Ports that use Tcl version 8.1 to run.
tcl82* Ports that use Tcl version 8.2 to run.
textproc Text processing utilities. It does not include desktop publishing tools, which go to print/.
tk42* Ports that use Tk version 4.2 to run.
tk80* Ports that use Tk version 8.0 to run.
tk81* Ports that use Tk version 8.1 to run.
tk82* Ports that use Tk version 8.2 to run.
tkstep80* Ports that use TkSTEP version 8.0 to run.
ukrainian Ukrainian language support.
vietnamese Vietnamese language support.
windowmaker* Ports to support the WindowMaker window manager
www Software related to the World Wide Web. HTML language support belongs here too.
x11 The X window system and friends. This category is only for software that directly supports the window system. Do not put regular X applications here. If your port is an X application, define USE_XLIB (implied by USE_IMAKE) and put it in the appropriate categories. Also, many of them go into other x11-* categories (see below).
x11-clocks X11 clocks.
x11-fm X11 file managers.
x11-fonts X11 fonts and font utilities.
x11-servers X11 servers.
x11-toolkits X11 toolkits.
x11-wm X11 window managers.
zope* Zope support.
For questions about the FreeBSD ports system, e-mail <ports@FreeBSD.org>.
For questions about this documentation, e-mail <doc@FreeBSD.org>.