I’ll be honest; I did try to read the entire GPL license, but I just couldn’t. I may be studying law but I’m no lawyer. I did, though, read the FAQ from the GPL website. That’s fairly simple, but it is bloody long, and most of it doesn’t apply to me at the moment since I don’t release or hack anything that ships as a binary, so I thought I’d run through what I think you’re allowed to do with software under this license.
When I say “software” I mean anything really, including WordPress plugins and themes (which is what I’m most interested in). The “original copyright holder” is the first person to write the script, I’ll abbreviated that to OCH.
- Unless you’re distributing the software, the license doesn’t really apply to you. It’s more about what you can do with the software with regards to sharing it and stuff.
- If you do modify the script though, it is still under GPL license. The OCH still holds the copyright to the script though (they just aren’t pushing for their typical rights). You can’t change the license on the script just because you’ve changed it a little bit (or even a lot). I suppose though that you do have the copyright of the changes you made. If you removed those, you could release the lines you’ve changed under a different license, with a list of the lines needed to be changed.
- Just to empathsize: if you change the code of a GPL software, it’s still under GPL. You have to abide by the GPL regardless of how you feel.
- If you change the software you don’t have to release those changes. No one, not even the OCH can demand it from you.
- If the GPL’ed script makes a binary (ie. You compile the script to make a runnable program) then the binary is also under GPL.
- GPL requires that you also make the source code public, if you release the binary to the general public. Since I just work with PHP files, there’s nothing to compile the compiled script isn’t made into a binary so there’s nothing to worry about.
- You can sell the GPL’ed code. So, if you wanted, I could sell Firefox from this website. That’s stupid of course, since I’d get zero customers since Firefox is available free from other places.
- On the other hand, I could hack Firefox a little bit, so it shipped with my favorite theme instead of the default one. Maybe people would want it then. Or I could give customer service with it. The point is you can charge for GPL’ed code.
- Even if you sell it, the buyer has the code under the GPL license, which means they can give it away however they like. You can’t tell the buyer to not give out the code.
- You must ship your code with a copy of the license, even if the program is smaller than the license. You can’t just link to a copy of the license. In cases where the license is bigger than the code, GNU suggest just using a “you can do what you like with this code” license.
- You must might have to put the entire license. You can’t miss any of it out. The license text is actually copyrighted and you’re breaking the law (tort law anyway) if you change any of it. It must be output verbatim. Update: If you’re making a script for WordPress or another open source project, like a theme or plugin, you don’t need to put the entire file, since the “work” (WordPress, in this case) already has the GPL license. If you’re releasing a plugin not under GPL, you’ll have to put that licensce in though.
That’s what I think the most important parts of the license are. I have a few questions that I need to find answers to though.
Whilst it’s not related directly to GLP, do all WordPress plugins and themes have to be GPL? The license said that they should be if they’re considered to be a single application with WordPress, but I’m not sure if they are.
Updated answer: They don’t have to be, but most are.
Regarding putting a copy of the license with the software; the purpose of that is so that the downloader knows their rights under GPL. If, before a person is allowed to download something, they’re presented with a screen that says “you’re getting this license under GPL, here’s a link to that license. If you distribute this code, make sure you tell the person about this license”, why wouldn’t that be acceptable? Or even just putting a file or line in with the script that links to the license?
Updated answer: You don’t have to put the entire text if the work it works with has it.
How much of a GPL’ed script needs to be changed before it stops being a derivative script (which would be under GPL too) and becomes an entirely new script, so not having the mandatory license?
Updated answer: A lot.
Can I go to the original copyright holder, and ask to have a copy of the script not covered by GPL?
Updated answer: Yes.