Выбрать главу

1.2. The Foundation Documents

Some years after its initial launch, Debian formalized the principles that it should follow as a free software project. This activist step allows orderly and peaceful growth by ensuring that all members progress in the same direction. To become a Debian developer, any candidate must confirm and prove their support and adherence to the principles established in the project's Foundation Documents.

The development process is constantly debated, but these Foundation Documents are widely and consensually supported, thus rarely change. The Debian constitution also offers other guarantees: a qualified majority of three quarters is required to approve any amendment.

1.2.1. The Commitment towards Users

The project also has a “social contract”. What place does such a text have in a project only intended for the development of an operating system? That is quite simple: Debian works for its users, and thus, by extension, for society. This contract summarizes the commitments that the project undertakes. Let us study them in greater detaiclass="underline"

Debian will remain 100% free.

This is Rule No. 1. Debian is and will remain composed entirely and exclusively of free software. Additionally, all software development within the Debian project, itself, will be free.

PERSPECTIVE Beyond software

The first version of the Debian Social Contract said “Debian Will Remain 100% Free Software”. The disappearance of this word (with the ratification of Version 1.1 of the contract in April of 2004) indicates the will to achieve freedom, not only in software, but also in the documentation and any other element that Debian wishes to provide within its operating system.

This change, which was only intended as editorial, has, in reality, had numerous consequences, especially with the removal of some problematic documentation. Furthermore, the increasing use of firmware in drivers poses problems: frequently non-free, they are, nonetheless, necessary for proper operation of the corresponding hardware.

We will give back to the free software community.

Any improvement contributed by the Debian project to a program integrated in the distribution is sent back to the author of the program (called “upstream”). In general, Debian will cooperate with the community rather than work in isolation.

COMMUNITY Upstream author, or Debian developer?

The term “upstream author” means the author(s)/developer(s) of a program, those who write and develop it. On the other hand, a “Debian developer” works with an existing program to make it into a Debian package (the term “Debian maintainer” is better suited).

Frequently, the line of demarcation is not clear. The Debian maintainer may write a patch, which benefits all users of the software. In general, Debian encourages those in charge of a package in Debian to get involved in “upstream” development as well (they become, then, contributors, without being confined to the simple role of users of a program).

We will not hide problems.

Debian is not perfect, and, we will find new problems to fix every day. We will keep our entire bug report database open for public view at all times. Reports that people file on-line will promptly become visible to others.

Our priorities are our users and free software.

This commitment is more difficult to define. Debian imposes, thus, a bias when a decision must be made, and will discard an easy solution for the developers that will jeopardize the user experience, opting for a more elegant solution, even if it is more difficult to implement. This means to take into account, as a priority, the interests of the users and free software.

Works that do not meet our free software standards.

Debian accepts and understands that users often want to use some non-free programs. The project, thus, has made part of its infrastructure available to them, in order to distribute as Debian packages software that authorizes it.

COMMUNITY For or against the non-free section?

The commitment to maintain a structure to accommodate non-free software (i.e. the “non-free” section, see the sidebar VOCABULARY The main, contrib and non-free archives) is frequently a subject of debate within the Debian community.

Detractors argue that it turns people away from free software equivalents, and contradicts the principle of serving only the free software cause. Supporters flatly state that most of the non-free packages are “nearly free”, and held back by only one or two annoying restrictions (the most common being the prohibition against commercial usage of the software). By distributing these programs in the non-free branch, we indirectly explain to the author that their creation would be better known and more widely used if they could be included in the main section. They are, thus, politely invited to alter their license to serve this purpose.

After a first, unfruitful attempt in 2004, the complete removal of the non-free section should not return to the agenda for several years, especially since it contains many useful documents that were moved simply because they did not meet the new requirements for the main section. This is especially the case for certain software documentation files issued by the GNU project (in particular, Emacs and Make).

The existence of the non-free section particularly annoys the Free Software Foundation, causing it, thus, to refuse to officially recommend Debian as an operating system.

1.2.2. The Debian Free Software Guidelines

This reference document defines which software is “free enough” to be included in Debian. If a program's license is in accord with these principles, it can be included in the main section; on the contrary, and provided that free distribution is permitted, it may be found in the non-free section. The non-free section is not officially part of Debian; it is an added service provided to users.

More than a selection criteria for Debian, this text has become an authority on the subject of free software, and has served as the basis for the “Open Source definition”. It is, thus, historically one of the first formalizations of the concept of “free software”.

The GNU General Public License, the BSD License, and the Artistic License are examples of traditional free licenses that follow the 9 points mentioned in this text. Below you will find the text as it is published on the Debian website.

→ http://www.debian.org/social_contract#guidelines

Free redistribution. The license of a Debian component may not restrict any party from selling or giving away the software as a component of an aggregate software distribution containing programs from several different sources. The license may not require a royalty or other fee for such sale.

BACK TO BASICS Free licenses

The GNU GPL, the BSD license, and the Artistic License all comply with the Debian Free Software Guidelines, even though they are very different.

The GNU GPL, used and promoted by the FSF (Free Software Foundation), is the most common. A particular feature thereof is that any redistributed program or work derived from a program incorporating or using GPL code, can only be distributed according to its terms. It prohibits, thus, any reuse in a proprietary application. This poses serious problems for the reuse of GPL code in free software incompatible with this license. As such, it is sometimes impossible to link a program published under another free software license with a library distributed under the GPL. On the other hand, this license is very solid in American law: FSF lawyers have participated in the drafting thereof, and have often forced violators to reach an amicable agreement with the FSF without going to court.