大约一个多月前,Fedora 项目 宣布 计划用新的协议替换现有的 Fedora 个人贡献者许可协议 (FICLA),我们将其富有想象力地命名为 Fedora 项目贡献者协议 (FPCA)。在从 Fedora 社区收集到一些关于初稿的反馈后,Fedora 项目发布了 修订草案。
一些背景信息:在许多情况下,希望为 Fedora 做贡献的个人必须首先在 Fedora 账户系统中创建一个账户,这个过程通常需要新的贡献者同意 FICLA。FICLA 的法律术语背后的基本思想是,贡献者同意授予红帽和下游 Fedora 接收者慷慨的权限,涵盖他们在贡献中可能拥有的(所谓的)知识产权。
FICLA 已经使用了多年,它主要基于 Apache 软件基金会的个人 CLA,并进行了一些细微的修改。据我所知,自 Apache CLA 采用以来的几年里,它在 ASF 项目中运行良好,而 Fedora 并不是唯一重复使用其文本的项目。不难看出,为什么最初会认为 Apache CLA 是 Fedora 的一个良好模型。在可以质疑的假设下,即某种形式的正式贡献协议在任何情况下都是可取的,当时和现在,具有真正自由软件血统的模型都很少。
然而,事后看来,Apache 风格的 CLA 对于 Fedora 来说是一个糟糕的选择。这反映了 ASF 项目和 Fedora 之间一些重要的技术文化差异。从像 Fedora 这样的 Linux 发行版项目的角度来看,ASF 项目是上游。对 ASF 项目的典型贡献是由贡献者创建的原创材料。Apache CLA 的编写考虑到了这一点。对于某些重要的 Fedora 子项目,Fedora 在某种意义上是其自身的上游,并且 Fedora 社区成员的许多宝贵的、不可或缺的贡献绝对类似于我所说的典型的 Apache 贡献。然而,公平地说,Fedora 贡献的中心形式涉及打包其他上游项目创建的代码。虽然这种贡献涉及贡献者创建的原创材料(例如,spec 文件),但它将主要由他人创建和拥有版权的材料组成。
不出所料,事实证明,将 Fedora 贡献的这种多样性映射到 FICLA 的面向 Apache 的条款和条件是笨拙和困难的。为了理解 FICLA 如何应用于软件包维护者的工作,Fedora 社区成员不时表达了担忧,即 FICLA 将以某种方式取代管辖上游代码的先前存在的许可条款,或者会迫使贡献者授予红帽特殊的许可许可,这与他们自己更严格的许可偏好相悖。我们知道 FICLA 阻止了一些 Fedora 用户成为贡献者。
Apache CLA 核心的广泛许可授予在
ASF 项目的背景下是不足为奇的。它与
Apache 许可证 2.0 非常匹配,Apache 许可证 2.0 是 ASF 项目的标准出站许可证,以至于我想知道为什么 ASF 不直接要求其贡献者根据该出站许可证许可他们的贡献。ASF 项目开发人员本身倾向于将宽松许可置于 Copyleft 之上,作为一项原则。但是 Fedora 贡献者社区与 Apache 开发人员社区截然不同。当然,Fedora 有更大比例的贡献者倾向于相对较强的 Copyleft 许可证(尤其是 GPL),并且不赞成自由软件的私有化。因此,虽然 Apache CLA 非常能反映其开发者文化,但 FICLA 和 Fedora 贡献者文化却不能这么说。
为了应对这些问题,近年来,Fedora 项目一直试图以自由和创造性的方式解释 FICLA,使其更好地符合其贡献者社区的期望及其技术任务的性质。新的 FPCA 旨在将这种解释编纂成一份从头开始编写的文件。
FPCA 以最小化原则为指导。与 FICLA 不同,贡献者未编写的任何内容都不在 FPCA 的范围内(我们将“贡献”定义为排除此类材料)。此外,FPCA 不会影响任何已经附加了明确许可条款的原始贡献(当然,这些条款必须符合 Fedora 法律准则,以便贡献可以被 Fedora 使用)。对于剩下的任何东西——即,贡献者的没有明确许可的原创作品——FPCA 规定默认的自由许可证将适用。对于代码,默认许可证是大多数人称之为(更好或 更糟)MIT 许可证 的最流行版本。对于非代码“内容”,默认许可证是 CC-BY-SA。选择 MIT 许可证作为代码的许可证,是因为它是当今使用最广泛的宽松 FLOSS 许可证之一,没有已知的许可证不兼容性。反对对其贡献应用非 Copyleft 许可证的贡献者可以指定 GPL 等许可证。至于 CC-BY-SA,它已成为 Fedora 社区非常青睐的非软件材料许可证;例如,CC-BY-SA 现在是 Fedora 文档和 Fedora wiki 的出站许可证。
在对 FPCA 初稿的反馈中表达的担忧之一是在 GPL 管辖的其他作品中重用默认的 CC-BY-SA 许可内容的问题,因为这两种复杂的 Copyleft 许可证之间存在不兼容性。在第二稿中,我们通过使默认内容许可证为 CC-BY-SA 加上在 GPL 下使用贡献的额外许可来解决这个问题。我喜欢我们在这里的法律技巧,但我想知道是否有更简单的解决方案。
我将在八月份的 LinuxCon 上就开源项目贡献政策这一主题发表演讲。在过去几年中,我与 Tom 'spot' Callaway 合作处理与 FICLA 解释和起草 FPCA 相关的问题的经历,深刻地影响了我对这个话题的看法,包括我对那些接触 FLOSS 文化有限的公司的最大化主义方法的价值的怀疑。
评论已关闭。