Preferences

Nobody needed to "brainwash" me into choosing the MIT license for my projects. I choose it because I disagree with the philosophy of the GPL, and think that true freedom requires the freedom for others to make their own licensing choices. You are quite welcome to disagree with that stance, but please cut out the inflammatory language. It's not charitable towards others and it isn't healthy for good discussion.

If the Linux Kernel was licensed permissively, none of the phone manufacturers would've released the source code of their kernel trees.

The GPL is the reason we have Android custom Roms today.

This is probably the biggest and most successful example of utilizing non-permissive open source licensing for the public good - I’m curious why so many places I’ve worked have insisted on avoiding using libraries with GPL licenses in favor of MIT licensed projects, while at the same time hosting all of their services on different flavors of Linux.

It definitely seems like MIT is favored by big corps but at the end of the day, they’ll use GPL licensed code if it’s the best option. Which makes me wonder why it’s so demonized.

Compatibility with proprietary dependencies that the company cannot control. If I'm not mistaken, GPL requires the release of the dependencies' source code too if there are no other implementations around.

I would be happy to hear from anyone who knows about this subject if what I'm saying is correct.

It depended on whether the programs were distributed together. So it wasn't okay to link against OpenSSL for GNU/Linux distributions (although interpretations varied). For a time, this was used to push GNUTLS as an alternative to OpenSSL. But it was generally agreed upon that it was okay to link against CryptoAPI on Windows because you would not distribute Windows code along with your GPL binaries.
That's certainly the FSF's stance, but I don't know if it's been tested.
> I’m curious why so many places I’ve worked have insisted on avoiding using libraries with GPL licenses in favor of MIT licensed projects

Because failing to manage their GPL obligations led to a lawsuit for D-Link followed by a compulsion to release a lot more code than they ever planned to share online, to the company's detriment.

You can pretty much look at the stock value before and after they lost the lawsuit. There was, notably, a big value spike immediately after, but the value then settled down to an average of around 15 a share, markedly below their previous 30 a share.

For some companies, the value is in the proprietary content and using GPL would be shooting themselves in the foot.

I think that a lot of companies stepped back from the GPL when GPLv3 was announced, because it puts some pretty severe restrictions on how you can productize.

The tl;dr is that for any GPLv3 software that you ship, you have to also give your users a way to install a modified copy. If you're trying to ship a secured product, that basically means that you have to give code/rootfs signing keys to your customers. This is a non-starter for many kinds of products that need tamper protection (whether for product, legal, or safety reasons).

The Linux kernel remains on GPLv2, and is still used quite heavily. Most GNU software (coreutils, gcc, etc) moved to GPLv3 and then commercial companies abandoned them in favor of permissively-licensed replacements.

> If you're trying to ship a secured product, that basically means that you have to give code/rootfs signing keys to your customers. This is a non-starter for many kinds of products that need tamper protection (whether for product, legal, or safety reasons).

Fuck that. If it's my device then I want to have control. If I want to violate part 15 of the FCC rules then I'm going to do it and nobody is going to stop me. This paternalistic rubbish has to stop, I'm sure your company would love to retain ultimate control of the thing you've sold me, but that's not compatible with a free society.

Would you feel the same way if we're talking about your car's driver-assistance ECU? If you can change its contents, then so can a remote attacker.
Why do you say "secured" when you mean "tivoized"? That's not actually a requirement for anything to be safe or secure.
> while at the same time hosting all of their services on different flavors of Linux.

That linux uses GPL is entirely irrelevant to the vast majority of uses of it. What hosting services are customizing their kernels with proprietary code?

Lawyers are cautious people, not accepting interpretations. Until courts say otherwise, GPL is too high of a risk to use as a library.
See also, FreeBSD: Plenty of commercial offerings around it, no source for most of them, because the license doesn't require it. For example, there's no source for the Playstation kernels/userlands released by Sony. They only upstream some bug fixes that would be too onerous to keep in their private fork.
> They only upstream some bug fixes that would be too onerous to keep in their private fork.

Are you arguing that more good things would go upstream if it were licensed non-permissive or are you giving an example were it works well enough?

They're privatizing their profits and socializing their losses.

It's not healthy.

That's entirely speculative.

The speculation has merits and makes sense. But is speculative nontheless.

It's not speculation.

In order to build a custom Rom, you need three things: the kernel tree, the device tree, and the binary blobs.

The binary blobs can be extracted from a running phone.

The kernel tree is GPL-licensed, so almost all phones have kernel trees releases, and if they don't you can ask the manufacturer for it.

The device tree on the other hand, is created from scratch for each phone. As such, there is no pre-existing license, and therefore no legal obligation to release device tree sources, so almost no manufacturer does. The only notable exception is Google with their Nexus and Pixel phones. (But this has stopped since with the Android 16 release)

We can safely assume that the manufacturers that don't release the device trees, wouldn't have released kernel trees if they weren't obliged to.

To go into more details:

The device trees are relatively easy to make. So, their absence doesn't represent a big hurdle. See for example https://xdaforums.com/t/guide-how-to-make-a-device-tree-for-...

But adding support for a device to the Linux Kernel requires _huge_ reverse-engineering efforts. This is why there's still no fully functional Android build for iPhones.

> In order to build a custom Rom, you need three things: the kernel tree, the device tree, and the binary blobs.

And a license to use the binary blobs for that purpose. Is it a given that doing that is allowed?

IANAL; but - jurisdiction dependent.

Some have "interoperability exceptions" - so if you have been granted a license to something, you can reuse it in different context (so for instance you could run Microsoft Office on WINE even if Microsoft's license forbids it).

Some have restrictions on redistribution (but the builds just using the blobs from the old filesystem are fine).

A lot of that is in the gray area, and for that very reason many builds don't actually redistribute blobs - they extract and reuse them live.

Not at all. We have a lot of experience with this with such licenses and other software. BSD as just one example. Not only do we have a pile of emperical evidence, it's also a priori obvious: they're not going to expend any effort or take any risk if its not neccessary. They can just benefit without paying.
Easy see the upstream contributions from any commercial vendor that has integrated BSD into their UNIX flavours, or the alternatives that exist nowadays for embedded FOSS operating systems, none of them GPL.
I can get the source of the kernel, including all drivers, running on my android phone with a few clicks and build a custom ROM.

Where can I get the source of the exact kernel running on iOS devices, including all drivers?

How about the Playstation 4 or 5? Where can I get the source of their FreeBSD fork?

> I can get the source of the kernel, including all drivers, running on my android phone with a few clicks and build a custom ROM.

No, most drivers are closed source and you can just extract binary blobs for them. They run as daemons that communicate through the binder ipc - Android basically turned the Linux kernel into a microkernel.

"If i stop eating, ill die" is also speculative. Do we have validate everything like we were born yesterday?
It's the tolerance against intolerance paradox, basically. The freedom to take away freedom. I'm leaning towards not giving that freedom, but it's complicated.
A good example of that is Apple moving from bash to zsh, because bash moved to GPL 3 which prevents locking down devives. It was very specifically because they wanted the freedom to take away their users' freedom.
I will say here something I have said and has proved unpopular before. The complexity is mainly something of scale. I would propose more permissive MIT style licensing for small companies, and something stricter for larger companies. It is hard to enforce (which was the main complaint I got), but it's not impossible and I think it is better than the current state of affairs.
This may already exist in practice.

Large companies will self-enforce, as they already do with GPL and "open" LLMs that are dual licensed by company size. Small companies don't care either way and are hard to enforce, so that works.

Any pointers to open/closed vendors and projects which use this kind of honor system?

EU CRA has "commercial use" definitions to differentiate OSS contributors and OSS consumers.

Not that I know of, but there are many subscription services that are based on institutional size / income, and they are more often than not self-certifying.
Despite anyone's personal views, it's undeniable that corps favour a Free they can use as they wish. It's also fairly evident that they make this favour known through their culture. Brainwashing may be a bit far, but only just.

All for naught, I fear, while LLMs consume all and regurgitate license-free to vibe-coders everywhere.

Then you care about a different kind of freedom than GPL proponents: licensing freedom, rather than user freedom, basically. There is no 'true freedom', as it comes down to the point of view; no licence will give you both at the same time.
User freedom isn't really that though. It's corporate goodwill. If a company uses GPL code and doesn't release it what is the enforcement mechanism? A lengthy court proceeding that can go either way and will likely bankrupt the less wealthy party. Or if they are in another country they can tell you to piss off and you have no way of getting the code. We see this all the time with China. In essence, they are the same but one allows you ask nicely and hope that the corporation is feeling generous.
> true freedom requires the freedom for others to make their own licensing choices

You're mixing up freedom and power. See https://www.gnu.org/philosophy/freedom-or-power.en.html for an explanation.

Like tolerance, he irony of freedom is that you cant give others the freedom to limit anyone elses freedom. Thats actually the way to maximize freedom
So what's your rationale for denying recipients true freedom and choosing to shackle them under the terms of the MIT License?
This is an example of a "When did you stop beating your wife" question. It assumes only "true freedom" can stem from a license other than the MIT one without any attempt to arrive at the conclusion that the MIT license doesn't reflect "true freedom."
No, it's not. How old are you?
You may disagree with the overly-derogatory term "brainwash", but I think it is true that corporations have been spreading FUD around coopyleft licenses for a while now, and the balance has tilted toward permissive licenses for new projects.
> You are quite welcome to disagree with that stance, but please cut out the inflammatory language. It's not charitable towards others and it isn't healthy for good discussion.

It is no more inflammatory than the coordinated war that was waged against copyleft licenses on tech fora and social media for more than a decade before hackers started to realize en masse that it was all a ploy to extract free labor from them. There are legitimate uses for permissive licenses and I still use them for those. But the big players certainly pushed them well beyond those cases where they made any sense. More than enough evidence has since emerged that prove this to be the case.

It does no one any favors to deny the presence of bad actors and their malintent behind the utter mess we find ourselves in right now. I find it disturbing that whenever people express their frustration regarding this, there are attempts to shoot them down with accusations of inflammatory language, political correctness, etc. But the truth is that the big players have caused far far more damage than any inflammatory citicism they face for it now. What's actually unhealthy for good discussion is the dystopian censorship of criticisms because the truth make some people uncomfortable. Every bit of harsh criticism they receive here is something they willfully and rightfully earned.

> hackers started to realize en masse that it was all a ploy to extract free labor from them.

There are at least three different groups of people here:

1. Those paid to write permissively licensed software - not free labour.

2. Those who are happy to be free labour. I read a comment by a BSD developer about being very proud and happy to be able to buy a games console that ran on a BSD derived OS.

3. Naive people who are are shocked when someone creates a proprietary fork of their code. It is something that they explicitly gave everyone permission to do, and it is something that has been happening for decades - I can think of Windows using BSD network code in the early 90s, but there are probably much earlier examples. Apple's OSes are very high profile examples since 2001, and Nextstep before that.

The last group have themselves to blame. Did they not take the trouble to understand a legal document? Do they know nothing about the history of their industry? Do they takes steps to stop it - for example by doing releasing updates under a copyleft license?

I agree with you that big players do push licenses that suite themselves, but it relies on either deliberate choice or foolishness by contributors for it to work. I also think copyleft is usually of greater benefit to society.

People being naive doesn't give the bad actors the right to exploit them. That's victim blaming. The responsibility falls squarely on the actors who actively made the unethical/immoral choice.
> What's actually unhealthy for good discussion is the dystopian censorship of criticisms because the truth make some people uncomfortable

I think you're missing the point.

There are developers who prefer MIT not because they're a "big player" or "because truth make people uncomfortable", people simply have different preference for what the ideal license is for their project.

If you cannot deal with that, that sounds like a you problem, but judging by your comments, you're not exactly gonna re-evaluate with a different perspective, since you seem unable to understand others have different ideas and opinions than you.

Others having different ideas and opinions doesn't mean that those ideas and opinions are correct, or that they are beneficial. They might be detrimental to the FOSS movement or to society in general.

So "to each their own" only goes so far.

One can very well accept that other devs/teams have different ideas and opinions && that they can (by law) have such ideas and opinions, but also think that they have them for the wrong reasons, and that they shouldn't have them, and that we'd all be better off if they didn't.

The parent did say

> There are legitimate uses for permissive licenses and I still use them for those.

The parent didn't talk about forcing developers to choose copyleft. And you ignored the stated legitimate reasons for choosing copyleft in most cases if you care about the society.

> I think you're missing the point.

> There are developers who prefer MIT not because they're a "big player" or "because truth make people uncomfortable", people simply have different preference for what the ideal license is for their project.

Did you miss this part in my comment?:

> There are legitimate uses for permissive licenses and I still use them for those.

Or this part from GP's comment?:

> being able to do this is the reason why companies have brainwashed the Internet into ...

Or this part?:

> ... choosing the MIT license for everything

(emphasis mine) All of these imply that the companies did a mass campaign and not individual brainwashing. They also imply that the MIT license is not suitable for everything and by corollary that there are instances where they do apply. All of it are aimed at the companies that resorted to these underhanded tactics. Where does any of these imply that every single use of the MIT license is due to brainwashing? I can't understand how anyone concludes instead that it's all a personal attack on MIT license users (that includes me too).

> If you cannot deal with that, that sounds like a you problem, but judging by your comments, you're not exactly gonna re-evaluate with a different perspective, since you seem unable to understand others have different ideas and opinions than you.

Not only does one have to deal with people reinterpreting others' comments according to their convenience, they also have to withstand guilt tripping based on it. And the irony is that you cite my complaint about the same issue for it!

Agree 100%. I gave up on the GPL before I even knew what exactly it was about because of the zealotry of many of its proponents. I would even go as far as saying that without the FSF, GPL-like licenses would be much more common.
If I zealously advocated for you continue breathing, would you strangle yourself to spite me?
Any half-decent person is going to keep on breathing. It's one of the basic prerequisites of bringing some value to society. Not breathing is selfish and completely misses the point of life. If you're going to exist, then breathe; it's really as simple as that.
ideally -- without a legal system using force to stop people using knowledge (IP laws), -- i would be on your position. in fact, i used to agree with you.

but in the current reality around us, i believe it's a more nuanced issue.

This item has no comments currently.

Keyboard Shortcuts

Story Lists

j
Next story
k
Previous story
Shift+j
Last story
Shift+k
First story
o Enter
Go to story URL
c
Go to comments
u
Go to author

Navigation

Shift+t
Go to top stories
Shift+n
Go to new stories
Shift+b
Go to best stories
Shift+a
Go to Ask HN
Shift+s
Go to Show HN

Miscellaneous

?
Show this modal