WhyNotGFDL/En

From TuxFamilyFAQ
Revision as of 19:31, 2 February 2009 by Baud123 (talk | contribs) (formating bullets)
Jump to navigationJump to search

This page was originally at http://home.twcny.rr.com/nerode/neroden/fdl.html but seems to have vanished :/

I retrieved it from http://web.archive.org/web/20071210175219/http://home.twcny.rr.com/nerode/neroden/fdl.html as I like the last paragraph :)


Why You Shouldn't Use the GNU FDL Created by Nathanael Nerode.

This page last modified September 24, 2003. What's wrong with it?

If you're considering the GNU FDL, you probably want to write free, open-source documentation, to go with your free, open-source program. The Free Software Foundation promotes the GNU General Public License version 2 (GPL) for software, and the so-called GNU Free Documentation License (GFDL) for documentation.

But the GFDL is not a free license in the same sense as the GPL.

The FSF actually admits this. The stated view is that different freedoms are needed for documentation than for programs. I, like many people who appreciate the importance of documentation for programs, disagree strongly with this. The over-broad DRM clause

In a previous version of this page, I wrote:

""If you use the GFDL but don't use Invariant Sections or Cover Texts, and don't include an "Acknowledgements" or "Dedications" section, this is free.""

However, I have since been made aware of another issue. The GFDL says the following:

""You may not use technical measures to obstruct or control the reading or further copying of the copies you make or distribute.""

This was intended to attack DRM systems, but it is far too broad. It applies to private copies made and not distributed. "Technical measures" is not defined. The natural interpretation includes activities like encrypting a copy, storing it on an encrypted filesystem, or even storing it on a file-sharing system with non-world-readable permissions. This is evidently not free.

Hopefully the FSF will fix this some time -- in my opinion, replacing "make or distribute" with "make and distribute" would be a good start. Invariant Sections and related problems

The other problems with freeness lie in the rules on "Invariant Sections", "Cover Texts", "Acknowledgements", and "Dedications". These are not modifiable, and not even removable. First of all, the Invariant Sections are clearly not freely modifiable themselves, which means that they are not free in the "free software" sense of the GPL. Since they are "Secondary Sections", off-topic by definition, some people may not care about that.

But Invariant Sections and Cover Texts constitute a restriction on the modifiability of the technical material -- the documentation -- in the GFDL-covered document, because they can't be removed, ever. The documentation is forever shackled to the Invariant Sections. This makes documentation licensed under the GFDL with Invariant Sections not free (in the sense of 'free software' as used in the GPL).

Clearly not all restrictions on modification make a work non-free; some are trivial. (The requirement to accompany any version of the work with accurate copyright notices and copies of the license, for instance, is a trivial restriction). But this is not a trivial restriction; it is a troublesome one for many reasons:

  • Being forced to retain innacurate Invariant Sections (or Cover Texts, or Dedications).
  • Being forced to retain obsolete Invariant Sections (or Cover Texts, or Dedications).
  • Being forced to retain technically inappropriate Invariant Sections or Cover Texts, etc. (I had been informed that this had happened with the Wikipedia, but this is apparently not correct.)
  • Being forced to retain Invariant Sections even in extremely space-tight environments (such as a reference card). (The President of the FSF has indicated that he believes this would be satisfied by accompanying the reference card with a "second volume" containing the Invariant Sections. This is, however, a very questionable interpretation of the text of the license.)
  • Being forced to retain untranslated Invariant Sections in a translation.
  • Being unable to use material from the document for a new document whose primary topic is that of an Invariant Sections (because the Invariant Section must be retained, and must be Secondary, but would no longer be Secondary).
  • Invariant Section "bloat". The natural response to several of the above problems is to add new Invariant Sections, saying "I think the old Invariant Section is inaccurate/obsolete/offensive" or "This is a translation of the old Invariant Section". These will accumulate and will also be unremovable.

Because the GFDL with Invariant Sections or Cover Texts is non-free, the Debian project is removing all manuals under such licenses from Debian. So if you want your manual to make it into Debian, you shouldn't use the GFDL.

Beyond its non-free status, the GFDL has additional serious practical problems:

  • It's GPL-incompatible in both directions. This means that you can't legally extract text from a GFDL'ed manual and put it into integrated help strings in a GPL'ed program. And you can't extract code or comments from a GPL'ed program and put it into a GFDL'ed manual. (Without getting explicit permission to relicense from every copyright-holding contributor, that is.)

What should I do?

So the GFDL is a very poor license for manuals for free programs. I recommend that you use the same license as the program has; this prevents an awful lot of future problems.

  • For GPL'ed programs, licence the manual under the GPL. With a license like the GPL which refers explicitly to "source code" and "object code", you may want to put a note next to the manual's copyright statement to clarify what you consider to be "object code" in this context. (The definition of "source code" in the GPL is quite sufficiently broad enough for any purpose, although you may want to clarify it too.) For instance, if you wrote a manual in texinfo form, you could write: For the purpose of applying the GPL to this document, I consider "source code" to refer to the texinfo source and "object code" to refer to the generated info, tex, dvi, and postscript files.
  • If you don't mind people making proprietary versions of your manual, use a permissive, non-copyleft license such as the X11 license. (The X11 license explicitly mentions documentation.)
  • If you have to use the GFDL for some reason, dual-licence your documentation under the program license.

Isn't the GFDL just like the GPL?

Some people ask, "Why doesn't the GPL cause the same problems? It puts restrictions on what sort of modifications can be redistributed." There are only two clauses of the GPL which are significant here:

  • Clause 2(a) of the GPL seems to require that every file contain a ChangeLog. This would certainly be a problem, except that it is generally interpreted to mean only that the files must be accompanied by a ChangeLog. (In fact, it only requires that the last person to modify the program put in "prominent notices", since the last person is technically allowed to remove all the previous ChangeLog entries.) Furthermore, the GPL is generally interpreted as requiring 2(a) for source code only, not for object code files (which would be very onerous indeed, causing technical nightmares). This turns out to be a trivial restriction.
  • Clause 2(c) of the GPL imposes a definite restriction on the manner in which a program can be modified. It is, in fact, quite controversial. However, it only applies if the "modified program normally reads commands interactively when run", and a GPL ancestor program on which it's based did, and the ancestor program displayed the "announcement". Most programs currently available under the GPL do not normally "read commands interactively when run", and most of those that do, do not display the "announcement". Even when it does apply, it's a very narrow restriction, and requires only the printing of minimal legal notices. (Nevertheless, I recommend that you do not print such notices, so as not to force future modifiers of your code to do so.) This is in contrast to the potentially unlimited Invariant Sections in the GFDL.
  • The prologue to the GPL is non-modifiable text, which is sort of like an "Invariant Section". However, this is a license text, existing primary for legal purposes, and deserves special treatment for that reason. Even the prologue has a legal effect: it can indicate the appropriate interpretation of the terms and conditions. It is also one single piece of text, as opposed to a potentially unlimited collection of invariant text. Furthermore, the remaining text of the GPL can be used without it (thanks to a statement made by the FSF somewhere on its web page), whereas GFDL documents with "Invariant Sections" can never lose them.

It's not about misrepresentation!

Some people apparently think that Invariant Sections are needed just to prevent people from misrepresenting other people's opinions. They're not.

  • Misrepresenting someone's opinion for the purposes of gain is fraud. This is generally illegal, and has nothing to do with copyright.
  • Misrepresenting someone's opinion in order to damage their reputation is defamation, libel, or slander. This is generally illegal, and has nothing to do with copyright.
  • Misrepresenting someone else's work as your own is dishonest; if it's done for gain, it's fraud.

If you're still concerned about not being given credit, clauses requiring attribution are present in many free licenses, including the GPL, and are perfectly acceptable.

If you want to put in a statement with your license which says "This license shall not be construed to give anyone permission to misrepresent my opinion, or to commit fraud, or to deliberately mislead anyone," go ahead. That's perfectly free. It isn't actually an extra condition, so it could even be used with the GPL.

If you're still concerned about having your opinion misrepresented, you can put in a clause like this: All modified versions must prominently state that they do not necessarily represent the opinions of [original author]. This is perfectly acceptable and free.

The GFDL goes much, much further than that. Here's an example of something which should be allowed for a free essay, but isn't permitted for a GFDL Invariant Section such as the GNU Manifesto is for the Emacs manual:

The Foo Manifesto, by Mr. Foo

This is based on the GNU Manifesto, by Richard Stallman, but does not necessarily represent his opinions.

GFDL'ed invariant sections prohibit modification. You probably just want to require that modified versions don't pretend to be your version, and possibly that they credit you as the author of the original. This can be accomplished much more easily, with better, freer licenses.


This page is released to the public domain by its author. (neroden)