Which reminds me: I think I'll go make some donations in the name of Richard Stallman...
Which reminds me: I think I'll go make some donations in the name of Richard Stallman...
Donating in Theo De Raadt's name would be much funnier.
https://web.archive.org/web/20080225230344/http://blog.unixl...
The BSD2 license tries to legally prevent the existence of the source code without the copyright notice preserved.
The GPL license tries to prevent (1) binary code distributed without matching, buildable source code (2) source code or binary code redistributed in combination with GPL-incompatible pieces, (3) ...
BSD argument: the fewer things whose existence a license tries to prevent, the freer it is.
GNU argument: existence of certain things impinges on freedom; if we curtail their existence, we increase freedom.
The only way in which the GNU argument rings true for me is that users of proprietary software unwittingly create a world in which people who would like to avoid proprietary software are effectively coerced into using it. The choice not to use it exists, but at the cost of being economically or socially disadvantaged in some way.
A software choice that doesn't affect anyone else is strictly personal, even if it is uninformed; it is itself an exercise in freedom. E.g. if someone makes a binary-only screensaver program for GNU/Linux that costs $5.99 (and contains no malware or anything of the source) the choice to use it is of no consequence. If someone likes that screensaver, it's their choice and their $5.99, and it doesn't affect anyone else even in the same household or organization.
There is no obligation to upstream anything after all, you just gotta provide the code if someone asks... And why would you care as a user?
You might want to give out or sell customized devices, adapted to the specific user or deployment. The end user typically only wants the binary, so distributing the source is at best a good-faith-waste-of-time and at worst an opportunity to cause support problems.
The example I'm thinking of is keyboards running QMK firmware-- it's literally customized by editing a bunch of C and recompiling.
GPL violations happen all the time but they rarely get caught.
It's really not. The GPL requirements, AFAIK, only come up if you're distributing binaries and refusing to give source to people when asked (or, in v3, if you stop people from building and running that code). The only situations I can think of where that would even come up are situations where you're no longer acting as a user. So humor me; what exactly could a user do to violate the GPL?
Note that you can find whole textbooks on what constitutes “derivative works”, but in any case it’s much broader than just forking a library. Basically any software that integrates the GPL licensed code (other than integration by way of loosely couples interfaces communicating via other means) is a derivative work.
For example, when your enterprisy application bundles and uses a GPL library to generate PDF’s of some of its data, the enterprisy application as a whole typically becomes a derivative work, which means (11) you must distribute the source of the full application together with any binary distribution of the app and (2) that source must be licensed under GPL.
Joking aside, I'm pretty sure the GNU Manifesto already contains the polite version of his thoughts on the BSDs though.