1.2. 基金会文档
在项目发起的几年之后,Debian 确定了需要遵循自由软件项目形式的原则。这个慎重而积极的决定使得项目有序而稳定的成长并且确保了所有的成员向同一个方向前进。要成为一个 Debian 的开发者,任何的候选人必须承诺并且证明他们能够支持并且坚守建立在项目的基础文档上的原则。
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 for their stability: a three-quarter qualified majority is required to approve any amendment.
1.2.1. 对用户的承诺
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? It 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 detail:
Debian 将始终是 100% 的自由软件。
准则一:Debian 是并且还将继续保持完全由自由软件组成。另外,所有由 Debian 项目开发的软件与它自身都会是自由软件。
视角 在软件之外
The first version of the Debian Social Contract said “Debian Will Remain 100% Free Software”. The disappearance of this last 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.
这个改变,仅仅是作为对编辑的影响,事实上,由数不清的影响,特别是要移除一些成问题的文档。此外,在驱动中使用固件的增长带来了问题:许多是非自由的,然而在适当的操作与固件的通信中又是必需的。
我们会回馈自由软件社区。
任何被整合到发行版中的由 Debian 项目贡献的改进都会被反馈到作者(称为“上游”)。通常的,Debian 会与社区合作而不是独立工作。
社区 上游作者,或是Debian开发者?
术语“上游作者”指的是工作中的作者/开发者,是编写与开发软件的人员。另一方面,“Debian 开发者”使用更直观的工作来使软件加入到 Debian 包中(术语“Debian 维护者”更为适当一些)。
In practice, there can be overlaps between both roles: the Debian maintainer may write a patch, which benefits all users of the work. 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 role of simple users of a program).
我们不隐藏问题。
Debian is not perfect, and, there will be new problems to fix every day. Debian will keep its entire bug report database open for public view at all times. Reports that people file on-line will promptly become visible to others.
用户和自由软件是我们优先考虑的事。
这个承诺更加难以定义。Debian 规定,如下,当必须要作一个带有一定偏向的决定时,会抛弃那个对开发来说更为方便而会损害用户体验的方案,选择一个更加优雅的方案,即使它会更加的难以实现。这意味着用户与自由软件的利益将会被优先考虑。
不符合我们的自由软件规范的作品。
Debian accepts and understands that users may want to use some non-free programs. That is why the project allows usage of parts of its infrastructure to distribute Debian packages of non-free software that can safely be redistributed.
社区 是支持还是反对 non-free 区块的呢?
维护一个允许容纳非自由软件的体系的承诺(如“non-free”章节,请看侧边栏关键词
main
,contrib
和non-free
存档)总是 Debian 社区中的辩论的主题。反对者指责这相当于让人们远离自由软件,同时这也与只服务于自由软件的原则相背。支持者总是声称大多数的非自由软件包都是“几乎是自由的”,仅仅是被一两条恼人的限制性条件所限制(最常见的就是禁止软件的商业使用)。通过在非自由分支中分发这些软件包,我们相当于间接的向作者解释,如果这些软件包能被包含在主分区中,便可以被更多的人所知并且使用。因此,我们是在礼貌而委婉地提出希望他们能够为了达到这样的目的而改变其许可证。
After a first and unfruitful attempt in 2004, the complete removal of the non-free section is unlikely to return to the agenda, 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).
non-free软件分区就这样一直存在,并成为了与自由软件基金会之间不时产生摩擦的导火索。这也是基金会拒绝正式推荐Debian作为自由软件操作系统的主要原因。
1.2.2. Debian 自由软件指导方针
这个参考文档定义了哪些软件是“足够自由”而可以包含于 Debian 中。如果某个程序的许可证与这些原则相符合,它便能被收录在 main 部分中;如果有所冲突,但是至少允许自由分发的话,它可能被收录于 non-free 部分。正式地来说,non-free 不是 Debian 的组成部分;它属于向用户提供的额外服务。
这些条文不仅仅是Debian的选择标准,也成为了有关自由软件方面的权威解释,同时,它也作为“开源”的基础定义。因此,它成为了“自由软件”概念最早的正式定义之一。
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.
→ https://www.debian.org/social_contract#guidelines
自由的再次发行。
Debian组件的许可协议不得限制任何一方将此软件作为含有若干不同来源的程序的一套软件集合中的一个组件用于销售或者捐赠。该许可证不得向诸如此类销售行为的销售方索取专利费或者其它费用。
源代码。
程序必须包含源代码,并且必须允许以已编译二进制文件形式和源代码的形式分发。
衍生作品。
许可协议必须允许代码修改和衍生作品,并且必须允许这些作品以和原软件相同的许可协议条款进行分发。
作者源码的完整性。
仅当许可协议允许:为了在构建程序时修改代码,“补丁文件”可随源代码一同分发,那么在此种情况下,许可协议可以限制分发修改过的源代码。许可协议须明确地说明准许分发由修改过的源代码构建成的软件。它可能会要求衍生作品使用与源软件不同的名字或版本号。这是一种妥协。Debian社团鼓励所有的作者不要限制任何文件的修改,不论是代码还是二进制文件。
不歧视个人或群体。
许可协议禁止歧视任何个人或群体。
不歧视各领域的贡献者。
许可协议不应限制任何人把程序应用于任何领域。例如,不应规定程序不能应用于商业领域或基因研究领域。
许可协议的分发。
程序附带的权利必须适用于程序的再散布无需加上其他的授权。
许可协议不应限定于 Debian。
属于程序的权利,不应取决于该程序是否是 Debian 的一部分。如果某个程序是从 Debian 中提取出的,而又没有基于 Debian 进行分发或者应用于 Debian,但是根据该程序许可协议的条款,所有程序的使用者,包括程序被再分发之后的使用者,依然都享有该程序在 Debian 系统中相同的权利。
许可协议禁止损害其他软件。
许可证禁止限制那些和软件许可一起分发的软件。例如,许可证禁止要求在同一媒介上分发的所有其他程序都必须是自由软件。
回到基础著佐权
著佐权的原则在于使用著作权来保障作品及其衍生品的自由,而不是如同专有软件的情况那样限制使用的权利。它也是对“著作权”术语的文字游戏。Richard Stallman 从他的喜欢说双关语的朋友给他写的一封信那里获得了这一灵感,信的内容是这样的:“著佐权:所有权利反转”。著佐权强制保护原始作品(通常是程序)或者修改的作品版本分发的最初的自由。如果某一程序的代码是基于著佐权发布下的程序衍生而来的,那么它就不可能作为专有程序再被分发。
The most well-known family of copyleft licenses is, of course, the GNU General Public License (GPL) and its derivatives, the GNU Lesser General Public License (LGPL), and the GNU Free Documentation License (GFDL). Sadly, the copyleft licenses are generally incompatible with each other. Consequently, it is best to use only one of them.
Example licenses
The “GPL”, “BSD”, and “Artistic” licenses are examples of licenses that we consider “free”.
回到起点自由许可协议
GNU通用公共许可协议,BSD许可协议,以及Artistic许可协议,虽然它们各不相同,但是它们都符合Debian自由软件指导方针。
The GNU GPL, used and promoted by the FSF (Free Software Foundation), is the most common. Its main feature is that it also applies to any derived work that is redistributed: 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.
→ https://www.gnu.org/copyleft/gpl.html
The BSD license is the least restrictive: everything is permitted, including use of modified BSD code in a proprietary application.
→ https://www.opensource.org/licenses/bsd-license.php
Finally, the Artistic License reaches a compromise between these two others: integration of code in a proprietary application is permitted, but any modification must be published.
→ https://www.opensource.org/licenses/artistic-license-2.0.php
The complete text of these licenses is available in
/usr/share/common-licenses/
on any Debian system (in case of BSD the newer 3-Clause License).
社区 Bruce Perens,一位有争议的领导者
Bruce Perens was the second leader of the Debian project, just after Ian Murdock. He was very controversial in his dynamic and authoritarian methods. He, nevertheless, remains an important contributor to Debian, to whom Debian is especially indebted for the editing of the famous “Debian Free Software Guidelines” (DFSG), an original idea of Ean Schuessler. Subsequently, Bruce would derive from it the famous “Open Source Definition”, removing all references to Debian from it.
当他离开项目时,是挺让人伤心的。然而 Bruce 依然和 Debian 保持着紧密的联系,因为他继续在政治界和金融界推广此发行版。他偶尔也出现在电子邮件列表中,表达他对 Debian 的建议以及其支持 Debian 的新举措。
Last anecdotal point, it was Bruce who was responsible for inspiring the different “codenames” for Debian versions (1.1 — Rex, 1.2 — Buzz, 1.3 — Bo, 2.0 — Hamm, 2.1 — Slink, 2.2 — Potato, 3.0 — Woody, 3.1 — Sarge, 4.0 — Etch, 5.0 — Lenny, 6.0 — Squeeze, 7 — Wheezy, 8 — Jessie, 9 — Stretch, 10 — Buster, 11 (not released yet) — Bullseye, 12 (not released yet) — Bookworm, Unstable — Sid). They are taken from the names of characters in the Toy Story movie. This animated film entirely composed of computer graphics was produced by Pixar Studios, with whom Bruce was employed at the time that he led the Debian project. The name “Sid” holds particular status, since it will eternally be associated with the Unstable branch. In the film, this character was the neighbor’s child who always broke toys — so beware of getting too close to Unstable. Otherwise, Sid is also an acronym for “Still In Development”.