Part of the FSF’s instructions for placing a program under the GPL is including the following “copying permission statement” at the top of your file, under the copyright notice:
This program is free software: 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 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
I am wondering what is the significance of each paragraph in this statement. In particular, for a program that I am about to release under the GPL, I am considering omitting the second and third paragraphs to reduce the length of the statement, and I’m wondering what would be the negative consequences (if any) of doing so.
5
The GPL FAQ answers all your questions (and more!).
The short answer version – Yes, you can shorten the copyright, copying permission, warranty, and license statement. (And yes, that’s a flip-flop from my previous answer).
But you (still) may not want to.
From the GPL License under
“How to Apply These Terms to Your New Programs”
emphasis mine.
To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the “copyright” line and a pointer to where the full notice is found.
Translated:
You do not have to insert that block of text at the beginning of every source file. FSF highly recommends it since they called that the safest course of action. Either they envision or have dealt with problems where the full block wasn’t included in every source file. FSF is pretty conservative in their legal stance, so I take heed when they make a strong statement like that.
If you were looking to shrink things down, then at a minimum you would want your copyright statement and the exclusion of warranty claims.
It’s distinctly possible that you could run into problems later on as your project grows and is shared by others. Developers are lazy efficient. When they pull only the sections they need from your project, they may or may not remember to update the correct places where the copyright, permissions, warranty, and license statement are now supposed to exist based upon the reduced form you started using with your project. If the block is already there, then the only thing that might be missing is their addition of their copyright statement.
IMO, it’s easiest and safest to include the block in each source file. That best covers all of the what-if scenarios that you can fall into. Most IDEs provide a way to fold comment blocks so you don’t have to see it every time. Comments aren’t included with source, so it won’t bloat your program. If you honestly don’t care about losing control over the code, then don’t worry about it. For that matter, then you should consider licensing as public domain instead of GPL.
FAQ sections of relevance
Omitting the preamble
The preamble and instructions are integral parts of the GNU GPL and may not be omitted. In fact, the GPL is copyrighted, and its license permits only verbatim copying of the entire GPL.
Including the license
Including a copy of the license with the work is vital so that everyone who gets a copy of the program can know what his rights are.
Which extends to developers looking at your code, and in part that’s why you have to have the preamble in place.
However, you’re still free to add additional disclaimers, if need be.
Summary of the paragraphs
- “This is free. Here’s how you can use it.”
- “No Warranties. Hope you find it useful anyway.”
- “Got License? No? Here’s where you can find it.”
2
I don’t see how the header could be shorter and effective in doing what needs to be done. The first paragraph declares the code free under the stated license. That license places some restrictions on what can be done with the software/source code.
The second paragraph is a disclaimer of warranty. I am not a lawyer, but personally I would want that paragraph retained. It may not prevent someone from suing you, but it makes it difficult for them to succeed.
The last paragraph is a pointer to a much larger set of information which should replace the paragraph. It shortens the header significantly by omitting the contents of the document it points to.
2