FreeBSD Ports

From Wikipedia, the free encyclopedia

This section needs subsections.
Please format the article according to the guidelines laid out at
Wikipedia:Manual of Style (headings).

The FreeBSD Ports Collection is a package management system or ports collection that provides an easy and consistent way of installing software packages on the FreeBSD Unix-like computer operating system. It uses Makefiles laid out in a directory hierarchy, so software can be built, installed and deinstalled with the make command.

When installing an application, very little (if any) user intervention is required after issuing the initial command. In most cases, the application is automatically downloaded from the Internet, patched and configured if necessary, compiled, installed, and registered in the package database. Any dependencies on other applications or libraries a port may have are also installed for the user.

Each port, or software package, is maintained by a "port maintainer", an individual who is responsible for staying current with the latest software developments. Anyone is welcome to become a port maintainer by contributing their favorite piece of software to the collection. One may also choose to adopt and maintain an existing port that has no maintainership.

Due to the size of the Ports Collection and with new software being contributed on a regular basis, many users will never have to look elsewhere for third party applications. As of November 6, 2006, there were over 15,989 pieces of software available in the collection.

Precompiled (binary) ports are called "packages", and are available for download. FreeBSD maintains a build farm (the "pointyhat cluster") that is used to build all packages across all architectures and all major releases. Build logs and errors for all the ports built by the pointyhat cluster are available [1].

The precompiled packages are separated into categories by architecture for which they are available. They are further separated into several directories. There are "release" directories for each of the current production releases which are built from the ports collection shipped with the release, and are not updated thereafter. There are also "stable" and "current" directories for several major release branches. They are updated roughly once a week. In almost all cases, a package created for an older version of FreeBSD can be installed and used on a newer system without difficulty as binary backward compatibility across major releases is enabled by default.

If you know the name of the package you would like to install, the installation can be entirely automated by passing the package name to the pkg_add -r command. The appropriate package for your release will then be downloaded and installed along with any software dependencies it may have. By default, packages will be downloaded from the main FreeBSD distribution site.

[edit] History

Jordan Hubbard committed his "port make macros" to the FreeBSD CVS repository on August 21, 1994. His package install suite was committed a year earlier on August 26, 1993. Core ports framework had been maintained by its author and Satoshi Asami for several years until a separate body called Ports Management Team was formed to take over.

[edit] External links

In other languages