Draft Free Stuff GuidelinesHM

This text is written such that it could conceivably be used as a drop-in replacement for the Debian Free Software Guidelines. However, at the time of this writing it is primarily the work of a lone maniac; it should never be confused with the actual DFSG.

After working witht the DFSG for many years, it is a clear experience that the clauses that say, "the license must not do this" are rarely violated in practise - perhaps exactly because the DFSG calls out these restrictions explicitly. The debian-legal consensus has always maintained that the DFSG's short list of things a free license cannot do is not exhaustive. However, this is not clear to the uninitiated who reads the DFSG for the first time.

It would be a Sisyphean task to try to correct the problem by adding more cases to the list of things free licenees cannot do. However, it seems that it ought to be possible to create an exhaustive list of what a free license can do. The present text is an exercise in writing a DFSG based on that premise. It is my intention that it should describe exactly the way the DFSG has actually been applied by debian-legal over the years, but it is still a very rough draft, so there may be cases I have missed.

This draft was initially written by Henning Makholm (henning@makholm.net); and subsequently revised with the help of: Francesco Poli, Nathanael Nerode, Glenn Maynard, and Lewis Jardine.

Date of last update: May 31, 2004

1. Introduction

[Put here a paragraph that briefly describes the role that the DFSG has in the Debian project].

Explanations and rationales that are not meant to be normative are set in this style.

This is a definition of the word definition. Definitions are set out from the main text because most of the defined words have their usual meaning; the rest of the text should be meaningful even without reading the definitions. Sometimes, however, it is useful to have something definite to refer back to.

The work is whatever collection of bits that these guidelines are being applied to. Typical works are programs, documentation, literary or artistic works, and combinations of these.

2. Source code

For a work to be free, it must be available in source form.

The source for a work is a machine-readable form that is appropriate for modifying the work or inspecting its structure and inner workings. It is usually immediately clear what the source form is, but sometimes it is a judgement call what to consider source.

3. Basic rights

For a work to be free, each of its authors must have granted the following basic rights to every user. Except as provided for in section 4, these grants must be unconditional and irrevocable.

Here, an author means everyone who holds or owns a copyright applicable to the work. There may be zero, one, or more authors for a work. The case zero applies if the work is not subject to copyright; in that case the requirement is trivially fulfilled.

The user is anyone who is in a possession of a copy of the work. Prototypically, the user is someone who runs the Debian system on his computer, but the basic rights must also apply to people who do not run Debian.

The license means the authors' act of granting of basic rights and possibly other rights on specific conditions.
If the author has granted rights by stating that a specific license text applies to the work, the word license refers to the meaning of the license text in the specific context of the particular work. Thus, even if the same license text applies to two different works, one work can be free and the other non-free, because of differences in the way the authors apply a generic license text, or because the meaning of the licence text explicitly depends on inherent properties of the licensed work.

It does not prevent a work from being free that someone who is not an author can deny some users the basic rights. For example, a cryptographic program can be free even though the citizens of some countries do not have the right to use it.

A. The right to use

A user must have the right to execute the work on a computer if it is a program; to display and read it if it is a text, and so forth.

In many countries, the user has this right by law even without an explicit grant from the author. We therefore consider this right to be given implicitly unless the author explicitly tries to restrict it.

B. The right to copy and distribute

A user must have the right to create copies of the work in any medium, and to give such copies to whomever he decides to distribute to.

C. The right to create derived works

A user must have the right to create derived works.

A derived work can be anything from a slightly modified versions of the original work to a completely new work that includes parts of the original work in a new contexts. The term also includes translation of works into other languages, compilation of programs to machine code or bytecode, and other transformations that prepare the work for being used.

D. The right to distribute derived works

A user must have the right to give copies of derived works created by himself or others to whomever he decides to distribute to.

E. The right to sell copies

A user must have the right to sell copies of the work or of derived works, with or without making a profit.

Rationale: A user in a remote location (say, any computer that is not connected to the Internet) must have the freedom to contract with a business to create a copy of the software and transport it to him. If the licensing of the software prevents the business from getting a profit out of this, the software is not truly free.

4. Acceptable restrictions

The following is an exhaustive list of conditions that an author can apply to his grant of basic rights to a free work. If the license for a work grant any of the basic rights only to users who do or omit something not listed here, the work is not free.

The Debian Developers can add new exceptions to the list by General Resolution with a 3:1 supermajority, as per the Debian Constitution. While it is pragmatically important that we can accommodate yet unthought-of restrictions that really do not conflict with the intuitive idea of software freedom, it is expected that such a facility will only rarely be needed. Letting the Developers decide in each such case seems like a safer and more open choice than including a generic blessing of other clearly benign restrictions.

A. Copyright notices

The license may require all copies to carry appropriate copyright notices.

B. Removed in editing

C. License texts

The license may require that all copies of the work are accompanied by a copy of (or references to) the applicable license text.

A license text is a self-contained text that describes the authors' license grants. Short rationales such as the Preamble to the GNU General Public License, version 2, are taken to be included in this concept. It is in general a judgement call whether a non-legal piece of text is sufficiently related to the license grant to be piggy-backed onto the license text in this way. A license text may also include statements in which the author disclaims responsibility for errors in the work.

The license text itself may be excluded from the right to create derived works.

Several popular license texts explicitly forbid the creation of works derived from the license text itself. Debian strongly recommends that authors of license texts allow them to be used by others for deriving license texts for their own works.

D. Forced distribution of source with binaries

The right to distribute the work (or derivates) may exclude distribution in forms other than source where the distribution is not accompanied with the source.

Here, accompanied with the source must be understood to include the situation where source is available from the same place and under the same conditions that the non-source form is available under. It must also include the situation where the recipient is offered the source for a charge not exceeding than the cost of physically providing it, but declines on the offer. The Debian mirror network and vendors of Debian CDs, respectively, do this.

E. Integrity of the original work

The license may require derived works to carry notices that make it clear that they are not the original.

The license may require derived works to carry a different name or version number from the original work.

However, such requirements may not be constructed such that they interfere with the usual use of the derived work (assuming that the derived work is of the same kind as the original one).

F. Patch clauses

The license may require that distribution of source code for derived works is made in the form of the source code for the original work plus patch files that allows a user to recreate the source for the derived work.

However, the license must then explicitly allow binaries for the derived work to be distributed in a form ready to use.

Binaries are whatever needs to go into a Debian binary package. If the binary package needs to contain parts of the work in the same form as source form, then the patch clause cannot apply to those parts.

This is a compromise. The Debian project encourages all authors not to restrict any files, source or binary, from being modified.

G. Copyleft licenses

The right to create and distribute derived works may be contingent on the user granting every other user the same rights with respect to his own copyright in the derived work as every user has already been granted with respect to the original work.

The license may require the user not to use other legal measures than copyright (such as trademarks, patents, or contracts) to attempt to control the further copying and distribution of copies that he distributes.

H. Termination in case of non-compliance

The license may terminate its grants of basic rights completely if the user knowingly copies or distributes the work in a way not permitted by the license.

I. Mandatory aggregation

The license may require that when a copy of the work are sold, the sale must also include a copy of an arbitrary unrelated program chosen by the user.

Such a restriction is exactly as silly as it sounds. However, some otherwise free programs come with licenses that specify that the program must not be sold alone but only as part of an aggregate software distribution.

J. Specific exception for GPL #2(c)

The license may require that all derived work that are interactive programs output appropriate short copyright and warranty notices plus a reference to the license text when started running for interactive use in the most ordinary way.

This exception is not available when the original work is interactive yet does not print out such a notice.

Derived programs that can be made to omit the notice by being started in special ways or in special environments must be allowed.

K. Specific exception for 3-clause BSD licenses

The license may require the user not to use the author's name to endorse or promote products derived from the work.

Such a clause is found in most variants of the BSD license. It is believed to be legally void in most jurisdictions. Debian strongly encourages authors to use more appropriate tools than copyright licenses if they feel they need more protection than the usual laws against misleading advertising.

L. Specific exception for 4-clause BSD licenses

The license may require the user to include a short statement crediting the author in advertising material that mention features or uses of the work.

Such a clause is found in some variants of the BSD license. In 1999, the University of California rescinded the clause as regards code whose copyright they own, but some authors who copied the BSD license terms before this still use this clause. Debian very strongly discourages authors from using such a clause in their licensing terms. It is likely that this exception will be removed from these guidelines in the future.

M. Removed in editing

N. Acknowledgements in documentation

The license for a free program may require that end-user documentation which accompanies the program contains a short acknowledgement that credits the author.

Meta-comment: such clauses are found in the Subversion license and other places. Debian-legal has no rock-solid consensus about them, but nobody seems to have come right out and said that they are non-free.

5. Non-acceptable requirements

The following is an informational, non-exhaustive list of restrictions on the basic rights that are not acceptable in a free license.

Note that the reason why each of these requirements is non-free is not that it is mentioned in this list; the reason is that it was not mentioned in the previous section. The list is included in order to make it more likely that the non-freeness of specific licenses can be explained succinctly by referring to a particular place in the DFSGHM.

The license text can include any or all of the following examples as non-binding requests, as long as they are not legal requirements for getting or keeping one's basic freedom.

A. Paying royalty to the author

A work is non-free if one gets the basic rights only after paying a fee to the author. Duh!

B. Notifying the author

A free license cannot require that the user notifies the author prior to (or after!) exercising his basic rights.

C. Explicitly accepting the license

A free license cannot require that the user takes any explicit action to express agreements to its terms - even trivial actions such as clicking on OK buttons.

However, the license can state that exercising the rights it grants, absent alternative permissions, will be interpreted by the author as acceptance of its terms. It cannot unilaterally make this interpretation legally binding, however.

D. Policing recipients

A free license cannot make the user responsible for whether the recipients of copies he distributes comply with the license.

A free license cannot require that copies are distributed only to recipients who have explicitly agreed to the license.

E. Observing the law

A free license cannot require that the user exercises his basic freedoms only in ways allowed by applicable local law, or only in ways allowed by the export control laws of the author's country.

F. Adhering to standards

A free license cannot require that derived works must implement a specific interface or comply with a specific standard.

G. Monitoring the author's website

A free license cannot require that the user must regularly check a website for information about the work.

H. Discrimination against persons or groups

A free license cannot exclude any person or group of persons from getting the basic rights, subject to acceptable restrictions mentioned in section 4.

I. Discrimination against fields of endeavour

A free license cannot restrict the work from being used for specific purposes. For example, it must not restrict the work from being used in a business, or from being used for genetic research.

J. Contamination of other software

A free license cannot place restrictions on other works that are distributed along with the licensed work itself. For example, a free license cannot insist that all other works distributed on the same medium are free.

K. Arbitrary termination

A free license cannot be revoked by the author even if the author learns that he is not the sole copyright holder for the work or that the the work is covered by patents.

Such a discovery still means that the license is not enough for the user to have his basic rights, but he must be able to negotiate the necessary additional license from the newly-discovered party without losing the license he had in the first place.

L. License specific to Debian

The rights attached to the work must not depend on the works's being part of a Debian system. If the work is extracted from Debian and used or distributed without Debian but otherwise within the terms of the license, the basic rights must still be available to all users.

Meta-comment: Is this still necessary? It ought to be covered by the comment in the definition of user.

M. Forced distribution to the author

A free license cannot require that a copy of any derived work must be given to the author.

N. Forced distribution to remote users

A free license cannot require that people who interact with the program remotely are given a copy of the program itself.

O. Choice of venue

A free license cannot require that the user accepts a choice-of-venue clause.

A choice-of-venue clause means that the user must agree to being sued in a specific court of the author's choice whenever the author decides to sue. By the nature of lawsuits, such a requirement takes effect before the court decides whether the author's complaint is justified. As many courts automatically rule against parties who does not meet in court, choice-of-venue clauses implicitly bind the user to travel to a foreign court at the whim of the author.
In contrast, a choice-of-law merely specifies which jurisdiction's laws will be used to resolve disputes over what the license text means. Licenses with choice-of-law clauses can be free if the specified jurisdiction's laws lead to an interpreation of the license text that meets the guidelines.

6. Patents

[Something needs to be said here.]