On 02/06/2018 14:44, Warner Losh wrote:


On Tue, Feb 6, 2018 at 3:13 PM, Dan Stromberg <drsalists@gmail.com> wrote:
5) I think FreeBSD's ports and similar huge-source-tree approaches
didn't work out as well Linux developers contributing their changes
upstream.

I think you confuse what ports was supposed to do. It was supposed to be "make these patches NOW to make the software available to users" paired with "submit the patches upstream to ease future support burdens". But the latter didn't happen often enough at times, especially as people moved on from the FreeBSD project and complex software became unsupported. It's really no different than what all the distributions have to do on Linux, but had a different bias for forcing the question than FreeBSD did in the early days. That's largely changed, and has mostly worked out....

The bigger issue with 'large trees' is that there was no convenient, binary packaged way to subset. Having everything in one tree avoids much of the version chasing that you have with Linux packages that the package set maintainers have to grapple with...

I can give a hardy "second" to this statement.  Having to maintain some non-trivial in-house packages on Linux distro's as well as on FreeBSD really drove this point home for me.  For example, the LOE was tremendous to support a Python version which was not supported by RedHat for example, not to mention the ongoing effort to keep the primary packages and their dependencies up to date was a major challenge as well.  Working on the ports tree was much nicer in this regard as it allowed me to reuse work done by others.

Having said that it certainly feel that since FreeBSD did not have a good story precompiled package management (as opposed to yum, apt, etc.) was a real detriment to wider adoption to aspiring hackers.  Between pkgin/pkgsrc and the new pkg too in FreeBSD I feel they are much better positioned for people who just want to install software and get to the job at hand.

-pete

-- 
Pete Wright
pete@nomadlogic.org
@nomadlogicLA