====== FreeBSD Ports ======
* [[FreeBSD]]
* [[FreeBSD Knobs]]
* [[FreeBSD Packages]]
* [[FreeBSD Ports Upgrades]]
* [[http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/ports-using.html|Using the ports system]]
== Download ports tree ==
portsnap fetch
portsnap extract
== Update ports tree ==
portsnap fetch
portsnap update
== Upgrading packages installed with ports ==
List outdated ports:
pkg_version -v
pkg_version -vIL=
Install portmaster. Portmaster is designed to use the base system of FreeBSD.
cd /usr/ports/ports-mgmt/portmaster
make install
List all installed software and search for updates:
portmaster -L
Upgrade all ports at once:
portmaster -a
Use portmaster to install a package, and upgrade all dependencies if necessary:
portmaster shells/bash
== Find the location of a port ==
whereis name
ls /usr/ports/*/name
== Download port distfiles ==
make fetch
== Uninstall a port ==
make deinstall
== Reinstall a port after it's been built ==
make reinstall
== Create a list of all ports ==
find /usr/ports/ -type d -mindepth 2 -maxdepth 2 | grep -v CVS | grep -v Tools | sed -e 's/\/usr\/ports\///g' > ~/all-ports
== List installed packages ==
pkg_info
== Update search ports index ==
cd /usr/ports && make index
== Search ports ==
cd /usr/ports
make search name=
make search key=
== Display out of date packages ==
pkg_version -v
== Package configuration ==
Modify configuration:
make config
Output configuration settings:
make showconfig
Reset configuration:
make rmconfig
== Build with default options ==
make -DBATCH
== Build with specific options ==
make -DBATCH -DWITHOUT_FOO -DWITH_BAR
== Install Kernel Sources ==
cd /usr/ports/devel/subversion && make install
svn checkout http://svn.freebsd.org/base/stable/9 /usr/src
== cron ==
Tell cron to check for release updates nightly. The system will send an email if there are any to apply.
echo "# Security updates" >> /etc/crontab
echo "@daily root freebsd-update cron" >> /etc/crontab
== Run make clean on all dependencies ==
make clean-depends