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.
The first you'll use is pkg_add.
// FIXME - blahblah
Using Ports
3 main ways to play with ports :
Anonymous CVS
What is CVS
Pros and Cons
- Pros:
- Cons:
Installing CVS
CVS is in base system, so you don't have anything to do
Using CVS
// FIXME - will write that later.
CVSup
What is CVSup
- CVSup was written by John D. Polstra.
- 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 :
# portsnap fetch
Finally, you'll get your ports tree with :
# portsnap extract
When you'll want to update the tree, run :
# portsnap fetch [...] # portsnap update
Note: If you're interested in updating your ports tree regularly, you might want to look at portsnap's cron command.
PortEasy
==== What is PortEasy ===
- Porteasy lets you install ports and build packages without maintaining a full ports tree.
PortEasy was written by Dag-Erling Smorgrav.
Installing PortEasy
# pkg_add -r porteasy
or if you already have a ports tree :
# cd /usr/ports/ports-mgmt/porteasy # make all install clean
Using PortEasy
// FIXME - Never used it, but seems quite cool.
CVSync
- Similar to CVSup but incompatible Protocol
- Available in Ports Collection as net/cvsync
Written in C -> platform independent
- Not many cvsync mirrors
Useful Links
PointyHat Cluster - http://pointyhat.freebsd.org/
PR Guidelines - http://www.freebsd.org/doc/en_US.ISO8859-1/articles/pr-guidelines/index.html
Porter's Handbook - http://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/
FreeBSD Ports CVSWeb - http://www.freebsd.org/cgi/cvsweb.cgi/ports/
More Specific Links
FreeBSD Gnome Project - http://www.freebsd.org/gnome/
FreeBSD KDE Project - http://freebsd.kde.org/
FreeBSD Java Project - http://www.freebsd.org/java/