After installing gaphor (using ports), the attempt to run it leads to the following error:
Traceback (most recent call last):
File "/usr/local/bin/gaphor", line 5, in <module>
from pkg_resources import load_entry_point
File "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 3074, in <module>
File "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 3060, in _call_aside
File "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 3087, in _initialize_master_working_set
working_set = WorkingSet._build_master()
File "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 645, in _build_master
File "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 946, in require
needed = self.resolve(parse_requirements(requirements))
File "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 833, in resolve
raise DistributionNotFound(req, requirers)
pkg_resources.DistributionNotFound: The 'etk.docking>=0.2' distribution was not found and is required by gaphor
Using the following command:
# easy_install etk.docking
the missing prerequisite has been installed.
The same action is required for the "gaphas" dependency.
It seems to be a defect because all the required dependencies must be installed during the port installation, does not it?
It appears this port manually (attempts to) install the etk.docking dependency 
Having said that there are a few issues with the state of this port in general.
For example it appears to BUILD_DEPENDS on py-nose (a unit testing framework) which is very likely bogus.
This itself however, is unlikely to cause the issue reported here, but is a reflection of the probable quality and robustness of the port in general.
This port is currently unmaintained, and as such I would recommend that you attempt to isolate the root cause of why the port doesn't correctly install etk.docking as it attempts to do.
Additionally, using easy_install to install Python packages into the system site-packages path is completely unsupported (and not recommended) as it bypasses ports/package management systems.
If you would like assistance isolating the root cause of this, you are welcome to join #freebsd-python on the freenode IRC network.
You are correct however that a port requiring additional python dependencies, should either do so itself, or as recommended, with ports of those python packages.
A commit references this bug:
Date: Thu Aug 18 14:44:00 UTC 2016
New revision: 420405
devel/gaphor: Mark broken, deprecate
Runtime failure was reported 13 months ago (unknown how long the problem
actually existed), it's never been fixed so apparently no one is using
this port or is interested in fixing it. Remove in 2 months.