Free BSD operating system can use binary packages with pkg utility, but for for some ocassion, like running newest versions of the code, you would want to compile some programs.
For that, there is very useful ports collection that simplifies compilation process.
portmaster is nothing more than a shell script (albeit a quite elegant and powerful one), written in /bin/sh.
It does not depend upon other ports, external databases or languages, rather it’s been written in such a way as to make use of the information about a port’s dependencies, dependents, file locations and other information contained in to determine which ports to update.
Based on the information in the Ports tree, Free BSD will automatically connect to the proper download site, retrieve the application source for you, compile and install the app.
portmaster provides a way to list ports that need updating using the -L option: : Ports listed under this category have dependencies but are not depended upon by other ports.
Each installed port will be listed in one of these categories along with whether the port has a revised version available: contains all the last minute notes on all of the ports in the Ports Collection and documents, where applicable, some of the problems you may encounter when updating, and/or additional features or options that may be available.
This tutorial will show you how to use the source-based ports collection to install and manage applications.
Jordan Hubbard committed what would become the legendary ports system on August 21, 1994. Fetching snapshot generated at Thu Oct 31 EDT 2013: 98c3a00130d24348ff5bcca8474e4c6cb777d838e8f5d2 27% of 69 MB 3728 k Bps 00m21s The portsnap tool will download a snapshot of the tree from the mirror closest to you, verify its integrity against a public key and then extract everything to /usr/ports.