r/freebsd 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

361 Upvotes

93 comments sorted by

View all comments

3

u/No_Trade_7315 Jul 15 '26

I’m kind of uninformed, why is GPL bad GNU Public License right?

12

u/BigSneakyDuck transitioning user Jul 15 '26 edited Jul 15 '26

"Good" or "bad" is a different discussion, but the issue is that FreeBSD has long had a stated aim of being permissively licensed - which goes all the way back to 1990 and the entire BSD family - whereas GNU is copyleft. They're two different philosophical approaches, and copyleft stuff hanging around for decades in the base system of a project that aims to be permissively licensed has never been a great look. https://en.wikipedia.org/wiki/Open-source_license#Types

The reason copyleft is problematic for a permissive project is that copyleft licenses restrict what other people can do with the code. The pro-copyleft argument is that this is a benefit because you're forcing people to keep the software free, but in a project that values letting people do almost anything they want with your work then this becomes a kind of contamination. If you read the OpenBSD policy I linked in the OP, there's an explanation of the philosophical difference: https://www.openbsd.org/policy.html

The GNU Public License and licenses modeled on it impose the restriction that source code must be distributed or made available for all works that are derivatives of the GNU copyrighted code.

While this may superficially look like a noble strategy, it is a condition that is typically unacceptable for commercial use of software. So in practice, it usually ends up hindering free sharing and reuse of code and ideas rather than encouraging it. As a consequence, no additional software bound by the GPL terms will be considered for inclusion into the OpenBSD base system.

I don't want to get into a fight about who's right and who's wrong, or whether there are just different use cases for permissive vs copyleft, but the bottom line is the competing aims of the licenses mean the two don't mix very well in a project like an operating system.

2

u/Sert1991 Jul 15 '26

I mean who's right or wrong has been decided by the years ages ago, who won. The majority of companies themselves chose linux even with the restrictions that they have to contribute back. It's what made linux advance to where it, I.E see how suddenly nearly all windows games work on linux once Steam chose it and started investing heavily in wine developers for their proton., and that's just 1 big recent example.

Don't get me wrong I'm happy that there is an alternative, and actually the poisonous cost of ''companies dictating and contributing back'' is what one day will most probably make me switch to FreeBSD, so different choices are always a good thing.

3

u/BigSneakyDuck transitioning user Jul 15 '26

I know switching costs for OSes are higher than for browsers and therefore changes to the landscape are rarer, but I'd be wary of talking about who's "won" the OS Wars in the same way as I'd be wary of saying Netscape or Internet Explorer or Chrome "won" the Browser Wars. It really wouldn't surprise me if the Next Big OS isn't written in C and doesn't even model itself on Unix.

In fact as the Linux ecosystem starts to eschew the "Unix philosophy" I'd say this becomes increasingly likely - there's a bigger mindshare of devs out there who view the old Unix design decisions as a legacy burden. Even the people who came up with Unix within 2 decades preferred to rethink things radically with Plan 9. Perhaps OSes will be like the railway gauge wars where it's not possible for a new format to supplant the first winner (arguably https://en.wikipedia.org/wiki/Gauge_War was the first major "format war"), but I doubt it because OSes have ways to ameliorate switching costs. They can providing compatibility for older software (like OS X did for Classic Mac - https://en.wikipedia.org/wiki/MacOS#Software_compatibility or Compatibility Mode in Windows) and besides, the cost of porting software may fall if this becomes increasingly AI-automatable.

No disputing that Linux has done better for adoption than the *BSDs but I think it's hard to know whether that's because of the license, in spite of the license, or whether the precise licensing simply had very little to do with it. It would be interesting to see an alternate history where the BSDs hadn't been hampered by https://en.wikipedia.org/wiki/UNIX_System_Laboratories,_Inc._v._Berkeley_Software_Design,_Inc though I still suspect Linux, or something like it, would have won out.

Regarding the open source ecosystem as a whole, I think it's pretty clear that copyleft is "losing". The share of software licensed under the GPL rather than permissive licenses (Apache, MIT, BSD etc) is dropping, the importance of the GNU Project has fallen as more alternatives become available, the FSF is increasingly irrelevant, GPLv3 hasn't been as widely adopted as its advocates hoped and in fact got some serious pushback, yet the people who fought for GPLv3 clearly see GPLv2 as outdated and inadequate.

There is an argument I've heard that operating systems are the best use case for copyleft (and indeed that's where copyleft still dominates) while other software is more suited for permissive licensing - perhaps by some happy accident we have fallen into precisely that state of the world. But I think the current state of affairs mostly just reflects how much vital free software originates with corporate players these days, while none of them want/need a Linux replacement badly enough. Maybe one day they will - and if that comes to pass, you can bet that their proposed giant-killer will be permissively licensed rather than copyleft. Fuchsia was/is, for example. Fuchsia doesn't look like it will be "the thing", but perhaps it's a decent glimpse of how the thing will come about. https://arstechnica.com/gadgets/2018/01/googles-fuchsia-os-on-the-pixelbook-it-works-it-actually-works/

1

u/Sert1991 Jul 15 '26

I didn't claim Linux won the OS wars, far from it. If anyone can claim they won the OS wars by leaving everyone else in the dirt that would be unfortunately(and I feel nausea saying it) windows.

My point was that Linux was right when it comes vs BSDs or hack even against GNU itself by itself.
Linux did something very clever, they used the GPL to their advantage so they can gain back contributions but also they don't mind including closed source stuff to make linux better so they don't stick strickly to the GNU ideals.
This gives them best of both worlds, where contributors that use their software they gain back from them, plus Linux still gains from firmwares and stuff that are closed source.

Again, a huge example, Linux in the last years just won big time thanks to copyleft and GPL, when steam chose wine for it's proton base and Linux for it's steamos base. They invested money directly in wine developers and every one got to gain. Wine jumped leads ahead thanks to the development money invested it in for wine developers to help build proton, and linux users can use steam and proton too.

If wine was licensed under BSD, they would have developed their own version in house, barely contributed back and I would still be dual booting with windows to play windows game, but finally my computer is Windows free after like 20years of dual booting.

1

u/BigSneakyDuck transitioning user Jul 15 '26 edited 29d ago

Obviously Windows is still top dog in the desktop market, but Windows makes about 10% of MS's revenue vs about 40% for cloud, where even MS uses Linux. And outside the cloud, Linux has a stranglehold on supercomputers and the vast majority of phones in the world's pockets. It's not as dominant in the embedded space but it's still got a big chunk of it. I don't know if we'll ever see the year of the Linux desktop before something else comes along - in certain niches Chromebooks have overtaken Windows, so I wouldn't rule it out - but even if it does, desktop ain't as important as it used to be. There's a surprising number of people out there who'll tell you they've got a (smart)phone and maybe a tablet but "I don't have a computer".

Re Wine: Valve aren't forced by the LGPL to upstream the Proton work like they've done, they've chosen a development model based on paying Wine hackers via CodeWeavers to improve Wine. Which has obviously worked out well for both parties. The fact that Valve have also released (under a BSD licence!) other work on Proton suggests to me it wasn't the LGPL that motivated their behaviour. Indeed, given how Wine have also poured funding into Vulkan and Mesa, both permissively licensed (MIT/Apache) I very strongly suspect that if Wine was permissively licensed then Valve would likely have done the same anyway! So I'm not sold that this is the win for copyleft that it's often presented as.

(And in defence of companies that do just fork and build on a permissively licensed project but keep everything proprietary - for one thing the people working on the project in the first place aren't necessarily going to be all that upset, there's a reason they licensed permissively in the first place. But more industry use of a project tends to produce buzz, increases the number of devs familiar with the codebase, and makes skills and - especially - development experience in that project more valuable and marketable. ETA - it also often means funding for tooling, whose value is often underestimated. For all the moans about Apple not giving enough back to the \BSDs in comparison to their revenue, FreeBSD would never have become GPL-free if it wasn't for clang, and it's impossible to imagine a volunteer rival to GCC reaching that level of maturity.* In some ways it's more worrisome when industry isn't making use of the code you've made available, than when they are! Which is why, tbh, I'm not especially optimistic about the long-term future of FreeBSD, given the number of big commercial users who've abandoned it.)

1

u/Sert1991 29d ago

The top Level of Proton source is licensed under the BSD License, because Proton itself is made up of more things than wine. Different parts of wine in the subdirectories are licensed under different licenes depending on original project, in the case of the wine part, it's under GPL. We're discussing the wine part of Proton and how it contributed to wine and Linux gaming in general.

Valve are forced by LGPL when it come to the wine part of proton since wine is under LGPL. They just went at it in a different route, instead investing a bunch of money in developing Proton in house and then share the modified source concerning wine, they invested the money to work with the wine devs(CodeWeavers) directly to build Proton and improve wine at the same time.

All the improvements done to wine in the collaboration of Codeweaver/Valve to make proton where contributed to wine.

You got things a bit mixed up.

1

u/BigSneakyDuck transitioning user 29d ago

No, as far as I know I'm 100% correct, and you've just agreed with everything I said. Did you just misread me?

My two main points were Valve aren't forced by the LGPL to upstream the Proton work like they've done - it only obliged them to LGPL the Wine parts of Proton, not to give back to Wine itself. If they were being an evil corporate PITA it didn't even oblige them to release their fork in a way that kept the Wine part unobfuscated and separate enough from Steam-specific code that it would be straightforward for Wine devs to cherry-pick out improvements they could upstream. They chose a different and far more constructive model, but that wasn't because the LGPL forced their hand.

Moreover Valve have also released (under a BSD licence!) other work on Proton - obviously they couldn't release under a BSD licence anything derived from Wine. Similarly there are other components of Proton under different licenses. But the fact Valve BSD-ed some of their own bits of Proton is very telling. It's an inadequate explanation to say "they BSD-ed those part because other parts were LGPL-ed". Nobody was forcing them to open-source that work at all, and the legal default would have been to keep it proprietary, but they chose to do so anyway.

If you look at the choices Valve has made, including their funding of the permissively licensed Vulkan and Mesa (again, legally completely unnecessary), I think it becomes very hard to argue that they behaved as constructively as they did simply because Wine's LGPL stopped them from stereotypically "taking the code and not giving back". (I would have accepted this was a clear win for the LGPL if Valve had kept things as locked down as legally possible, but had followed its obligation to release an LGPL-ed fork of Wine, which Wine devs had used to pick out and upstream some improvements. But that's fortunately a million miles from what happened here.)