5 ms·
Discussions of copyleft versus permissive licensing always seem to cover the same “freedom for users versus freedom for developers” clichés and the same tired s
by anjbe 10y ago
Discussions of copyleft versus permissive licensing always seem to cover the same “freedom for users versus freedom for developers” clichés and the same tired slavery metaphors.
My dislike of copyleft is emphatically not because I want to enable proprietary software. I hate proprietary software, and don’t use it on my machines.
No, my biggest complaint about copyleft has always been that it prevents other free software from being able to use it. Copyleft licenses actively lead to incompatibility.
Remember when LibreDWG, an AutoCAD file parser, couldn’t be used in various free software CAD projects, because LibreDWG is GPLv3+ and FreeCAD, etc were GPLv2 only? http://libregraphicsworld.org/blog/entry/libredwg-drama-the-end-or-the-new-beginning http://libregraphicsworld.org/blog/entry/libredwg-drama-the-...
If FreeCAD had been under a permissive license, it would have been able to link against LibreDWG. If LibreDWG had been under a permissive license, FreeCAD would have been able to link against it. If they were both under a permissive license, they would have been able to be linked together and share code directly!
How about when NYC released open building and address data? A laudable move, one that helped several open source projects, the largest probably being OpenStreetMap. OpenStreetMap is under a copyleft license, and though they benefit from NYC’s data, due to the licensing NYC can’t make use of OpenStreetMap’s improvements without a convoluted parallel construction scheme: https://www.openstreetmap.org/user/lxbarth/diary/23588 https://www.openstreetmap.org/user/lxbarth/diary/23588
A common response is that the onus is on NYC to release their data under a copyleft license so they can benefit. But there are often significant (even legislative!) barriers to doing that, especially in the United States where government entities are often required to release data to the public domain. How about changing that legislation? Well, if you had initiated such a legislative reform just a few years ago OSM would have been under the Creative Commons BY-SA—which is incompatible with OSM’s current license, the ODbL.
Remember how much grief has resulted from the unclear (or perhaps too clear) licensing status of ZFS on Linux?
Releasing software and data under the freest, most permissive license possible prevents such a thing from ever happening. I would rather allow a hundred Chinese featurephone vendors to lock down their crappy derivatives of my code than use my copyright to prevent a free software project from using my code in good faith.
- cyphar 10y agoI view it as a personal choice for what you find important. Personally, I would prefer that my software not be used rather than it be used in a way that takes away users' freedom. You clearly think differently and are entitled to think differently. Maybe you might consider using the MPLv2? It's a weak copyleft license that allows sub-licensing to other copyleft licenses (and inclusion into lax licensed projects without re-licensing the original project). Unfortunately, it suffers from not being strong enough to cover a "derived work" and only effectively copylefts files. But IMO that's better than nothing.
- 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.