The base OpenBSD operating system is fairly complete in its own right. However, there is a large amount of third party software one might want to use in addition to the base system. The OpenBSD developers have done the hard work to make many thousands of third party applications available as pre-compiled binary packages.
In order to create a binary package, developers will start out with a Makefile that contains the list of instructions to fetch, extract, patch, configure, compile and package the raw source code. The collection of all these Makefiles is collectively known as the ports system.
In this handbook, we will explain how the ports system works and show you how to create or update your own port including the guidelines for submitting your work back to the OpenBSD Project.
To get the most out of this handbook, you'll want to be very familiar with the pkg_* tools and the base system. To learn more about packages, see packages(7).
NOTE: The ports & packages collection does NOT go through the thorough security audit that the OpenBSD base system does. Although we strive to keep the quality of the packages collection high, we just do not have enough human resources to ensure the same level of robustness and security as in the base OS.