如果你对普通人说起GPL,往往会发现他们一点都不知道你在说什么。但是如果你在开源社区谈起GPL,特别是8月份在旧金山市说到GPL的时候,你会发现周围的人反应会非常不同,有的可能会对你老拳相向,有的可能跟你把酒言欢呢。
GPL是通用公共许可证的缩写,这个许可证最初是为了管理免费开源软件的使用而在15年前编写出来的。实际上,GPL许可证规定,如果任何公司或者个人使用了GPL保护的软件并对它进行了修改,那么那些修改的部分就同样必须是免费开源的。
在上个世纪九十年代初期,开源软件的概念还比较新颖,因此它需要一种许可证来对它进行管理。从大的方面来说,通用公共许可证确实很好地起到了那个作用。
但是随着开源运动的发展,通用公共许可证越来越难满足开源软件发展的要求。如今,开源软件已经变成了业界不可忽视的一股洪流。 Corporate America公司的服务器有三成都使用的是开源Linux操作系统。硬件厂商如TiVo公司也在其产品中使用了开源软件。全球各地的初创公司都希望在开源社区的支持下得到蓬勃发展。
但是免费软件的信徒们并没有处理好盈利的动力问题。结果,各方的分歧终于在上周举行的旧金山Linux世界大会上暴露无遗。一方以理查德斯托尔曼和他的自由软件联盟为代表。斯托尔曼口中所说的“free”并非是指“免费”,而是指“自由”。他认为所有的软件都应该让任何人都可以自由修改和使用。对他来说,这完全是一场维护正义之战。
另一方以“Linux之父”莱纳斯托瓦尔为代表。他和他的支持者们认为自由分享软件代码确实可以生产出最好的软件,但是如果有些人不想与他人分享他的代码,那也是无可厚非的。 软件厂商们对他的看法表示万分的支持。
但是最忙最累的可能要算埃文摩根了,他是自由软件联盟的代理人,他去年花了大半年的时间来编写新版本通用公共许可证,考虑到技术业界和商业界已经发生了翻天覆地的变化,新版本通用公共许可证试图将自由软件联盟和开源阵营的意见兼收并蓄,达成一致意见。
这不是一件简单的事。新版本许可证计划将经过3次草案修订才会定稿,在每次草案编写完成之后会留出一段时间供业界品评,开源社区中的任何人都有权提出修改意见。然后摩根会把那些修改意见收集起来,重新对许可证进行修改。在Linux世界大会期间,摩根说许可证修改的过程完全是社区内的各厂商深入检查自身的过程,它们必须回答的最重要的一个问题是:自由到底指的是什么?这种解决问题的办法也是一种开源的办法,它与修复软件漏洞不同的是,它的问题并不好解决,各方面的意见很难统一起来。摩根认为,这已经不仅仅是解决软件许可证的编写问题,而是关乎开源社区的发展问题。
惠普公司的Linux业务总裁克里斯蒂娜马蒂诺和开源开发实验室首席执行官斯图亚特科恩也认为这是一项艰巨而意义深远的事业。 但是这并不表示当第二版许可证草案在七月份发布的时候他们就会感到高兴。
其中两个最大的症结是专利权和数字版权管理问题。惠普公司的意见是,任何与通用公共许可证有关的部分都应该开源。换句话说,如果某公司将它的硬件与开源软件捆绑在一起销售,那么它就不应该再保留其专利权。惠普公司原以为第二版草案会对专利权进行一些规定,以减少开源软件对公司专利权造成的不利影响。 但是它发现第二版许可证草案仍然没有解决那个问题。
斯托尔曼也对硬件问题表示担忧。现在,越来越多的硬件产品开始使用Linux操作系统,但是硬件都受数字版权管理的保护以保证它上面运行的那些软件不被别人修改。 斯托尔曼认为限制人们修改硬件上运行的软件这种说法是合理的。但是托瓦尔认为,软件厂商没有资格限制用户的行为。开源开发实验室的总顾问迪亚内彼得说:“托瓦尔认为许可证只是一种为完成最终目标而制定的工具,最终所有的软件都应该变成开源免费软件。”
除非事情发生一定的变化,否则通用公共许可证最终只会增加开源社区的混乱,给业界留下一个更大的难题。实际上,通用公共许可证现在已经成为事实上的最为普遍的开源许可证,大约有75%的开源软件都受到它的保护。但是仍然有一些大型公司使用着其他的许可证,这让其他一些想把他们的产品与那些大公司的产品捆绑在一起的厂商们感到头疼不已。
经过几个月的工作、协商、草案编写和折中处理,双方又一次回到了起点。但是,没人愿意将问题绝对化。第三版许可证草案将于十月份出台,届时它将把现在讨论的这些意见都收纳进去。在自由软件联盟于明年三月份发布最终版本的通用公共许可证之前,双方还有45天的时间来对许可证进行修修补补。
开源业界的巨头们都默默地关注着事态的发展。 Linux的最大发行商红帽公司表示,在看到最终版本的许可证草案之前,它不想发表任何意见。而目前正将所有软件产品都变成开源软件的Sun公司也密切关注着事态的发展,并对通用公共许可证寄予了厚望。 MySQL公司首席执行官马腾米克斯也表示在所有工作完成之前无意发表什么看法,但是他相信双方至少都在向前进的方向努力迈进。他说:“从通用公共许可证的普及面宽度就可以说明它将对整个开源社区的成功发展作出不灭的贡献。”
说到通用公共许可证的普及应用,托瓦尔功不可没。许多大型开源公司并没有使用通用公共许可证,或者将它与其他许可证混合使用。 其中包括火狐公司、Eclipse软件联盟和阿帕奇软件联盟。
如果托瓦尔在Linux系统中不选择第三版通用公共许可证的话,那么自由软件联盟就跟开源业界没什么关系了。彼得说:“如果托瓦尔认为其中有利可图的话,他肯定会去做的,但是我想他现在可能还没有发现有什么有利可图的地方。”