5 ms·
Oy, this guy again? For those unaware, Florian Mueller has made a mini-career of spreading anti-FOSS and anti-Android propaganda. > Google copied 2.5 megabyt
by jmillikin 16y ago
Oy, this guy again? For those unaware, Florian Mueller has made a mini-career of spreading anti-FOSS and anti-Android propaganda.
> Google copied 2.5 megabytes of code from more than 700
> Linux kernel header files with a homemade program that
> drops source code comments and some other elements, and
> daringly claims (in a notice at the start of each
> generated file) that the extracted material constitutes
> "no copyrightable information".
In the US, APIs are typically considered mere specifications, and cannot be copyrighted. You can copyright a particular encoding of an API (eg, a C .h file), but the API itself can be used by anyone. If APIs could be copyrighted, projects like Wine and Mono would be illegal.
Whether Google's libraries are considered derived works will depend on how the tool works. If it just regexes out all the comments, then the result is probably a derivative work. If it parses the headers and then outputs the API information, the output is probably not a derived work.
> The GPL's copyleft nature requires all derivative works
> of a GPL'd program to be made available on the same
> terms.
Wrong; the GPL requires any derivative works to be under a compatible license. If I copy GPL-licensed code into my BSD-licensed library, none of my code has to be relicensed.
> If Google is proven wrong, pretty much that entire
> software stack -- and also many popular third-party
> closed-source components such as the Angry Birds game
> and the Adobe Flash Player -- would actually have to be
> published under the GPL.
Completely and egregiously wrong. Unless these programs are actually copying parts of the kernel into their source, they are not derived works.
Come on, this is software copyright 101. Copyright doesn't propagate from a library to its clients; otherwise, every Windows application is infringing Microsoft's copyrights, every iOS app is infringing Apple's, etc.
> The only realistic way to fix the problem: replace
> Bionic with glibc
How would this help? According to the author's reasoning, glibc is also an illegal derivative work of the Linux kernel. Any application which infringes if it uses Bionic will also infringe if linked against glibc.
The rest of the post is a bunch of doomsday scenarios, all built on the incorrect assumption that running proprietary software on a Free kernel/libc is illegal.
- arst 16y agoIf I copy GPL-licensed code into my BSD-licensed library, none of my code has to be relicensed. Yes it does, that's a pretty central feature of the GPL. See section 2.b. of the GPL (v2): b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.
- JulianMorrison 16y agoIt hasn't been re-licensed. It's just not lawful to distribute.
- jmillikin 16y agoYou forgot the very next paragraph: These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. In other words, my code remains mine. I still control the copyright to it, and do not have to relicense it.
- arst 16y agoThose conditions don't apply because Google is accused of distributing a derived work. If Google is distributing a work derived from GPL'd code then they can only distribute that work under the terms of the GPL. There's a lot of debate over whether what Google's distributing can actually be considered a derived work, but that's a separate question entirely.
- anon1385 16y ago>In the US, APIs are typically considered mere specifications, and cannot be copyrighted Linus disagrees that the Linux headers are not copyrightable: http://lkml.org/lkml/2003/12/5/13 http://lkml.org/lkml/2003/12/5/13 Do Google strip out the inline functions? I don't think even the most ardent Google defenders can say that inline functions are not copyrightable. >If I copy GPL-licensed code into my BSD-licensed library, none of my code has to be relicensed. If I now want to use your BSD-licenced library surely I am bound by the terms of the GPL, since it includes GPL code. That parts that you wrote are still under the BSD, but the restrictions on use of the overall library will include the GPL terms. Otherwise just inserting a single line of BSD code into a fork of a GPL project would be enough to bypass the GPL. >Completely and egregiously wrong. Unless these programs are actually copying parts of the kernel into their source, they are not derived works. So linking proprietary binaries to GPL libraries is legal? Everything I have heard has indicated the opposite, that linking to GPL libraries makes your binary into a derived work (the reason the LGPL exists). I would be very interested in knowing if this is the case or not. >According to the author's reasoning, glibc is also an illegal derivative work of the Linux kernel Yes, this issue does seem contradictory. >all built on the incorrect assumption that running proprietary software on a Free kernel/libc is illegal It appears to me to be built on the assumption that Linux header files are copyrighted and under the GPL. Your comment is contradicting the understanding that a lot of people have of the GPL (including presumably Richard Stallman himself, who saw the need to create the LGPL).
- tzs 16y ago> Wrong; the GPL requires any derivative works to be under a compatible license. If I copy GPL-licensed code into my BSD-licensed library, none of my code has to be relicensed. Wrong. You can copy BSD-licensed code into your GPL-licensed library with no problem, but GPL-licensed code copied to a BSD-licensed library will have problems. GPL-licensed code into a BSD-licensed library prohibits redistributing the resulting work under BSD. > Completely and egregiously wrong. Unless these programs are actually copying parts of the kernel into their source, they are not derived works. You've missed the point. If the Google de-copyrightizanator (WTF! Apple's spell check did not flag de-copyrightizanator!) has failed, and the header files Google shipped for third parties to use do in fact contain copyrighted code under GPL, then there may indeed be a problem for third parties. Headers files often contain more than just the specification of an interface (which is probably not copyrightable). They often contain actual code, which is copyrightable. That code could end up in applications, in which case they would in fact have a serious GPL problem.
- jmillikin 16y agoWrong. You can copy BSD-licensed code into your GPL-licensed library with no problem, but GPL-licensed code copied to a BSD-licensed library will have problems. GPL-licensed code into a BSD-licensed library prohibits redistributing the resulting work under BSD. You say "wrong", but then argued something completely different from what I claimed. I said: "If I copy GPL-licensed code into my BSD-licensed library, none of my code has to be relicensed." You replied: "GPL-licensed code into a BSD-licensed library prohibits redistributing the resulting work under BSD." These statements are regarding completely separate concepts.
- tzs 16y agoYou were responding to a statement that GPL requires derivative works to be available on the same terms. Since GPL is a distribution license, I assumed you were talking about distribution. If you copy GPL code into your BSD library, and then distribute the resulting library, you MUST distribute that version of the library under GPL. You can continue to make the version that does not contain any GPL code available under BSD if you wish. If you copy GPL code into your BSD library and do not distribute it, then GPL is irrelevant.
- mycroftiv 16y agoYou use both ad hominem ("this guy again? For those unaware, Florian Mueller...") and a strawman argument ("all built on the incorrect assumption that running proprietary software on a Free kernel/libc is illegal.") The claim is not that running proprietary software on a free kernel is illegal. The claim is that by linking to Bionic, which may violate the GPL, the proprietary software might become "derived works" of the kernel.
- jmillikin 16y agoThat's not ad-hominem; ad-hominem is "this guy is paid to attack Free software, therefore his argument is invalid". Merely pointing out an obvious conflict of interest is not ad-hominem. The second statement is not a strawman -- that is his actual (implied) argument. Otherwise, the whole thing about Bionic is completely irrelevant. Bionic's license status only matters to client software if licenses are assumed to propagate across the library boundary. If running proprietary software with a Free libc is OK, then a GPL'd Bionic is no risk to proprietary software linked against it.
- tzs 16y agoThe ad-hominem is implied, since the conflict of interest you claim to have pointed out was made up, hence the only reason to point it out was to imply the argument was invalid.
- kwantam 16y agoAccording to the author's reasoning, glibc is also an illegal derivative work of the Linux kernel. The latter part of your statement doesn't follow from the former, since glibc was written from scratch by its GNU authors. If half of glibc headers were just stolen from the kernel tree, your argument might hold water, but they absolutely were not. glibc is a legal implementation of a Linux-compatible libc. Since it's LGPL, one can legally link non-GPL code against it. The author's suggestion that the only way to make things OK is to switch to glibc is kind of farcical, since it would appear that creating a new implementation of Bionic whose licensing status is on par with glibc would suffice.
- anon1385 16y agoYour line of logic is the following: [glibc includes kernel header] + [glibc is legal] -> [including kernel headers in any non-GPL project is legal] In his comments on this site he has stated that the reason glibc is available under the LGPL is that the headers it uses were added to glibc by the kernel maintainers who held the copyright to them[1][2]. I've no idea if this is true, but it seems to be the crux of the issue, if indeed the headers are covered by copyright as Linux Torvalds believes (unless we are to assume that glibc is also in violation of the GPL). Perhaps somebody familiar with GNU and glibc knows if this is the case. [1] http://news.ycombinator.com/item?id=2337064 http://news.ycombinator.com/item?id=2337064 [2] http://news.ycombinator.com/item?id=2336690 http://news.ycombinator.com/item?id=2336690
- kwantam 16y ago[glibc includes kernel header] + [glibc is legal] -> [including kernel headers in any non-GPL project is legal] Either you're not responding to my comment, or you are misunderstanding me very badly. This is not what I'm saying in the least. I'm saying that if Google were to create a legal interface to the kernel, they would be in the clear. Two apparent ways to do this are (1) have someone who owns the copyright to the kernel header contribute the appropriate portions of your library and give consent to whatever license you choose, or (2) do a clean room implementation of the interface. Google would most likely have to do the second, but they absolutely could do so. Apparently they think they've come up with a third, but it may not be good enough, which leads us to the article that spawned this discussion.