Python 2/3 build failures with Poudriere/Synth, DEFAULT_VERSIONS

Brandon J. Wandersee brandon.wandersee at
Tue Oct 18 15:48:10 UTC 2016

Hi, folks. So I've run up against this issue a couple times in the past,
but didn't really care since I was just planning to try a program out.
out. Having recently settled on Borg (archivers/py-borgbackup) for my
automated backup scheme, though, it's something that's become

When trying to build a custom local repository, both Poudriere and Synth
will refuse to build Python 3 ports unless "DEFAULT_VERSIONS+=
python=3.x" is set. (Borg is a Python 3 program.)  Setting this of
course results in Python 2 ports not being built. This same issue
apparently prevents an official package from being built for
archivers/py-borgbackup, since there is none.

However, installing archivers/py-borgbackup through plain-old `make
install clean` works just fine. All dependencies are installed and the
two sets of Python programs coexist just fine. So what's the deal? Why
is it that I can install Python 2 and Python 3 ports side-by-side
manually, but can't build the requisite packages with either of these
tools? Is there some way to configure Poudriere to build Python 2/3
ports to co-exist in their install environment? I would like to rely
solely on Poudriere on my home server for package builds and upgrades,
but insist on sticking with Borg for my backups, and it's a little
annoying to have to keep a 2GB ports tree on my laptop for a single
program and have to worry about keeping that one (vital) program in sync
with the custom repository. Am I just stuck with manually installing and
maintaining it?  Thanks in advance.

::  Brandon J. Wandersee
::  brandon.wandersee at
::  --------------------------------------------------
::  'The best design is as little design as possible.'
::  --- Dieter Rams ----------------------------------

More information about the freebsd-questions mailing list