Ports Description

The FreeBSD Ports and Packages Collection offers a simple way for users and administrators to install applications. The ports collection has been growing at a tremendous rate.

The Ports Collection supports the latest release on the FreeBSD-CURRENT and FreeBSD-STABLE branches. Older releases are not supported and may or may not work correctly with an up-to-date ports collection. Over time, changes to the ports collection may rely on features that are not present in older releases. Wherever convenient, we try not to gratuitously break support for recent releases, but it is sometimes unavoidable. When this occurs, patches contributed by the user community to maintain support for older releases will usually be committed.

// FIXME - This has been copy/pasted from original ports page, this is likely to change.

Using Packages / Ports

FreeBSD offers two ways to install additional third-party softwares.

// FIXME - blahblah

Using Packages

Using packages is quite straight-forward. FreeBSD base system includes a bunch of useful tools to deal with packages.

Anonymous CVS

What is CVS

Pros and Cons

Installing CVS

Using CVS

CVSup

What is CVSup

CVSup is a software package for distributing and updating collections of files across a network.

Pros and Cons

Pros:

Fast.

Up-to-date with the CVS tree.

Cons:

Won't work if you're behind a firewall (unless it's not blocking port 5999).

Does not work on all platforms

Installing CVSup

# pkg_add -r cvsup-without-gui

or if you want GUI support :

# pkg_add -r cvsup

Using CVSup

Portsnap

What is Portsnap

Portsnap is a system for securely downloading and updating a compressed snapshot of the FreeBSD ports tree, and using this compressed snapshot to extract or update a (uncompressed) copy of the ports tree.

Portsnap was written by Colin Percival.

Pros and Cons

Pros:

Very fast.

Secure.

Uses HTTP.

Well designed for frequent small updates.

Cons:

Snapshots are build every X hours.

Installing Portsnap

# pkg_add -r portsnap

or if you already have a ports tree :

# cd /usr/ports/sysutils/portsnap
# make all install clean

Using Portsnap

Create the configuration file :

# cp /usr/local/etc/portsnap.conf.sample /usr/local/etc/portsnap.conf

Then you'll need to fetch a ports snapshot using portsnap's fetch command :