A friend and I have started a project using code from another project, that is covered licensed under GPL. We have distributed it freely on our website, and under its download button, we've added a direct download link to the modified source code also for free. At the about section of the application, we have credited the guys who built the original code. Does the fact that we have a different project name violate the terms of the GPL? And also, if we include the original GPLv2 notice from the original app does that help us comply with it? If not, please state exactly what we have to do to comply with the GPL. The code we're using is an older version, released under GPLv2, and that project has been discontinued, and moved to a different one, where they're still developing. We haven't used any of their current coding, which is released under GPLv3.
-
What do you mean by "if we include the original GPLv2 notice from the original app..."? Could you clarify what GPL notice you intend to include, if not the one from the original project?– apsillersCommented Feb 5, 2013 at 14:06
-
that's the one I mean, th GPL notice from the original project– Suhárt Levente AttilaCommented Feb 5, 2013 at 14:26
2 Answers
The GNU General Public License v2 reads:
[1] You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.
[2] You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:
a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.
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.
That means that when your project is based on GPLv2 software, it also has to be released under GPLv2.
For that reason the GPL is often criticized for being a "viral" license - using GPL code in a project "infects" it with the GPL and prohibits you from releasing it under a different license.
To do so you have to:
- Make sure the GPL in text form is included in the distribution of the program and make clear that these license conditions apply to your program
- Leave any copyright or warranty notices of the other authors intact
- Publish the sourcecode
- Add a change date as a comment to each source file you edit
-
1"You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. " wow, I'm pretty sure there is a lot of GPL code that doesn't follow that rule (unless leaving it in version control history counts)– EarlzCommented Feb 5, 2013 at 15:55
-
-
@KeithThompson look at any GPL derived code that isn't written in C/C++. There is no convention for "last modified" comments in the header of each file outside of C, C++ and a few other "old" languages. I've never seen a C# project with them, for example– EarlzCommented Feb 5, 2013 at 16:47
-
-
1@MarjanVenema There is a separate license, the GNU LGPL ("Lesser" GPL or "Library" GPL) which allows you to use unmodified code in a program released under a different license. But the normal GPL doesn't.– PhilippCommented Mar 25, 2013 at 10:11
You avoid a GPL violation by simply adhering to the GPL license terms. From what you describe (your source is available, license terms are still GPLv2, source acknowledged) you've done enough.
You don't need to include the original GPLv2 notice; your own version is sufficient. However, you do need to acknowledge the copyright of the initial contributors.
Using a new project name is no violation of the GPL. It's in fact the norm for forks of OSS projects, and might be required under trademark law.
-
So, if we add a GPLv2 notice in the installer, we'll be fine? Commented Feb 5, 2013 at 14:03
-
You need to inform people receiving the binary of their rights under the GPL. An installer is a good place to do so, but it shouldn't be the only place. An "About" box is another good place where you can link to the notice.– MSaltersCommented Feb 5, 2013 at 14:08