Home > Open Source > Free Software Foundation denies GPLv3 forking risk Free Software Foundation denies GPLv3 forking risk Eugenia Loli 2005-03-24 Open Source 45 Comments Some developers are concerned that the introduction of the third version of the GNU General Public License could split the free software world – but the FSF is confident these fears are unfounded. About The Author Eugenia Loli Ex-programmer, ex-editor in chief at OSNews.com, now a visual artist/filmmaker. Follow me on Twitter @EugeniaLoli 45 Comments 2005-03-24 10:19 pm If I understand it correctly, and I fully admit that I may not, GPL3 will now apply to applications/libraries which are not actually distributed. IOW, the GPL would now apply to such things as web services and distributed (rpc, not media) applications whereas the current version covers only physical distribution. If my understanding actually is the case, I not only will not develop GPL software, I will cease using any software covered under its license. 2005-03-24 10:24 pm Keep in mind while reading this comment that I know little about copyright or contract law. It seems to me that it is less than ideal for the world’s most important GPL software project to be permanently tied to an older version of the license. While the GPLv2 remains perfectly serviceable and is mostly the same as GPLv3, keep in mind that neither license is really proven in court yet. They seem perfectly legal, but some have asserted otherwise. If some legal fiasco in the future irrevocably damages the GPL as it is now, a new version adapting to the new situation may be the only hope. Wouldn’t it have been possible for Linux kernel maintainers to require contributors to contractually sign over to them the right to upgrade the license to a new version of the GPL only? (not actually with pen and paper, but there are forms of digital contract that carry the same weight) I realize that this would be requiring them to give up a Stallman-perfect freedom, but it seems harmless and pragmatic to assume the good intentions of the Linux kernel maintainers and the FSF itself towards the free software movement. Even better, couldn’t that be a provision of some form of the GPL itself? 2005-03-24 10:25 pm What are you talking about? Where was this mentioned about the GPL3 applying to webservices and other non-distrubuted middleware? 2005-03-24 10:28 pm What are the main differences between the GPL3 and the older versions of the license? 2005-03-24 10:29 pm Vincent, The comment comes not from the article but previous postings online and inter-office “analysis” of the GPL’s current development. There have been previous posting of drafts and interviews with R.S. that come across as indicated in my previous post. 2005-03-24 10:31 pm It what sense do you mean this? Are you saying that the GPL will now propogate between applications that communicate with each other via network protocols, as well as applications that dynamically link to each other? I find this HIGHLY unlikely. 2005-03-24 10:35 pm Ah I googled… GPL3 + Web Services Yep. It seems the FSF wants to get at the “loophole” in the present GPL that if you modify code and run it on a publicly accessable server for people to use [not download], they still want you to distribute the source code. This is despite the fact that you technically are not distrubting the binary executable of the program running on the server; your just granting access to its use. This is very interesting. 2005-03-24 10:37 pm No, our understanding is that the FSS sees code that links to GPL but is not itelf physically distributed as problematic. What we’ve taken from a number of comments out of the FSS, particularly R.S., is that if you link to GPL code in, say a web service, then the so-called “ethical” thing to do would be release your web service code under compatable license. Its this type of statement that, if true, will prevent myself and the other developers, at least where I work, from being able to continue to use GPL’d software. 2005-03-24 10:38 pm Yes! exactly! That would be very problematic, I think. I know it would be for me and my team. 2005-03-24 10:46 pm Every message above about what the GPLv3 might contain is speculation at this point. From what Prof. Moglen has said, two main areas of probable change is to adjust some language to work better with non-US law, and to address the problem of patents, but do both in a way that don’t really cause much change. It’s also been proposed that the revised license do something about the “web services loophole”, but it’s not really clear how to do this. 2005-03-24 10:47 pm ah. thanks for answering my question. well, I must admit, I can’t see what the objection is then. This IS a loophole. The ideological goal of the GPL is to make access to the code conditional on whether others have access to your derived code. Share and share alike, to create a community. It excepts undistributed private software out of simple necessity: if it didn’t, it would be far too limiting and impractical. What defines a “release” of the code if it’s private? At what point is one said to have written code? The logical conclusion would require people to develop their code in an environment that makes any character they type immediately available to anyone else. letting people like Google, whose infrastructure really tests the limits of the Linux kernel, add some cool hacks and not give them back to Linus and co. is NOT in the spirit if the GPL. 2005-03-24 10:49 pm Kas_m: The “standard” GPLv2 licensing statement says: “you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.” So anybody using the boilerplate statement is automatically covered by license changes. On the other hand, authors can explicitly specify a particular version of the license (as Linux does). @vincent: It’s not just about publically-accessible servers. It’s quite easy to circumvent the GPL: put the GPL’ed code in a CORBA server, and use RPC to communicate with it from a proprietory program. Given a tool that will generate CORBA interfaces from C headers, this is actually quite easy. Clearly, there is a problem, though I don’t know about the enforcability of any solution to it. Think of a book analogy. Would it be acceptable to run a service where people could dial a number and have a book (which wasn’t licensed for public performance), read aloud to them? It’s really the same situation. 2005-03-24 10:54 pm The objection is this: There’s a huge difference between extening GPL code, and linking against it in a client situation. Now, the LGPL is supposed to cover this scenario approprately but some library authors either mistakenly use the GPL proper or they do it on purpose. We don’t believe there’s anything ‘ethically’ wrong with linking to code that was made freely available without extending it, particularly in a web service scenario because you aren’t “realeasing” code at all but are instead providing code as a service, and so rises the objection. 2005-03-24 11:09 pm “@vincent: It’s not just about publically-accessible servers. It’s quite easy to circumvent the GPL: put the GPL’ed code in a CORBA server, and use RPC to communicate with it from a proprietory program. Given a tool that will generate CORBA interfaces from C headers, this is actually quite easy. Clearly, there is a problem, though I don’t know about the enforcability of any solution to it. Think of a book analogy. Would it be acceptable to run a service where people could dial a number and have a book (which wasn’t licensed for public performance), read aloud to them? It’s really the same situation.” I can understand the case of trying to insulate code being specifically used in a direct derivative work as being a loophole that should be closed. However, what about the case of webservices running on a GPL subsystem? For instance, KaS_m mentioned Google’s search engine and how it taxes the linux kernel. I believe google runs on a modified BSD base, however if it were to run on linux — even without directly link to any GPL code it would have to be open sourced according to what I’ve read on what they want to do with webservices which doesn’t make much sense to me. 2005-03-24 11:18 pm If I develop an application in PHP and run it on Apache/mod_php, I need to provide the source code? I’m not exactly sure that I’m understanding you correctly, since that really would be viral… 2005-03-24 11:48 pm I belive that loop hole their trying to close is when you take a GPL program, modify it, and make it publicly aviable via a web site. X is a network transparent screen protocall; thus, I could take OpenOffice.Org modify it as much as I like, and then allow the general public to run it off my server. In this case, no OpenOffice.Org code is ever used on the client’s machine; however, since I’ve opened the modified program to the public, I should be required to release the modified source. Another example would be something like GEEK.LOG which is used for running news websites. It’s GPL which means that I can just download it and run my site; however, if I modify the code, then I should be required to release the modifications. In both cases, if the only users allowed to use my modified program are employee’s, then I don’t need to release the source. Also, note that both cases are currently allowed in GPLv2. 2005-03-25 12:56 am > It’s quite easy to circumvent the GPL: put the GPL’ed code > in a CORBA server, and use RPC to communicate with it from > a proprietory program. Actually, that’s not enough. Most people think that the GPL prevents linking to proprietary programs. I makes no reference to linking: http://opensource.org/licenses/gpl-license.php The GPL relies on the concept of derivative works, which is defined by regular copyright law. If you pipe the output of a GPLed program into a proprietary PDF generator, the proprietary PDF generator is not likely a derivative work because the PDF generator can accept input from any text document…it doesn’t depend exclusively on the GPLed app. If however the proprietary program cannot run without accessing the GPLed program, it’s a derivative work. If I create an HTML page that critically depends on GPLed web service provider, then my HTMLed page is a derivative work and must be covered by the GPL (or a GPL compatible license). This isn’t the “web services hole”. The hole is that I’m free to update the GPLed web service provider without ever releasing the code. This is an extremely tough hole to close since if you’re not careful you might make connecting your GPLed app to a network illegal unless all machines connected to the network are also GPLed. That would clearly make a GPLed Apache or PHP illegal since the internet doesn’t only contain GPLed code. My own guess is that GPLv3 will contain optional clauses or levels. Your could will automatically be relicensable under higher levels or higher versions of the GPL. Level 1 could basically be a clarified GPLv2.x. Level 2 could add some mild web services restrictions (to narrow but not close the hole — it would stand on more firm legal ground). Level 3 could add strict web services restrictions which may or may not hold up in all courts of all countries. 2005-03-25 12:58 am Has anyone seen the GPL v3 license? What makes them incompatible? Just curious. 2005-03-25 1:09 am he objection is this: There’s a huge difference between extening GPL code, and linking against it in a client situation. Now, the LGPL is supposed to cover this scenario approprately but some library authors either mistakenly use the GPL proper or they do it on purpose. We don’t believe there’s anything ‘ethically’ wrong with linking to code that was made freely available without extending it, particularly in a web service scenario because you aren’t “realeasing” code at all but are instead providing code as a service, and so rises the objection. Well, that may be an objection, but as far as the FSF is concerned it’s a non-issue. If you’re using GPLed libraries in your proprietary software, you’d better think about LGPL instead. It’s senseless to say you don’t think there’s anything ethically wrong with this misuse of the license: there are obviously many people who think there’s nothing ethically wrong with proprietary software, and many free software advocates among these. The point is, the FSF has its own set of ethical beliefs, and they have established the GPL to promote these, not to provide anyone with a free starting point for proprietary software, regardless of that individual’s own beliefs. When I said I can’t see the objection, I meant that this amendment to the GPL seems to be entirely consistent with the ideals of the GPL, and therefore a legitimate fix to a loophole. 2005-03-25 1:10 am Actually, that’s not enough. The RPC example has been used several times to show why an extension of the GPL is necessary. I’d argue that the seperation provided by CORBA is enough. Your proprietory program could easily work with any other server providing the same interface, so is it really a derivative work? 2005-03-25 1:56 am Have a look at the Vidomi case: http://www.vidomi.com/fsfpop.php http://advogato.org/article/282.html The quote to consider is: “Dynamic linking does not save you from the source code requirements of the GPL. The requirement of the GPL is that your application must be reasonably independent from the GPLed code, with no mention of static or dynamic linkage. I do not consider an application that automatically installs the GPL modules, each of which exports specific, individual functions from the original program, and automatically and invisibly loads the DLLs on startup to provide major functionality to be “independent” of the the GPLed code.” IPC. RPC, and CORBA are not enough. Independence is required. > Your proprietory program could easily work with any other > server providing the same interface, so is it really a > derivative work? If your proprietary program adapted itself to the interfaces for the GPLed server, absolutely (e.g. the security manager in Linux — you can’t just replace it with a proprietary one even if you use IPC to communicate from the kernel to it). If the interfaces were first and there is already at least one nontrivial viable app that complies to those interfaces so that your proprietary can be run independently of the GPLed app, it can be argued that it’s not a derivative work (e.g. an ODBC connector for a GPLed database, the POSIX libraries for the GPLed Linux kernel). 2005-03-25 2:38 am What if I created a wrapper library around a GPL’d library and “dual” licensed it as GPL and for my private use in non openensource app C? This has be discussed before, I cant remeber a conclusion though. 2005-03-25 4:07 am Apache isn’t GPL, neither is PHP, so your PHP site is completly uneffected. 2005-03-25 7:24 am http://www.groklaw.net/article.php?story=20050225223848129 2005-03-25 9:41 am In the past, much research, innovation, and work on software for companies was produced under different licences for every different company and could therefore not easily by combined. What the GPL has done (and a few other licences – like Apache licence etc.) is to bring much of this work together to be shared by building on top of already existing GPL and GPLv2 software. What GPLv3 aims to do is to improve on the ‘exact’ legal position of this software as it was intended, to promote companies to work together, to share and therefore to increase efficiency – to increasy creativity, innovation and to allow and encourage competition. But the most important aspect of the GPL is to allow forks to be remerged later in time. Even after both (or more) forks have been running parallel for some time and both have innovated in different areas, as both forks must also be under the GPL then both can be remerged without legal problems. This is the biggest and most important aspect of the GPL – you cannot take it away, build a little innovation on top and then hide it away under a different license. The GPL has been great for competition, innovation and the ability to remerge forks if required. 2005-03-25 10:30 am I like this idea. If people aren’t going to release their code under the GNU GPL then they shouldn’t be using the GPL’ed software in the first place. The GNU GPL is about free software. This revision protects the freedom of the software even more. <3 I love free software <3 2005-03-25 11:06 am “If I develop an application in PHP and run it on Apache/mod_php, I need to provide the source code? I’m not exactly sure that I’m understanding you correctly, since that really would be viral…” If you make a patch to Apache and use it to run your application in the wide world, but don’t distribute your “new” Apache, you still should publish the patch. Code written with a GPL language is not a version or update of that language, it is a new body of code, and doesn’t have to be GPL. 2005-03-25 1:08 pm Proprietary software should not link against the GPL, period. If you don’t like it, what do I care. 2005-03-25 1:14 pm I can’t see any project ever adopting v3 of the GPL. Basically you’ll have a situation where a GPL’d application can’t even communicate with any other non-GPL application. Open source developers and projects have as much trouble debating what the current GPL covers or not as it is. The current GPL is about as good as it gets. Do they really want to marginalise the GPL even further? I’m afraid the FSS is getting deluded by what they see as their own success. 2005-03-25 1:26 pm Exactly, it’s Stallman and his FSF cronies overplaying their hand. Expect major forkage or even better yet, people blowing them off and calling them out to enforce it. 2005-03-25 1:32 pm There is a difference between “non-GPL” and “non-GPL compatible” license. You might want to read up on those in your spare time. 2005-03-25 1:54 pm @Eugenia: Did you replace the F/OSS news icon? The former was better tbh. Apache isn’t GPL, neither is PHP, so your PHP site is completly uneffected. “If I develop an application in PHP and run it on Apache/mod_php, I need to provide the source code? I’m not exactly sure that I’m understanding you correctly, since that really would be viral…” If you make a patch to Apache and use it to run your application in the wide world, but don’t distribute your “new” Apache, you still should publish the patch. Yeah, but does that mean you can download WordPress (GPL v2) modify it and run it on your site, but don’t provide the source? Doesn’t GPL only obligate you to provide the source if you make a binary version of the modified code? 2005-03-25 1:59 pm …since it is a strict v2 and doesn’t have the “or later license” clause. 2005-03-25 2:30 pm The FSF doesnt really rely on any of you who already have problems with GPL v2. The new version will stay in the spirit of the current licence, but cover some international copyright issues, and some legal loopholes it should have covered since the beginning. Version 3 is nothing but a “minor update”, and some “legal code cleaning” to take care of these issues. Nobody who appreciates all the reasoning behind the GPL and Free Software, and not just the gratis apps it makes possible, should have problems with the few changes in version 3. Of course, some like you two will always take any Stallmans actions to curse and spit and breathe fire and brimstone, but you funny FUD spreading fellas are part of the fun, and would surely be missed otherwise. 😉 2005-03-25 3:38 pm “Yeah, but does that mean you can download WordPress (GPL v2) modify it and run it on your site, but don’t provide the source? Doesn’t GPL only obligate you to provide the source if you make a binary version of the modified code?” If WordPress is coded in C, you can’t run it without compiling a binary. You only have to provide the source to your patches if you want others to use them. You could then provide just the source, or the source plus binaries. That usually means distribution. If a viewer of your web site can run a program on your server, for instance to convert Postscript to PDF, then there is a grey area. The spirit of the GPL suggests the patches should be published, like any other research. The model for GPL software is research in Physics, History, or other academic topics. Research is no use unless it is published. 2005-03-25 4:25 pm >>>The new version will stay in the spirit of the current licence, but cover some international copyright issues, and some legal loopholes it should have covered since the beginning. Version 3 is nothing but a “minor update”, and some “legal code cleaning” to take care of these issues. GPLv3 is a MAJOR update because previous versions didn’t even account for the existence of patents. This is going to be a major problem — because IBM is happy selling linux hardware and services, and getting annual billion dollar patent licensing fees at the same time. 2005-03-25 5:19 pm There is a difference between “non-GPL” and “non-GPL compatible” license. You might want to read up on those in your spare time. It’s fairly irrelevant in this case. At the moment you can get two applications (one GPL’d, one non-GPL compatible) to talk to each other – not use each other’s code, or be derivative works. That has afforded a certain amount of freedom for the GPL to be reasonably successful whilst maintaing its integrity, which has been positive. Unfortunately, the FSS seem to have delusions of grandeur about making everything GPL’d, or GPL compatible, that ever touches a GPL’d application. That really is viral, and open source developers simply do not have the time or resources to look into what may or may not be legal. The FSS seem to think they have some power over this, when in reality, they don’t. The provision for patents I can agree with, but the attitude to this sort of thing will probably stop the license being adopted completely. The GPL v3 will become such a marginalised license, and you’ll probably be able to do so little with such software, that dual-licensed software like Qt and MySQL would be better off just being proprietary. I certainly can’t see projects like KDE adopting it at all, and I can see everything continuing to be licensed under GPL v2 because people know where they stand with it. You may want to actually think about some of the real issues in your spare time as opposed to re-arranging deck-chairs. 2005-03-25 5:49 pm Your comment is riddled in unfounded assumptions and speculations. The FSF does not force developers to use their license. Developers do so out of their own free will and volition. To begin with, most free software developers do not want non-GPL, or non-GPL compatible, software to have any dealings whatsoever with their works. Hopefully, version 3 of the GPL will only reinforce these developers’ intentions, not weaken it. The only people I see throwing a tantrum are the people who exploit the loopholes in the GPL today. 2005-03-25 8:18 pm >>>Hopefully, version 3 of the GPL will only reinforce these developers’ intentions, not weaken it. The only people I see throwing a tantrum are the people who exploit the loopholes in the GPL today. Big corporations like IBM, HP and RedHat are contributing their engineering resources because they made a business calculation on the current “GPL loopholes”. When GPLv3 arrives, these big corporations will have to re-evaluate whether it is in their business interests to continue to contribute to those projects. 2005-03-25 11:42 pm There’s just no way you can say that viewing content counts as distribution of the content producing code. The whole concept is totally ridiculous. I had more to say, but the sheer stupidity of a group of people thinking that concept is workable rendered me speechless. 2005-03-26 4:53 am The best part about GPL3 is the FSF’s focus on making sure IBM and Intel get snared in the viral net – it’s about time… 2005-03-26 6:00 am >>>The best part about GPL3 is the FSF’s focus on making sure IBM and Intel get snared in the viral net – it’s about time… IBM doesn’t have to contribute to any future GPL projects if they don’t want to. 2005-03-26 8:59 am …all those distributions of Linux are COMPLETELY and UTTERLY compatible. 2005-03-26 1:17 pm “The model for GPL software is research in Physics, History, or other academic topics. Research is no use unless it is published.” Not exactly. Imagine if research in Nuclear Physics were like GPL, in 1943-1945. But it was not, Americans had A-bomb while Russians did not. That was so unfair. 2005-03-27 9:54 am Not exactly. Imagine if research in Nuclear Physics were like GPL, in 1943-1945. But it was not, Americans had A-bomb while Russians did not. That was so unfair. I tried really hard to understand the meaning of this note. Was it meant to be ironic as in ‘sometimes obscurity is better’? Because in 1943-1945 “Russia” or better the Soviet Union was the most important ally of USA against the Axis. But even in time of dire need political reasons prevailed. In ’45 the bombs over Hiroshima and Nagasaki were not as much means to stop the war, as Japan was losing anyway and surrender was only an issue of time, but a showcase of miltary power meant for USSR, that Truman knew would be the adversary _after_ the war ended. During the subsequent cold war all sensitive areas of knowledge ( in military terms) suffered from the censorship, while theoretical physics was probably deemed ‘safe’, and that’s why we got so much more contribution from the soviet block scientists in that field than in technological applications. So in the end: research prospers in freedom of communication, as was the idea with the GPL. And your point was?