LWN: Comments on "Defending copyleft" https://lwn.net/Articles/719610/ This is a special feed containing comments posted to the individual LWN article titled "Defending copyleft". en-us Wed, 10 Sep 2025 16:46:38 +0000 Wed, 10 Sep 2025 16:46:38 +0000 https://www.rssboard.org/rss-specification lwn@lwn.net Defending copyleft https://lwn.net/Articles/722037/ https://lwn.net/Articles/722037/ flussence <div class="FormattedComment"> It's a shame copyleft-next isn't getting more appreciation. It's rare to see a FOSS license that tries to be thorough and is also written to be read by human beings.<br> </div> Sat, 06 May 2017 10:19:49 +0000 Defending copyleft https://lwn.net/Articles/721845/ https://lwn.net/Articles/721845/ mjg59 <div class="FormattedComment"> <font class="QuotedText">&gt; Android phones still have a signed bootloader because they're worried about "evil maid attacks" (somebody gets your phone for 5 minutes and roots it and you can never tell). GPLv3 says the maid has to be able to install their software, so GPLv3 code will never ship on android or anything like it.</font><br> <p> Plenty of Android phones (including those made by Google) can be configured to boot either arbitrary code or code signed with different keys. I don't think security is the reason here.<br> <p> (Disclaimer: While I work for Google, I'm not involved in Android development or phone design and don't have any particular insight into the above matter)<br> </div> Thu, 04 May 2017 16:07:35 +0000 Defending copyleft https://lwn.net/Articles/721825/ https://lwn.net/Articles/721825/ bkuhn Rob Landley wrote: <blockquote class="QuotedText"><font class="QuotedText">No, I still think what [bkuhn]'s doing is probably useless.</font></blockquote> <p>Rob, I do sincerely appreciate the upgrade in opinion from you (and to be abundantly clear, I'm not being sarcastic here at all). Years ago, you used to say what I was doing was &ldquo;harmful&rdquo;, and then for a while you just said it was &ldquo;useless&rdquo;, and now you say it's only &ldquo;probably useless&rdquo;. I'm fine to agree to disagree at that assessment and we can let long-term history judge whether my and your work in life has been useful.</p> <p>I generally think it's probably impossible for anyone to know for sure if their work has actually been useful when we start talking about the 20-100 year time-frames (that are of most interest to me; I don't care so much about the 1-20 year time frame, as they are fleeting). I try my best to do what is right, and history can and should judge me. More importantly, I'm glad that after our friendly chat at LCA 2017, that you and I aren't at odds anymore, and we're content to leave each other alone to do the work we each feel is right. Thanks for that!</p> <blockquote class="QuotedText"><font class="QuotedText"> he's not an embedded developer and doesn't really understand the problem space, therefore it must be simple </font></blockquote> <p>I have embedded development experience, and I do understand the problem space. As you know, enforcement efforts that I have been involved with have launched multiple embedded projects (e.g., OpenWRT and SamyGo), precisely because, through GPL enforcement (and sometimes lawsuits), we assured release of the &ldquo;scripts used to control compilation and installation of the executable&rdquo; that GPLv2 requires. Embedded developers, no matter how skilled, need that to build and install software successfully. Of course, anything can be reverse engineered, and a good embedded developer can often reverse engineer the build process, but GPLv2 was specifically designed to assure developers need not reverse engineer to make use of the source code.</p> Thu, 04 May 2017 13:10:32 +0000 Defending copyleft https://lwn.net/Articles/721809/ https://lwn.net/Articles/721809/ aggelos <blockquote>What's the point? Android phones still have a signed bootloader because they're worried about "evil maid attacks" (somebody gets your phone for 5 minutes and roots it and you can never tell). GPLv3 says the maid has to be able to install their software, so GPLv3 code will never ship on android or anything like it.</blockquote> <p>I won't debate Google's motivations for not wanting to have GPLv3 code on Android, other than to say there are alternative narratives that do not rely on "market demand for anti-evil-maid measures ever since Google got into the smartphone OS business". That said, the GPLv3 does not say that anyone with physical access needs to be able to modify the software; only that the user needs to be provided with the appropriate "Installation Information" to be able to install and execute modified versions of the software on their device. If you have a different interpretation I'd be interested in hearing about it. Otherwise, this feels like a misrepresentation.</p> <blockquote>Back then the GPL was synonymous with copyleft but since GPLv3 split copyleft into incompatible warring camps, there _is_ no "the GPL" anymore. The kernel and Samba can't share code and QEMU can't accept code copied from either project. Since then CDDL resurfaced, people are licensing code creative commons, there's a GPL-next project... It's https://xkcd.com/927/ and unlikely to end well.</blockquote> <p>GPL-next is not a thing. Copyleft-next (no FSF affiliation) is (was?) an experimental work that, last I checked, was adopted by a grand total of one project (though I haven't checked in years, their mailing list activity was sparse and has become sparser). In any case, it seems to me like accusing a developer for community splitting because they have a research branch in their copy of your repo :-)</p> <p>There's a lot to be said for avoiding needless barriers to the exchange of code. Needless being the operative word here.</p> Thu, 04 May 2017 08:28:43 +0000 Defending copyleft https://lwn.net/Articles/721801/ https://lwn.net/Articles/721801/ landley <div class="FormattedComment"> <font class="QuotedText">&gt; According to Kuhn, that idea is based on a misunderstanding,</font><br> <font class="QuotedText">&gt; which he and Landley resolved at linux.conf.au 2017.</font><br> <p> No, I still think what he's doing is probably useless. I just now understand that he was never _trying_ to get code upstream into projects, so he can't have failed at a goal he didn't attempt.<br> <p> As far as I can tell, Bradley's trying to get build and install instructions because he's not an embedded developer and doesn't really understand the problem space, therefore it must be simple. (I watch videos like <a href="https://www.youtube.com/watch?v=8KNZsNTPlec">https://www.youtube.com/watch?v=8KNZsNTPlec</a> and marvel at those guys.) Remember the GPLv2 vs GPLv3 argument about anti-tivoization? My understanding is that bradley's ONLY interested in the anti-tivoization part. Not in advancing the project's actual development. What's the point? Android phones still have a signed bootloader because they're worried about "evil maid attacks" (somebody gets your phone for 5 minutes and roots it and you can never tell). GPLv3 says the maid has to be able to install their software, so GPLv3 code will never ship on android or anything like it.<br> <p> Way back when I inherited the busybox Hall of Shame, I launched GPL enforcement suits to try to get code upstream into busybox. I ran an experiment which empirically showed that lawsuits did not add useful code to the project, and then I tried to shut them down and couldn't because other people had other agendas. Here's an interview I gave at the time explaining that busybox developers like Glenn McGrath trying to do their _own_ GPL enforcement were burning out and leaving the project, and over at gpl-violations.org Harald Welte had given up on actual development to focus on license enforcement. I was partly trying to do it to protect the remaining busybox developers from burnout:<br> <p> <a href="https://www.linux.com/news/sflc-files-gpl-lawsuit-behalf-busybox-developers">https://www.linux.com/news/sflc-files-gpl-lawsuit-behalf-...</a><br> <p> Back then the GPL was synonymous with copyleft but since GPLv3 split copyleft into incompatible warring camps, there _is_ no "the GPL" anymore. The kernel and Samba can't share code and QEMU can't accept code copied from either project. Since then CDDL resurfaced, people are licensing code creative commons, there's a GPL-next project... It's <a href="https://xkcd.com/927/">https://xkcd.com/927/</a> and unlikely to end well.<br> <p> For my own projects I've switched to public domain equivalent licensing, and got 0BSD (Zero Clause BSD) approved by SPDX. I haven't done a proper writeup on that, but here's two long emails I exchanged with somebody about it last month:<br> <p> <a href="http://landley.net/notes-2017.html#26-03-2017">http://landley.net/notes-2017.html#26-03-2017</a><br> <a href="http://landley.net/notes-2017.html#27-03-2017">http://landley.net/notes-2017.html#27-03-2017</a><br> <p> Rob<br> </div> Thu, 04 May 2017 07:16:30 +0000 A view from the "other side" https://lwn.net/Articles/720408/ https://lwn.net/Articles/720408/ giraffedata <blockquote> because in that case you don't need permission from Harald Welte; the GPL gives you that permission already. </blockquote> <p> That's permission from Harald. Permission has to come from the copyright holder. Harald distributes a document that contains the GPL text, which says to anyone who should read it, "If you distribute certain source code, I permit to you to distribute my object code." That's how GPL licensing works. If you can't prove in court that the words of the GPL came to you from Harald, you have no defense to Harald's claim of copyright infringement. <p> So Harald's claim in his lawsuit was, necessarily, "You distributed my code without my permission." <blockquote> language in the GPL (section 5 of the GPLv2) that says that you don't get to distribute his work except under the GPL </blockquote> <p> There is no such thing as a copyright license that says you <em>don't</em> get to distribute work. Section 5 doesn't even have legal effect; it's just a statement of the licensor's interpretation of copyright law, and maybe the licensor's intent (not binding) not to license the work any other way. It gives the reader the perspective to make sense of this theretofore unusual copyright license. Wed, 19 Apr 2017 16:29:47 +0000 A view from the "other side" https://lwn.net/Articles/720366/ https://lwn.net/Articles/720366/ anselm <blockquote><em>By the way, you weren't sued for not distributing source code - you had no obligation to do that, and Harald knows that. You were sued for distributing the object code. Harald claimed to have copyright in that object code and that he hadn't given you permission to distribute it.</em></blockquote> <p> Distributing the object code is not a problem if you're distributing the source code, too (at cost, in the preferred form for modification, etc.) – because in that case you don't need permission from Harald Welte; the GPL gives you that permission already. Harald's contention is presumably based on language in the GPL (section 5 of the GPLv2) that says that you don't get to distribute his work except under the GPL, so distributing object code without fulfilling your obligations under the GPL is breaking copyright. </p> <blockquote><em>People shouldn't get it in their heads that a person can impose obligations on another person just by giving him some software with a copyright license attached.</em></blockquote> <p> Simply giving somebody some software doesn't create any obligations that the person would not already have been under, given copyright law. (The GPL explicitly does not cover <em>use</em> of software published under it.) What a license like the GPL does is give somebody <em>permission</em>, under certain conditions, to do various things relating to <em>distribution</em> of the software that would otherwise, by default, be forbidden by copyright law. </p> Wed, 19 Apr 2017 11:51:32 +0000 A view from the "other side" https://lwn.net/Articles/720162/ https://lwn.net/Articles/720162/ pombredanne <div class="FormattedComment"> rakoenig wrote:<br> <p> <font class="QuotedText">&gt; There are tools like Fossology around but at the moment for me Fossology seems like a </font><br> <font class="QuotedText">&gt; file parser that hunts for keywords like "copyright" or "license" and just checks your</font><br> <font class="QuotedText">&gt; sources, but not the runtime libs. </font><br> <p> You may want to check tow tools of mine: <br> <p> - <a href="https://github.com/nexB/scancode-toolkit/">https://github.com/nexB/scancode-toolkit/</a> is a modern alternative to Fossology. It does a bit much more and also looks into binaries. Upcoming features include more advanced analysis of binaries with some GSoC projects: <a href="https://fosdem.org/2017/schedule/event/whats_in_your_binary/">https://fosdem.org/2017/schedule/event/whats_in_your_binary/</a><br> <p> - <a href="https://github.com/nexB/tracecode-build">https://github.com/nexB/tracecode-build</a> is a build tracer. One of the applications is to get a detailed knowledge of which files are linked statically or dynamically. I presented it at FOSDEM: <a href="https://fosdem.org/2017/schedule/event/whats_in_your_binary/">https://fosdem.org/2017/schedule/event/whats_in_your_binary/</a><br> <p> /HTH<br> </div> Sun, 16 Apr 2017 17:54:44 +0000 A view from the "other side" https://lwn.net/Articles/720137/ https://lwn.net/Articles/720137/ giraffedata By the way, you weren't sued for not distributing source code - you had no obligation to do that, and Harald knows that. You were sued for distributing the object code. Harald claimed to have copyright in that object code and that he hadn't given you permission to distribute it. <p> There's a difference. People shouldn't get it in their heads that a person can impose obligations on another person just by giving him some software with a copyright license attached. Sat, 15 Apr 2017 20:03:15 +0000 Defending copyleft https://lwn.net/Articles/720089/ https://lwn.net/Articles/720089/ flussence <div class="FormattedComment"> I don't think ditching Google would be a loss for Linux, quite the opposite. All I really observe from the outside is that they develop huge subsystems in secret and throw them over the wall in staging/ to sit for years. They've created a steady revenue stream for software pirates and other user-screwing companies that really deserved to go bust a long time ago (pretty much anyone who manufactures ARM SoCs).<br> <p> Thanks to them we now have a billion internet-facing devices running blobbed, unfixable, barely maintained Linux 3.x in the wild. All credit to LineageOS here, they're the only ones trying to clean up Google's planet-wide oil spill.<br> </div> Fri, 14 Apr 2017 19:34:07 +0000 A view from the "other side" https://lwn.net/Articles/720038/ https://lwn.net/Articles/720038/ farnz <p>To the first, that's a conditional grant of distribution - taking away the verbosity it's "if you're producing free software, then I want you to be able to distribute my code, too"; what about it makes you think that an author using such language wants you to use it as a component in your proprietary product (even if that's legal)? <p>You're forgetting the compulsory audits that come with a proprietary codec, too; you must be able to produce full source and build system (and demonstrate that you can rebuild it from scratch) for any version of firmware that you've ever shipped for a long duration (last one I saw said 5 years) after you ship the last unit of a device - and note that this means that if you ship the same device for 3 years, but only ship the original firmware for 3 months before replacing it, you have to be able to reproduce the original firmware for 8 years, even though you've not shipped it for 7.5 years. <p>So no, I disagree that it's easier than the GPL; for the last fully proprietary codec I dealt with, it's harder in every respect, and the obligations last longer. This differs with commodity implementations of standard codecs (like a H.264 codec), where they're aiming to make it easy as long as you give them money, but in the open source world, that's the equivalent of choosing BSD licensed code instead of GPL licensed code - choose what works for you. Fri, 14 Apr 2017 07:01:03 +0000 A view from the "other side" https://lwn.net/Articles/720035/ https://lwn.net/Articles/720035/ pabs <div class="FormattedComment"> (2) can be achieved for GPL code too, just ship the source with the binaries.<br> </div> Fri, 14 Apr 2017 05:57:20 +0000 A view from the "other side" https://lwn.net/Articles/720015/ https://lwn.net/Articles/720015/ iabervon <div class="FormattedComment"> On the first point, from the preamble of the GPL (v2):<br> <p> "Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things."<br> <p> They're using a license designed to let you ship their code, so they probably want you to do so. They also want to give your users the ability to change it further. They generally don't want to encourage you to write your own thing that you're not even supposed to give the source of to users, or use a proprietary library instead. A lot of this discussion is about how to maximize the number of people with hardware whose firmware they can make changes to derived from the open source authors' code.<br> <p> On the second point, I've only used proprietary libraries on occasion and not recently, so you'd have a better idea of what they're requiring these days. That still does sound a little easier than the GPL in terms of tracking: you can send out the latest version of the firmware for each device, and don't need to be able to produce the source of the old firmware that shipped on a device with a particular serial number, which is technically required and sometimes desired ("The manufacturer changed the UI in the latest firmware, and I want the old UI back along with the ability to combine that with security fixes").<br> </div> Thu, 13 Apr 2017 23:34:16 +0000 A view from the "other side" https://lwn.net/Articles/720013/ https://lwn.net/Articles/720013/ farnz <p>Firstly, who says that open source software authors want you to ship it in your proprietary gadget? <p>Secondly, who says that proprietary software that they want you to ship is always that easy? The last proprietary codec I was involved in licensing required, among other things, that when they shipped us a new version, we updated the codec for all devices we had shipped in the last 10 years, and offered the upgrade to our customers at no more than the cost of shipping upgrade media - if the device was not field upgradable to the new codec (and, to be fair, they had to fit within pre-specified CPU, RAM and storage limits to invoke this clause), then we were expected to offer a trade-in program at no more than the cost of shipping the devices to and from our offices. <p>The rationale was that the licensor wanted to have just one variant of the codec in the field, and for everyone to have the latest version - thus, instead of having to have a formal spec (as MPEG does, for example), they knew that if they saw behaviour that didn't match the current codec, they could simply tell people to upgrade. Thu, 13 Apr 2017 22:21:05 +0000 A view from the "other side" https://lwn.net/Articles/720010/ https://lwn.net/Articles/720010/ branden <div class="FormattedComment"> "Here's the thing -- When you're incorporating third-party *anything* into your products, you absolutely *need* this sort of process to keep track of what you are using or shipping, regardless if said third-party stuff is copyleft, opensource, or something else entirely."<br> <p> This. Also speaking from the compliance-within-a-big-software-company perspective.<br> <p> Having a comprehensive software bill-of-materials is also important for minor issues like, say, security vulnerabilities.<br> <p> There are many reasons not to account for the components used in software construction.<br> <p> In the commercial environment, all of those reasons are bad.<br> </div> Thu, 13 Apr 2017 21:09:41 +0000 A view from the "other side" https://lwn.net/Articles/719991/ https://lwn.net/Articles/719991/ iabervon <div class="FormattedComment"> The process for getting approval to ship some code from Microsoft Office is simple: get denied. It doesn't make sense to compare the difficulty of shipping code the owner doesn't want you to ship with the difficulty of shipping code the owner does want you to ship.<br> <p> You should compare with the difficulty of embedding a proprietary codec implementation, where the owner wants to make arrangements for you to do this. That's generally easier for a business to do than legally using an open source codec because: (1) the legal department can rely on contract law, rather than a license grant, because your company is paying the other company, which creates obligations on the owner; (2) all of your company's obligations under the agreement can be satisfied at the time when you ship the product, not going into the future; (3) your company probably has a process in place to prevent distribution of any third-party code, and no process in place to support distribution of the correct third-party code.<br> </div> Thu, 13 Apr 2017 18:14:11 +0000 A view from the "other side" https://lwn.net/Articles/719911/ https://lwn.net/Articles/719911/ xav <div class="FormattedComment"> Bradley, Harald ... all this foreigner names look the same to me :)<br> </div> Thu, 13 Apr 2017 12:00:08 +0000 A view from the "other side" https://lwn.net/Articles/719908/ https://lwn.net/Articles/719908/ farnz <p>Out of interest, what would the process look like if you wanted to ship a few DLLs from Microsoft Office with your product? In other words, what would the policy make you do if you wanted to take part of Microsoft's proprietary code and ship that as part of a device you sell? Note that I'm not talking about shipping the full Microsoft Office product - just a small subset of the code - so it's not as simple as "buy an Office licence and ship that with the device". <p>My experience is that it's harder with proprietary code than with FOSS - proprietary companies don't like you splitting their product up like that, and want you to treat it as a giant blob. We've now got a generation of developers who grew up with a mix of pirate software and FOSS available, and who don't expect to have to go through this pain for their personal projects, and who thus don't know how to cope with it when it becomes an issue at work. Thu, 13 Apr 2017 11:45:43 +0000 Defending copyleft https://lwn.net/Articles/719907/ https://lwn.net/Articles/719907/ k3ninho <div class="FormattedComment"> <font class="QuotedText">&gt;In "half a minute" of his reactions, Stallman noted that it would be really nice if the GPL enforced itself. If companies could be brought into compliance without harsh words and actions, that would be great, but it might not be enough. There is a need for visible action so that would-be violators recognize that there are effective actions that can be taken.</font><br> <p> Er, Richard, wouldn't it be neat if there's some sort of digital rights-enforcement hardware that could do the enforcement/management it for you? ;-)<br> <p> K3n.<br> </div> Thu, 13 Apr 2017 11:27:11 +0000 A view from the "other side" https://lwn.net/Articles/719903/ https://lwn.net/Articles/719903/ pizza <div class="FormattedComment"> <font class="QuotedText">&gt; I'm a software developer and not a lawyer so this is sort of a bureaucratic monster for me.</font><br> <p> Here's the thing -- When you're incorporating third-party *anything* into your products, you absolutely *need* this sort of process to keep track of what you are using or shipping, regardless if said third-party stuff is copyleft, opensource, or something else entirely. <br> <p> Speaking personally, even the supposedly onerous requirements of the GPL are outright simple compared to some of the requirements of proprietary licenses I've had to deal with. Source code segregation -- to the point where separate revision control servers (and even *developers*, because "IP contamination") were required, per-shipped-unit tracking requirements, mandatory audit-everything-at-any-time clauses, and so forth.<br> <p> While I'm all for improved tools to help automate things, identifying the license of a given component is the easy part; ensuring your product properly complies with *all* relevant licenses (and/or corporate "IP" policies) is going to require careful manual review at some point.<br> </div> Thu, 13 Apr 2017 11:11:16 +0000 A view from the "other side" https://lwn.net/Articles/719902/ https://lwn.net/Articles/719902/ armijn <div class="FormattedComment"> I don't think it was Harald who gave that talk ;-)<br> </div> Thu, 13 Apr 2017 10:49:47 +0000 A view from the "other side" https://lwn.net/Articles/719899/ https://lwn.net/Articles/719899/ xav <div class="FormattedComment"> Thanks for the insight from the "other side" - and I share your pain, I've been on both sides, as many of us I guess.<br> But I think the point of Harald's talk was that what was thought to be on "this side" is apparently working for the "other side", and that it's a bit scary.<br> I'd like to know what e.g. Greg has to say about this (I know you read LWN Greg).<br> </div> Thu, 13 Apr 2017 10:08:42 +0000 A view from the "other side" https://lwn.net/Articles/719889/ https://lwn.net/Articles/719889/ rakoenig <div class="FormattedComment"> I work as a software developer for a PC company that once in history got sued by Harald Welte for not providing the sources for a router that they sold. Yeah, got some painful verdict and now everyone is afraid that we one day would get sued again for Billions of Dollars, so legal department has been setting up a very strict internal proces when it comes to the us of Open Source software inside our products.<br> <p> That means, when I develop something that will run on Linux I have to get it through that process. In detail this means:<br> - checking the license of all included components<br> - avoiding GPL'd libraries without LGPL or library exception because that would require to publish our source code which contains company IP in some cases<br> - even checking the licenses of the dynamically linked libraries<br> <p> I'm a software developer and not a lawyer so this is sort of a bureaucratic monster for me. A real pain in the ass, especially when you need to communicate with people that are not part of your software development realm. <br> <p> So I want to make my part in that process as easy as possible, but there I start to get into despair. How do you determine licenses? There are tools like Fossology around but at the moment for me Fossology seems like a file parser that hunts for keywords like "copyright" or "license" and just checks your sources, but not the runtime libs. <br> <p> On the other hand there is a very interesting project called SPDX which tries to introduce license tags for Open Source software so that the process of parsing for licenses information would be much easier to automate. Despite this project that is linked to the Linux Foundation somehow you don't finde much SPDX license tags in the wild. Go to gnu.org and get the latest sources for glibc and start looking around, there is nothing. <br> <p> Yes, from a software developer point of view I have to confess that I didn't hear about SPDX before I needed to dig for license information because my internal process requested me to do so. <br> <p> So the message from the "other side" is, yes, companies are struggling to be compliant to the license obligations, but its not easy and the Open Souce developers could make this job a bit easier by supporting those toolchains that try to autmate the process. <br> <p> Disclaimer: Speaking for myself in this comment, its not an official statement of my company<br> <p> </div> Thu, 13 Apr 2017 08:23:14 +0000