Address Merged Ports

My most recent # portmaster -Da revealed a package conflict: py-setuptools was merged with py-distribute.

From FreshPorts:

2013-03-05
Affects: users of devel/py-setuptools (i.e you)
Author: rm@FreeBSD.org
Reason: devel/py-setuptools was replaced with devel/py-distribute. py-setuptools port will be removed shortly.

To fix this:
# portmaster -o devel/py-distribute devel/py-setuptools

From man 8 portmaster:

-o new port dir in /usr/ports installed port:replace the installed port with a port from a different origin

Parse /usr/ports/UPDATING for Relevant Issues

Tired of sifting through /usr/ports/UPDATING for notes that affect only those packages installed on your system?

Tired of grepping for issues that may have arisen from/to certain dates?

pkg_updating(1) analyses /usr/ports/UPDATING and does the heavy lifting for you.

To obtain the relevant entries from, say, two weeks ago, do:

# /usr/sbin/pkg_updating -d $(/bin/date -v-2w +%Y%m%d)

Rebuild FreeBSD Ports

To rebuild a specific FreeBSD port and the ports that it depends on, for example, with pydf, do:

# portmaster -fR sysutils/pydf

To rebuild all install FreeBSD ports, it’s important to firstly read /usr/ports/UPDATING for any update advisories.

Then, to list ports with issued warnings, do:

# portaudit -a

Once you are confident that the advisories for installed packages are negligible, issue:

# DISABLE_VULNERABILITIES=yes portmaster -R -a -f -B -C -d -G

From portmaster(8):

-R skips ports updated on the previous run
-a checks all ports and updates when needed
-f forces build
-B prevents portmaster from creating a backup package
-G retains custom build config options
-C prevents # make clean from being executed before the build
-d always clean distfiles

DISABLE_VULNERABILITIES=yes prevents portmaster from aborting when an ‘unsafe’ port is encountered.