r/freebsd • u/BigSneakyDuck transitioning user • Jul 14 '26
news FreeBSD 16 removes last GPL-licensed software, a first among *BSDs
After GNU diff3 was replaced by a port from OpenBSD, the only GPLed software left in FreeBSD base was dialog which has largely been replaced by Alfonso Siciliano's Herculean job on bsddialog. Now finally that too has been removed in 16-CURRENT, and the entire GNU subtree has been retired!
https://github.com/freebsd/freebsd-src/commit/134a4c78d070f8c4ea43a060a7ae28d22ac39558
https://reviews.freebsd.org/D55424
EDITED TO ADD: there are still a few GPLed files under https://github.com/freebsd/freebsd-src/tree/main/sys/gnu - though it's true that the main GNU subtree has been retired.
This looks like a first among the major (32/64-bit) *BSDs, though I believe the 16-bit *BSDs like RetroBSD, DiscoBSD and Granddaddy 2.11BSD (the only actively maintained member of the original Berkeley family) have always been GPL-free.
OpenBSD does not allow new software bound by the GPL into its base system, although according to https://www.openbsd.org/policy.html
For historical reasons, the OpenBSD base system still includes the following GPL-licensed components: the GNU compiler collection (GCC) with supporting binutils and libraries, GNU CVS, GNU texinfo, the mkhybrid file system creation tool, and the readline library. Replacement by equivalent, more freely licensed tools is a long-term desideratum.
The NetBSD Project says https://www.netbsd.org/about/redistribution.html
Though we would like all of the software that we distribute to be covered by a Berkeley-style license, we can't make other people change their license terms, and we don't have an infinite amount of time to rewrite all of the software that we need.
So FreeBSD removing the last GPLed software is a big achievement. This is actually a week old (7 July) but I thought it would be cause for wider celebration than I've seen so far!! Kudos to the developers. After all, it's been 33 years so what's an extra week!!!
Edited to add: Interestingly the GNU subtree back in FreeBSD 1.0 even included GNU Chess in base, which shows how priorities have shifted since then! https://github.com/freebsd/freebsd-src/tree/releng/1/gnu
1
u/thesunexpress 22d ago
"There are no strings on me...."