I don’t know if the lack of copy left license is the problem as much as the momentum.
The various Unix and BSD wars (that were predicated on a much different licensing challenge) and splintering of the communities has meant there was never a big way for developer or even manufacturer interest to really focus.
OpenBSD has a very different philosophy related to drivers than FreeBSD and for very understandable reasons, most of the BSDs don’t want to use or touch GPL code.
The copyleft nature of the GPL definitely helped Linux, but I don’t think it’s the only reason Linux was successful.
But Linux got its shit together first and was able to benefit from that. Apple and to a lesser-extent, Solaris, show that you can still have broader hardware support and drivers without a copyleft license.
I do think that if companies could easily port their Linux drivers, you’d see that happen. That’s absolutely a consequence of the license choice (and it’s a consequence from either license decision). But if there is a market for the BSDs in a particular area, I do think you see companies making drivers.
The reality is, the market for people running FreeBSD on laptops is pretty small and probably not worth it for a lot of WiFi chipset makers. But if you had a specific industry where FreeBSD was widely deployed, I do think you’d have broader hardware support for things important to that industry, if nothing else.
It is absolutely in their interest to help. But if people expect companies to just write a driver for X operating system, that’s not realistic. And if you could just port the Linux drivers, sure, that would be easier, but it wouldn’t change the fact that device makers still have the be able to prioritize where to put their resources. And laptop FreeBSD users is probably really low on most lists.
Linux is not a company or person. It's the people behind Linux who got it together, but sadly BSD folks have left behind.
> Apple and to a lesser-extent, Solaris, show that you can still have broader hardware support and drivers without a copyleft license.
You're comparing Apple (a company, and a FAANG of them no less) with community-driven projects. Apples and oranges, almost literally.
FreeBSD has some contribution from businesses like Netflix and Nginx and those are very welcome, but they have nothing to do with desktop usage. Those have deadlines and budgets, features get implemented and tested. That's why FreeBSD has superb network stack, good NUMA support, files from disk to nic go brrr. That's why the move to OpenZFS was so fast.
Then, they're contributions without company backing it. This is where desktop feature live. That's why FreeBSD's Wi-Fi stack is stuck on 802.11g - no company depends on this. GPU drivers stuck at Linux 5.4 level - no company cares about it[1]. Those get discussed to death - there is no deadline, no money.
Note, that solution to graphics card driver is to use Linux's drivers, so they don't shy about GPL. However, FreeBSD folks LOVE to bikeshed and polish things. This is why PR to port linux 5.11 drm was open when 5.11 was already EoL for an entire year. Instead of "just" porting 5.11, they decided to refactor how things are done. There are like 3 people working on that PR. It still not merged and not even in review yet.
[1]: Bless Nvidia for having FreeBSD driver available. Would be nice to have CUDA too...
What I would like to see however is maybe some specific wifi chip or USB/thunderbolt Ethernet adapter that is certified to work well with FreeBSD - for testing purposes and as a mobile network tool it would be useful to have a laptop running FreeBSD in a VM that could communicate over that dedicated piece of hardware. This would make it super convenient to test a bunch of physical hardware or do all kinds of other infrastructure work while remote.
Pretty sure any “port” of Linux drivers would be in effect a substantial rewrite, for the dissimilar kernel structures and coding standards.
FreeBSD enables these companies to exist and while consumer grade drivers are not available, many things in FreeBSD are rock solid. Thanks to commercial contributions.
[1] https://i.redd.it/2omcrsz8ut691.png
* i am aware how in todays time you shouldn't, updates, and blah blah. But not required.
Why should we all do free work for corporations? At least with the GPL you can negotiate a commercial license in exchange for money, but with a permissive license you forfeit your ability to do that.
This article accurately sums up my point of view: https://lukesmith.xyz/articles/why-i-use-the-gpl-and-not-cuc...
Also, the GPL does not require you to share the source code for programs that you do not distribute outside your company.
>At the end of the day, though, what does it matter? What is a totally unenforced GPL? It's just a Cuck License—Isn't that what license cucks want? So why should they care? At their very best, BSD and MIT licenses are only what GPL might be at its very worst.
>The GPL is a permanent liability for any company that crosses it. Some companies might be so bold to lift GPL code and hide it, but there is always a risk and a worry that prevents its general violation.
which will be less feasible if people don't contribute to permissive projects in the first place, and basically serve as free labor for corporations to take advantage of.
> or they will roll their own (probably lower quality) proprietary version
this will cost them time and money to produce, putting them at a disadvantage compared to their competitors.
>Or they'll pull an nvidia and release some hacky shim/workaround that breaks all the time and leads to bad user experience.
nvidia can pull that off with linux because pushover operating systems like BSD give them the leverage to make those sorts of demands of the linux ecosystem. If linux sues nvidia or makes the driver/shim incompatible that's fine by nvidia- they will be mostly content with to tell their userbase to switch over to BSD so they can distribute a closed-source driver. They can do this to the extent that BSD is a workable replacement for linux, so all work on BSD is really just leverage against the linux GPL.
If there were no feasible permissive competitors to linux, then linux developers would be quite free to make demands of companies who would be forced to comply with the GPL or write their own OS from scratch.
That is quite the assertion given that FreeBSD is much smaller than linux, which is already much smaller than windows. Honestly kind of laughable, FreeBSD is so small and insignificant, it's just an afterthought of an afterthought for companies, the only reason those drivers exist is because it's a minimal amount of extra work for them since they already have the linux drivers.
It would take a massive amount of work and nurturing to create a FreeBSD community large enough for it to become a palatable option for most linux users. Not to mention FreeBSD doesn't even have CUDA support, so nvidia themselves would have to do extra work to make it happen (probably other features too, that's just the main one that bit me). As for shims, linux already breaks them all the time, that's why everyone hates nvidia on linux. But that doesn't stop nvidia from doing it.
> If there were no feasible permissive competitors to linux, then linux developers would be quite free to make demands of companies who would be forced to comply with the GPL or write their own OS from scratch.
nvidia is already complying with the GPL. And no, if they wanted to skip shims they wouldn't be forced to write their own OS, they would just force their users to use windows. This comparison makes no sense.
There is nothing to disagree here.
You're shoving in GPL ideology where none was asked for. No one is asking to do free work for corporations; this is a flimsy straw man. You're welcome to do what you feel, I was stating the fact that FreeBSD has done the world a lot of good. That's hard to refute even in the worst of assumptions. And that's not saying anything about GPL. It has its place.
I personally regard copyleft as a severe curtailing of options and equate it with being forced to adopt a narrow, ideological worldview. Worse, the GPL perpetuates the fundamental atrocity of intellectual property law, by hacking it, and therefore intrinsically depending on it; in contrast, the BSD and MIT licenses are mostly a liability waiver under an assertion of attribution, ultimately creations more of necessity than ideology.
In the context of abjuring exploitative corporations, I hear an echo of trade unionism, a movement often oblivious to its own reinforcement of capitalism, again by depending upon the thing it purports to confront; few entities are more aligned with the moral sentiments of Adam Smith than a trade union engaged in collective bargaining. And so it is with the copyleft licenses and their implicit support for enforceable intellectual property rights.
The article linked appears to be derogatory, emotive, riddled with false equivalences, and relies on invective as a substitute for rhetoric. Rather than finding it compelling, it think it describes a myopic, narcissistic view of both intellectual advancement and the value of unfettered contribution.
So the reason we are not seeing say open CUDA drivers from NVIDIA for Linux is that they instead distribute closed ones for permissively licensed operating systems such as FreeBSD, OpenBSD, Illumos, MINIX, Plan9, etc.? Which (apart from all lacking CUDA drivers) all universally have less support from hardware manufacturers both when it comes to open and closed drivers across the board? ERRNOLOGIC.
You are aware that FreeBSD got closed NVIDIA graphics driver support about a decade after Linux? It is also the only operating system with a permissive license that I am aware of NVIDIA ever supporting.
Alternatively, are you trying to refer to that some game consoles used FreeBSD as a basis and had proprietary NVIDIA drivers written for them? You are aware that there is nothing stopping them from doing exactly the same thing with Linux?
You are free to believe in “licensing magic” being a solution as much as you want, but I think that you will find that it all has much more to do with what NVIDIA is ultimately all about: Shipping as many cards as is humanly possible while maintaining a borderline monopoly maximising profits.
Ahem, https://cgit.freebsd.org/ports/commit/?id=94fc89fbfbc7cd8886...
> some game consoles used FreeBSD as a basis and had proprietary NVIDIA drivers written for them
You mean proprietary AMD drivers? (Only PlayStation 4 and 5 are based on FreeBSD.)
See https://en.wikipedia.org/wiki/Comparison_of_open-source_wire...
The driver layer (code around firmware that initializes the hardware and marshals/unmarshals comms to/from the device).tends to be GPL lest it taint the kernel. The firmware on the other hand, is the last unconquered vestige of the Open Source landscape. Logic locking, and the prevalence/nature of fabless semiconductor IP tends to make that endeavor incredibly difficult.
It is really hard to have a complete personal computer on Linux or any other OS that doesn't require closed source / proprietary binary blobs.
Now I run OpenBSD, and I could purge /etc/firmware with no issues if I wanted.