GPL牵涉的法律案件回顾
须知RMS所做的远不止是开发了GNU项目以及确定了GNU GPL许可协议。为了自由软件的推广,RMS在1985年创建了自由软件基金会(Free Software Foundation,FSF),并一直致力于解决自由软件运动相关的法律和结构问题。
可想而知,GPL在推出之后并开始流行的十多年间成为了很多专有软件厂商的眼中钉。最早的一起直接针对GPL的法律诉讼发生在2003年8月,身为原告方的SCO Group以Linux内核中使用了IBM AIX代码,而AIX代码又使用了SCOUnix代码为由,将IBM告上了法庭。这一举动激发了Linux社区的公愤,IBM继而联手红帽针对SCO提起反诉与上诉;之后SCO开始恐吓不愿撤销SCOUnix使用权的Linux用户,并更进一步展开了对Novell、AutoZone和DaimlerChrysler的诉讼。这一系列诉讼逐渐演变成了一场旷日持久的战争。
这场战争的战场之一就在于GPL:根据SCO的申诉,SCOUnix的源代码是当时SCO的一些员工私自按照GPL发布的,因此不具备法律效力。SCO的发言人还进一步表示,“GPL违背美国宪法,还有版权,反托拉斯,及出口管制等法令。”但是,整个事情还要更加复杂:Unix原本是AT&T卖给Novell而Novell又卖给SCO的,因此自由软件和开源社区反过来质疑SCO是否真正拥有Unix的所有权;而FSF也站出来,依据GPL的条文捍卫Linux用户不受恐吓的权利。
美国法院最终并没有在GPL许可协议上进行定论,但数年间的法律判决基本都对SCO不利,2005年的判决中甚至对SCO没有提供侵权代码的证据表示了直白的鄙夷。SCO最终在2007年申请了破产保护,并希望卖出自己的Unix产品线,但这似乎也不可能了:美国法院在那一年宣判Unix属于Novell,并在最近的2010年3月31日重复了这个判决。
虽然这场战争的主战场与GPL关系不大,但Linux一方的胜利还是为GPL增添了一定力量。在2007年,一个FLOSS一方的叫做SFLC(Software Freedom LawCenter,软件自由法律中心)的法律团体以违反GPL协议为由,代表BusyBox的两位开发者将MonsoonMultimedia软件厂商告上了法庭。
在此之前,针对违反GPL协议的处理方法一直是由FSF等开源组织私下沟通解决的,因此此案成为了美国第一例因GPL而立案的案件。不过,这宗诉讼最后以双方庭外和解的方式结束,GPL也因此失去了一次验证其法律有效性的机会。
为什么社区对GPL如此青睐?
GPL是一个代表了RMS的Copyleft理念的许可协议,在各种开源许可协议中属于最为严格的一个,可以说是直接阻碍了开发者通过贩卖版权和专利软件这种传统的软件赚钱营生。但是为什么在这么多的开源项目当中,使用GPL协议的项目占据了一半以上的高比例呢?由于开发者大多数专注于开发本身,而对许可协议这个概念并不十分重视,所以有些项目的发起人在没有进行深入了解的时候直接选取了流行的GPL协议,这是原因之一。不过有很多社区人士则明确的表达过自己选择GPL的理由——
“GPL代表了自由。”
“我使用GPL,因为微软讨厌它。我不用BSD,因为微软喜欢它。”
“GPL意味着分享,而BSD/MIT协议意味着偷窃。当然,这取决于你如何定义分享与偷窃!”
众多观点之中,Linux之父Linus Torvalds的说明毫无疑问是值得了解的。在2008年的一次访谈中,Linus对许可协议的选择是这样评论的:
“我相信GPL(尤其是v2)是一个协同工作的绝佳模式——所有的人分享他们的代码,同时确保没有浑水摸鱼者能够利用他人的工作成果来为自己取得好处——你使用自己贡献的源代码来为你所获得的源代码进行“支付”。我将其称之为tit-for-tat模式,这种模式不仅适用于软件界,也同样在经济学与博弈论中十分出名。
不过这种tit-for-tat模式并非是所有人的需求。比如说,如果你隶属标准委员会,你只是希望能够借由一段开源代码的传播来推广一个标准,而并不介意这段代码是否会被用在专有软件中盈利,那么Apache或BSD协议则比较合适。
即使单纯是从理性的角度来看,不同许可协议的存在也都是合理的。同时我也要说,程序员们并非在任何时刻都是理性的。自负的心理,个人的特殊需求,都是导致众多有细微差别的许可协议诞生的原因。
不过我们要知道,有选择是件好事!而且非常流行的许可协议并不是那么多,所以基本上没有什么可困扰的。”
讲到这里,相信大家对于GNUGPL开源许可协议的由来和使用情况已经有了相当的了解。当然正如同上面介绍的,在开源运动的发展历程中,GPL并非是最早诞生的许可协议,而且随着时间的推移与各种需求的影响,社区中出现了很多其他的开源许可协议,其中也有不少是由GPL修改而来的。这些其他的许可协议是如何诞生,它们和GPL有什么不同,而社区又为什么会选择这些许可协议呢?我们在下一篇文章中会继续介绍。
9 7 3 1 2 4 8 :