If you want to keep the downloaded packages, you need to set the PKGDIR environment variable pointing to the place where to store the downloaded .tbz files.
Here's how to set PKGDIR with the t/csh shell to /usr/ports/packages/All:
- % su
- # setenv PKGDIR /usr/ports/packages/All
- # mkdir -p /usr/ports/packages/All
- # pkg_add -Kr foo
Using packages is all fine and dandy, however not all applications in the ports tree are available as packages due to licensing issues.
I found out that after setting the PKGDIR, every single port that I tried to install failed with the same error: "Missing pkg-descr".
To fix the problem simply unset the PKGDIR environment variable like so:
- # unsetenv PKGDIR