Privatization Means Rebuilds
I still can&#x27;t understand why several BSDs so stubbornly cling to ports as a &quot;solution&quot; to package management. I ran into this problem, and variants of it, over and over again when trying to support FreeBSD in our products, in the past. Though pkgng may resolve some of my problems with package management on FreeBSD (it at least allows third party repositories, the lack of which was a big pain point for me in the past), I haven&#x27;t tried it yet, and from what I can tell FreeBSD still favors ports, and several other BSDs are still using ports exclusively.<p>I&#x27;ve even seen this library mismatch happen on a couple of occasions in a fresh install, where installing a variety of ports leads to one or some of them being broken immediately after install because several packages called for different versions of libraries. And, the longer a BSD system is in service, the more likely some portupgrade, or installation of a new package, is to break some other thing on the system, requiring far reaching rebuilds (and sometimes, manual intervention, because the dependencies specified aren&#x27;t sufficient to allow the system to automatically fix itself).<p>I begin to feel like a broken record saying this again and again, but: ports is a clever tool, but it is not a solution to the problem of package management.<p>There&#x27;s so much to love about the BSDs, but lack of effective package management has always made it a non-starter for any purpose, for me. Effective package management is not esoteric or bleeding edge or experimental stuff, at this point. deb-based systems had apt 20+ years ago, RPM based systems had yum ~12 years ago. Slapping a band aid on the darned thing doesn&#x27;t fix it.<p>And, so many conversations about packages devolve into ports proponents missing the point, and saying, &quot;Well, you can install binary versions of ports, so it&#x27;s fine.&quot; When the availability of binary packages is utterly orthogonal to the problems I&#x27;m talking about (though also a big deal, and building from source on a production system is silly and potentially dangerous).<p>So, I think I need to stop complaining about it, and start asking the right questions of BSD users. Why is ports such a fiercely defended thing when it has so many weaknesses compared to modern package managers? Does pkgng actually solve these problems (I can&#x27;t really tell, it seems to be a meta-package system that still sits atop ports)?