Porter's Handbook
Working with Ports
- Introduction
- Fetching the Ports Tree
- Configuration of the Ports System
- Searching the Ports Tree
- Straightforward Installation: A Simple Example
- Cleaning Up After a Build
- Uninstalling a Port's Package
- Using Flavors and Subpackages
- Using dpb to Build Multiple Ports
- Security Updates (-stable)
- Package Signatures
- Reporting Problems
- Debug Packages, Debuggers and Backtraces
- Helping Us
OpenBSD Porting Guide
- Overview
- Porting Checklist
- Handling Complex Situations
- Updating Ports
- OpenBSD Porting Policy
- Security Recommendations
- Generic Porting Hints
- Other Helpful Hints
- Additional Information
Special Porting Topics
Port Testing Guide
Differences from Other BSD Projects
- Extra Support
- Generic Infrastructure Issues
- Using make Properly
- Fetching Sources
- The
WRKDIRInfrastructure - Fake Port Installation
- Packaging Tools
- Flavors
The OpenBSD Porter's Handbook is supplemental documentation to the man pages, most notably ports(7).
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.