Mix'n'match between packages an ports?

Steve O'Hara-Smith steve at sohara.org
Tue Jun 30 12:27:37 UTC 2015

On Tue, 30 Jun 2015 13:53:03 +0200
Ewald Jenisch <a at jenisch.at> wrote:

> Hi,
> Having run FreeBSD for some years historically I used the "build from
> source"-method in order to install/upgrade ports - i.e. "make && make
> install" and "portupgrade" respectively.
> Since the package system has gotten much better of the years, I
> decided to go for the binary way of installing/upgrading on recent
> installations, i.e. "pkg ...". Now on one of these recent machines
> I've got to install a port that needs some configuration when
> building, so installing that particular program from source would be
> better.
> Here's my question: Is a "mix and match" between binary and
> source-installation (pkg.. vs. "make / portupgrade") possible on the
> same machine, or is it one or the other?

	No it is perfectly possible (I have a few ports where I need
different options to the pre-built packagess). It is important to use pkg
lock to prevent pkg upgrade from replacing your carefully built version
(yes I found this out the hard way). It is also useful to run make missing
in the port and pkg install as many of the dependencies as possible to avoid
building them. One catch is that a pkg upgrade may require you to rebuild
the port if a dependency has changed shared lib version on you - so it
helps to test your ports after a pkg upgrade.

	An alternative is to set up poudriere and a local web server and
roll your own packages, but that involves you in building everything which
is a pain if you use things like LibreOffice or even Firefox. I did this
for a while before realising that I was doing all this build work for the
sake of a handful of customisations.

Steve O'Hara-Smith <steve at sohara.org>

More information about the freebsd-questions mailing list