The ports collection has some serious issues

John Marino at
Fri Dec 16 15:06:32 UTC 2016

 From Kevin Oberman:
> Just to add another voice of those who use portmaster on a regular basis. I
> moved to portmaster about seven years ago and have has very few issues with
> it. I have had issues building ports from time to time, but it's been a
> long time since i hit one that was not a problem with the port... often
> related to the options I use. I like that it has no dependencies. I like
> that it is very stable. There are things I would like to see changed, but I
> would be very upset to lose it. Since it is stable, the only way I would
> lose it is if the underlying port structure changed in a way that required
> work on it.
> Saying that synth and poudriere are replacements for portmaster/portupgrade
> simply indicate lack of familiarity with my (and others) use cases. I have
> used synth and it is excellent, but not on my development system where
> everything is built from source and I hope always will be. I have found
> portupgrade too fragile for the reasons mentioned.  I had to clean up a
> mangled database once too often. (Yes, it is a flat text db, so it can be
> fixed manually, but it is NOT fun!)

"but not on my development system where everything is built from source 
and I hope always will be"

At face value, this doesn't make sense because synth is a tool for 
building everything from source, so your development system is exactly 
where it should be installed.

So you must be talking about build dependencies of synth (there are no 
run dependencies).  While I think the requirement of rebuilding synth 
from source is artificial, I've provided a very reasonable approach to 
solving this which I feel compelled to repeat for the readers of Kevin's 
post.  The solution:

Starting with a clean system:
1) install synth from binary package from official freebsd builder (a 
single package)
2) Configure synth if necessary
3) command synth to build itself
4) pkg delete synth (system is once again clean)
5) pkg add -F /path/to/synth/packages/synth-*

Now you have a system containing s/w built by itself.  On an modest 
system less than 4 years old, it might take 30 minutes at most.

So the "synth has dependencies" detraction is extremely weak.  For 
people that trust FreeBSD to provide untainted binaries, it's not an 
issue at all and for the paranoid, it's easily worked around.  Saying 
that the use of Ada limits it to the platforms it can run on natively is 
a valid detraction, but it's BUILD dependencies really aren't due to the 
availability of binary packages, the PRIMARY product of the ports tree.

RE: poudriere, it has no dependencies.  It's just as appropriate on the 
dev system and adding a jail and configuring it also takes less than 30 
minutes.  Either is very appropriate for a system that must build 
everything that is run on it.


This email has been checked for viruses by Avast antivirus software.

More information about the freebsd-ports mailing list