3 ms·
> Personally, I would prefer that my software not be used rather than it be used in a way that takes away users' freedom. But by releasing my library under a f
by anjbe 10y ago
> Personally, I would prefer that my software not be used rather than it be used in a way that takes away users' freedom.
But by releasing my library under a free license that’s incompatible with someone else’s free license, I drastically restrict the ability of people to use my software.
This isn’t an academic limitation—this has a real impact in the real world. Just ask any packager who’s had to deal with “GPLv2 only” versus “GPLv3 or later” incompatibilities. Much free software cannot use the functionality provided by my free library.
I’m not talking about the right to redistribute proprietary derivatives here. I’m talking about that most fundamental of software freedoms, freedom 0: the freedom to run the program as you wish, for any purpose.
- cyphar 10y ago> I drastically restrict the ability of people to use my software. There are no restrictions on usage in any free software license. There are restrictions on distribution of modified versions in the GPL. So you're only restricting the ability of developers to use some code that you've written to make a new program. Is this suboptimal? Yes. Is it necessary? Yes. Any other method of licensing would allow for proprietary forks to be made from your software. Whether you agree that is a problem or not is besides the point -- the purpose of copyleft is to make it impossible for proprietary software developers to create proprietary versions of the software. Unfortunately in reality it happens to also disadvantage some free software developers. There are (soft) solutions to this: always use GPLvX-or-later to future-proof your licensing choices, encourage others to do the same. > I’m talking about that most fundamental of software freedoms, freedom 0: the freedom to run the program as you wish, for any purpose. Users are not encumbered by any of the GPL requirements. If a user just wants to use a program (or give copies to people), they will never encounter license incompatibility. Developers are the only people who have to worry about this, and I would argue "the 'freedom' to create new software under a different license" is more of a privilege than a right. Is it important? Yes. Is it as important as (or more important than) preventing proprietary forks? I don't think so.
- anjbe 10y ago> There are (soft) solutions to this: always use GPLvX-or-later to future-proof your licensing choices, encourage others to do the same. How is this a “solution” to disadvantaging free software developers? LibreDWG was licensed GPLv3-or-later and it didn’t help FreeCAD one bit. If Linux had been licensed GPLv2-or-later it would not have improved the ZFS situation at all. There are many existing codebases under many free licenses out there; new software under any GPL version often cannot be incorporated in those projects, but new permissively licensed software can. > Users are not encumbered by any of the GPL requirements. … Developers are the only people who have to worry about this… “Users,” as you call them, are certainly indirectly encumbered. When LibreDWG provides DWG file parsing, but is licensed in such a way that FreeCAD cannot use it, users cannot use it. And I strongly dispute the distinction that you make. The Free Software Definition doesn’t divide people into groups of “users” and “developers, who are not users.” Someone who links software against a library is just as much a user of that library as someone who runs the code indirectly through LibreOffice. When complicated licenses proliferate and decrease compatibility, it prevents free software from being incorporated with free software. That certainly violates the spirit of freedoms 2 and 3.
- cyphar 10y ago> LibreDWG was licensed GPLv3-or-later and it didn’t help FreeCAD one bit. The problem is that FreeCAD isn't licensed under GPLv2-or-later. But LibreDWG's code can be used under a GPLv4 (when it comes out) license, so at least you don't have two cases of this problem. > it would not have improved the ZFS situation at all. Yes, because Sun intentionally created a GPL-incompatible license and Oracle continues to perpetuate that. What's really troubling is that the Sun folks take it as a point of pride that their license is GPL-incompatible and don't consider it to have been a mistake. > When LibreDWG provides DWG file parsing, but is licensed in such a way that FreeCAD cannot use it, users cannot use it. If we're going to play the "theoretical software that might've been written" game, then I could argue that not copylefting your software also indirectly encumbers users because the users' friends may start using a proprietary version of a free software program that is incompatible. > The Free Software Definition doesn’t divide people into groups of “users” and “developers, who are not users." Developers are users. And developers have the same set of freedoms as users. However, there are certain privileges that developers can also have that don't make sense to users -- those privileges are not essential freedoms under the Free Software Definition. "The right to create a fork under another license" does not appear in the Free Software Definition, no matter how you try to twist it. Developers are allowed to link software against a library under a free license, they just have to follow the license rules. Now, if they (or other developers) have made license choices that restrict them in that department it's not the fault of the license. Is it a shame when that happens? Absolutely. But talking about how lax licenses solve all of these problems (while dismissing the downsides) is just being disingenuous. We have a perfect case study of copyleft working -- the Oracle proprietarisation of OpenSolaris. Had OpenSolaris been under a lax license, Oracle would probably still own the technical talent for Solaris (and it would have become a large proprietary software machine). That didn't happen because of copyleft.