MOZILLA PUBLIC LICENSE

MPL License,允許免費(fèi)重發(fā)布、免費(fèi)修改,但要求修改后的代碼版權(quán)歸軟件的發(fā)起者。這種授權(quán)維護(hù)了商業(yè)軟件的利益,,它要求基于這種軟件得修改無(wú)償貢獻(xiàn) 版權(quán)給該軟件。這樣,圍繞該軟件得所有代碼得版權(quán)都集中在發(fā)起開(kāi)發(fā)人得手中。但MPL是允許修改,無(wú)償使用得。MPL軟件對(duì)鏈接沒(méi)有要求。

BSD開(kāi)源協(xié)議(original BSD licenseFreeBSD licenseOriginal BSD license

BSD開(kāi)源協(xié)議是一個(gè)給于使用者很大自由的協(xié)議。基本上使用者可以"為所欲為",可以自由的使用,修改源代碼,也可以將修改后的代碼作為開(kāi)源或者專(zhuān)有軟件再發(fā)布。

但"為所欲為"的前提當(dāng)你發(fā)布使用了BSD協(xié)議的代碼,或則以BSD協(xié)議代碼為基礎(chǔ)做二次開(kāi)發(fā)自己的產(chǎn)品時(shí),需要滿(mǎn)足三個(gè)條件:

  1. 如果再發(fā)布的產(chǎn)品中包含源代碼,則在源代碼中必須帶有原來(lái)代碼中的BSD協(xié)議。
  2. 如果再發(fā)布的只是二進(jìn)制類(lèi)庫(kù)/軟件,則需要在類(lèi)庫(kù)/軟件的文檔和版權(quán)聲明中包含原來(lái)代碼中的BSD協(xié)議。
  3. 不可以用開(kāi)源代碼的作者/機(jī)構(gòu)名字和原來(lái)產(chǎn)品的名字做市場(chǎng)推廣。

BSD 代碼鼓勵(lì)代碼共享,但需要尊重代碼作者的著作權(quán)。BSD由于允許使用者修改和重新發(fā)布代碼,也允許使用或在BSD代碼上開(kāi)發(fā)商業(yè)軟件發(fā)布和銷(xiāo)售,因此是對(duì) 商業(yè)集成很友好的協(xié)議。而很多的公司企業(yè)在選用開(kāi)源產(chǎn)品的時(shí)候都首選BSD協(xié)議,因?yàn)榭梢酝耆刂七@些第三方的代碼,在必要的時(shí)候可以修改或者二次開(kāi)發(fā)。

Apache Licence 2.0Apache License, Version 2.0Apache License, Version 1.1Apache License, Version 1.0

Apache Licence是著名的非盈利開(kāi)源組織Apache采用的協(xié)議。該協(xié)議和BSD類(lèi)似,同樣鼓勵(lì)代碼共享和尊重原作者的著作權(quán),同樣允許代碼修改,再發(fā)布(作為開(kāi)源或商業(yè)軟件)。需要滿(mǎn)足的條件也和BSD類(lèi)似:

  1. 需要給代碼的用戶(hù)一份Apache Licence
  2. 如果你修改了代碼,需要再被修改的文件中說(shuō)明。
  3. 在延伸的代碼中(修改和有源代碼衍生的代碼中)需要帶有原來(lái)代碼中的協(xié)議,商標(biāo),專(zhuān)利聲明和其他原來(lái)作者規(guī)定需要包含的說(shuō)明。
  4. 如果再發(fā)布的產(chǎn)品中包含一個(gè)Notice文件,則在Notice文件中需要帶有Apache Licence。你可以在Notice中增加自己的許可,但不可以表現(xiàn)為對(duì)Apache Licence構(gòu)成更改。

Apache Licence也是對(duì)商業(yè)應(yīng)用友好的許可。使用者也可以在需要的時(shí)候修改代碼來(lái)滿(mǎn)足需要并作為開(kāi)源或商業(yè)產(chǎn)品發(fā)布/銷(xiāo)售。

GPLGNU General Public License

我們很熟悉的Linux就是采用了GPL。GPL協(xié)議和BSD, Apache Licence等鼓勵(lì)代碼重用的許可很不一樣。GPL的出發(fā)點(diǎn)是代碼的開(kāi)源/免費(fèi)使用和引用/修改/衍生代碼的開(kāi)源/免費(fèi)使用,但不允許修改后和衍生的代 碼做為閉源的商業(yè)軟件發(fā)布和銷(xiāo)售。這也就是為什么我們能用免費(fèi)的各種linux,包括商業(yè)公司的linux和linux上各種各樣的由個(gè)人,組織,以及商 業(yè)軟件公司開(kāi)發(fā)的免費(fèi)軟件了。

GPL協(xié)議的主要內(nèi)容是只要在一個(gè)軟件中使用("使用"指類(lèi)庫(kù)引用,修改后的代碼或者衍生代 碼)GPL 協(xié)議的產(chǎn)品,則該軟件產(chǎn)品必須也采用GPL協(xié)議,既必須也是開(kāi)源和免費(fèi)。這就是所謂的"傳染性"。GPL協(xié)議的產(chǎn)品作為一個(gè)單獨(dú)的產(chǎn)品使用沒(méi)有任何問(wèn)題, 還可以享受免費(fèi)的優(yōu)勢(shì)。

由于GPL嚴(yán)格要求使用了GPL類(lèi)庫(kù)的軟件產(chǎn)品必須使用GPL協(xié)議,對(duì)于使用GPL協(xié)議的開(kāi)源代碼,商業(yè)軟件或者對(duì)代碼有保密要求的部門(mén)就不適合集成/采用作為類(lèi)庫(kù)和二次開(kāi)發(fā)的基礎(chǔ)。

其它細(xì)節(jié)如再發(fā)布的時(shí)候需要伴隨GPL協(xié)議等和BSD/Apache等類(lèi)似。

LGPLGNU Lesser General Public License

LGPL是GPL的一個(gè)為主要為類(lèi)庫(kù)使用設(shè)計(jì)的開(kāi)源協(xié)議。和GPL要求任何使用/修改/衍生 之GPL類(lèi)庫(kù)的的軟件必須采用GPL協(xié)議不同。LGPL 允許商業(yè)軟件通過(guò)類(lèi)庫(kù)引用(link)方式使用LGPL類(lèi)庫(kù)而不需要開(kāi)源商業(yè)軟件的代碼。這使得采用LGPL協(xié)議的開(kāi)源代碼可以被商業(yè)軟件作為類(lèi)庫(kù)引用并 發(fā)布和銷(xiāo)售。

但是如果修改LGPL協(xié)議的代碼或者衍生,則所有修改的代碼,涉及修改部分的額外代碼和衍生 的代碼都必須采用LGPL協(xié)議。因此LGPL協(xié)議的開(kāi)源 代碼很適合作為第三方類(lèi)庫(kù)被商業(yè)軟件引用,但不適合希望以LGPL協(xié)議代碼為基礎(chǔ),通過(guò)修改和衍生的方式做二次開(kāi)發(fā)的商業(yè)軟件采用。

GPL/LGPL都保障原作者的知識(shí)產(chǎn)權(quán),避免有人利用開(kāi)源代碼復(fù)制并開(kāi)發(fā)類(lèi)似的產(chǎn)品

MITMIT

MIT是和BSD一樣寬范的許可協(xié)議,作者只想保留版權(quán),而無(wú)任何其他了限制.也就是說(shuō),你必須在你的發(fā)行版里包含原許可協(xié)議的聲明,無(wú)論你是以二進(jìn)制發(fā)布的還是以源代碼發(fā)布的.

Public Domain

公共域授權(quán)。將軟件授權(quán)為公共域,這些軟件包沒(méi)有授權(quán)協(xié)議,任何人都可以隨意使用它。

Artistic許可使作者保持對(duì)進(jìn)一步開(kāi)發(fā)的控制。

以下為對(duì)GPL協(xié)議的進(jìn)一步解釋?zhuān)?/p>

=================================================================================

GNU通用公共許可證(GNU General Public License)(英文通常以GNU GPL或是直接簡(jiǎn)短的以GPL表示),是一個(gè)廣泛被使用的自由軟體許可證,最初由理查德·斯托曼GNU計(jì)劃而撰寫(xiě)。此許可證最新版本為“版本3”,2007年6月29日發(fā)布。GNU寬通用公共許可證(GNU Lesser General Public License,一般簡(jiǎn)稱(chēng)LGPL)是改自GPL的另一個(gè)版本,其目的是為了應(yīng)用於一些軟體函式庫(kù)。

GPL給予了電腦程式

  自由

GPL授予程序接受人以下權(quán)利,或稱(chēng)“自由”:

  • 以任何目的運(yùn)行此程序的自由;
  • 以學(xué)習(xí)程序工作機(jī)理為目的,對(duì)程序進(jìn)行修改的自由(能得到源代碼是前提);
  • 再發(fā)行復(fù)制件的自由;
  • 改進(jìn)此程序,并公開(kāi)發(fā)布改進(jìn)的自由(能得到源代碼是前提)

相反地,隨版權(quán)所有軟件的最終用戶(hù)許可證幾乎從不授予用戶(hù)任何權(quán)利(除了使用的權(quán)利),甚至可能限制法律允許的行為,比如逆向工程

GPL與其他一些更“許可的”自由軟件許可證(比如BSD許可證)相比,主要區(qū)別就在于GPL尋求確保上述自由能在復(fù)制件及演繹作品中得到保障。它通過(guò)一種由斯托曼發(fā)明的叫Copyleft的法律機(jī)制實(shí)現(xiàn),即要求GPL程序的演繹作品也要在GPL之下。相反,BSD式的許可證并不禁止演繹作品變成專(zhuān)有軟件

由于某些原因,GPL成為了自由軟件開(kāi)源軟件的最流行許可證。到2004年4月,GPL已占Freshmeat上所列的自由軟件的約75%,SourceForge的約68%。類(lèi)似的,2001年一項(xiàng)關(guān)于Red Hat Linux 7.1的調(diào)查顯示一般的代碼都以GPL發(fā)布。著名的GPL自由軟件包括Linux核心和GCC

歷史

GPL由斯托曼撰寫(xiě),用于GNU計(jì)劃。它以GNU EmacsGDBGCC的許可證的早期版本為藍(lán)本。這些許可證都包含有一些GPL的版權(quán)思想,但僅只針對(duì)特定程序。斯托曼的目標(biāo)就是創(chuàng)造出一種四海之內(nèi)皆可使用的許可證,這樣就能為許多源代碼共享計(jì)劃帶來(lái)福音。GPL版本1就這樣,在1989年1月誕生。

1990年時(shí),因?yàn)橐恍?a >共享庫(kù)而出現(xiàn)了對(duì)比GPL更寬松的許可證的需求。所以當(dāng)GPL版本2在1991年6月發(fā)布時(shí),另一許可證——庫(kù)通用許可證(Library General Public License,簡(jiǎn)稱(chēng)LGPL)也隨之發(fā)布,并記作“版本2”以示對(duì)GPL的補(bǔ)充。版本號(hào)在LGPL版本2.1發(fā)布時(shí)不再相同,而LGPL也被重命名為GNU寬通用公共許可證(Lesser General Public License)以體現(xiàn)GNU哲學(xué)觀。

GPLv1

GPL版本1,即最初的版本,發(fā)布于1989年一月,其目的是防止那些阻礙自由軟件的行為, 而這些阻礙軟件開(kāi)源的行為主要有兩種(一種是軟件發(fā)布者只發(fā)布可執(zhí)行的二進(jìn)制代碼而不發(fā)布具有源代碼,一種是軟件發(fā)布者在軟件許可加入限制性條款)。因此 按照GPLv1,如果發(fā)布了可執(zhí)行的二進(jìn)制代碼,就必須同時(shí)發(fā)布可讀的源代碼,并且在發(fā)布任何基于GPL許可的軟件時(shí),不能添加任何限制性的條款。

GPL2

liberty-or-death Presentation。這章中申明道,如果哪個(gè)人在發(fā)布源于GPL的軟件的時(shí)候,同時(shí)添加強(qiáng)制的條款,以在一定程度上保障和尊重其它一些人的自由和權(quán)益(也就是說(shuō)在一些國(guó)家里,人們只能以二進(jìn)制代碼的形式發(fā)布軟件,以保護(hù)開(kāi)發(fā)軟件者的版權(quán)),那么他將根本無(wú)權(quán)發(fā)布該軟件。

到了1990年,人們普遍認(rèn)為一個(gè)限制性弱的許可證對(duì)于自由軟件的發(fā)展是有戰(zhàn)略意義上的好處的;因此,當(dāng)GPL的第二個(gè)版本(GPLv2)在1991年6月發(fā)布時(shí),與此同時(shí)第二個(gè)許可證程式庫(kù)GNU通用公共許可證(LGPL,the Library General Public License )也被發(fā)布出來(lái)并且一開(kāi)始就將其版本定為第2版本以表示其和GPLv2的互補(bǔ)性。這個(gè)版本一直延續(xù)到1999年,并分支出一個(gè)衍生的LGPL版本號(hào)為2.1,并將其重新命名為輕量級(jí)通用公共許可證(又稱(chēng)寬通用公共許可證)(Lesser General Public License)以反應(yīng)其在整個(gè)GNU哲學(xué)中的位置。

2005年,GPL版本3正由斯托曼起草,由伊本·莫格林軟件自由法律中心(Software Freedom Law Center)[1]提供法律咨詢(xún)。

斯托曼在2006年2月25日自由及開(kāi)源軟件開(kāi)發(fā)者歐洲會(huì)議的演講上說(shuō):([2]

在所有的改動(dòng)中,最重要的四個(gè)是:
  • 解決軟件專(zhuān)利問(wèn)題;
  • 與其他許可證的兼容性;
  • 源代碼分割和組成的定義;
  • 解決數(shù)字版權(quán)管理 (DRM) 問(wèn)題。

2006年,自由軟件基金會(huì)針對(duì)GPL的可能的修改開(kāi)始了12個(gè)月的公共咨詢(xún)。

GPLv3草稿[2]2006年1月16日開(kāi)始可用。版本2與3的非官方比較對(duì)照參見(jiàn):[3][4]

2007年3月28日正式啟用。

2007年6月29日自由軟件基金會(huì)正式發(fā)布了GPL第3版[3]

條款

以下是對(duì)GPL條款的一個(gè)通俗易懂的總結(jié)。而GPL原文文本才是真正法律上精確的。該文本的鏈接可從本頁(yè)底部獲得。

授予的權(quán)利

此GPL的條款和條件適用于任何收到GPL下的作品的人(即“許可證接受人”)。任何接受這 些條款和條件的許可證接受人都有修改、復(fù)制、再發(fā)行作品或作品的演繹版本的授權(quán)。許可證接受人可以對(duì)此項(xiàng)服務(wù)收取費(fèi)用 ,反之亦然。這一點(diǎn)是GPL與其他禁止商業(yè)用途的自由軟件許可證最大的不同。Stallman認(rèn)為自由軟件不應(yīng)限制其商業(yè)用途,同時(shí)GPL清楚地說(shuō)明了這 一點(diǎn)。

但GPL又規(guī)定發(fā)行者不能限制GPL授予的權(quán)利。例如,這禁止對(duì)軟件在單純沉默(消極默示)式協(xié)議或合同下的發(fā)行。GPL下的發(fā)行者同時(shí)也同意在軟件中使用的專(zhuān)利可以在其它GPL軟件中使用。

Copyleft

GPL不會(huì)授予許可證接受人無(wú)限的權(quán)利。再發(fā)行權(quán)的授予需要許可證接受人開(kāi)放軟件的源代碼,及所有修改。且復(fù)制件、修改版本,都必須以GPL為許可證。

這些要求就是copyleft,它的基礎(chǔ)就是作品在法律上版權(quán)所有。由于它版權(quán)所有,許可證接受人就無(wú)權(quán)進(jìn)行修改和再發(fā)行(除合理使用),除非它有一個(gè)copyleft條款。如果某人想行使通常被法律所禁止的權(quán)利,只需同意GPL的條款。相反地,如果某人發(fā)行軟件違反了GPL(比如不開(kāi)放源代碼),他就有可能被原作者起訴

copyleft利用版權(quán)法來(lái)達(dá)到與其相反的目的: copyleft給人不可剝奪的權(quán)利,而不是版權(quán)法所規(guī)定的諸多限制。這也是GPL被稱(chēng)作“被黑的版權(quán)法”的原因。

許多GPL軟件發(fā)行者都把源代碼與可執(zhí)行程序捆綁起來(lái)。另一方式就是以物理介質(zhì)(比如CD)為載體提供源代碼。在實(shí)踐中,許多GPL軟件都是在互聯(lián)網(wǎng)上發(fā)行的,源代碼也有許多可以FTP方式得到。

copyleft只在程序再發(fā)行時(shí)發(fā)生效力。對(duì)軟件的修改可以不公開(kāi)或開(kāi)放源代碼,只要不發(fā)行。注意copyleft只對(duì)軟件有效力,而對(duì)軟件的輸出并無(wú)效力(除非輸出的是軟件本身)。不過(guò)這在GPL版本3中可能會(huì)有改動(dòng)。

GPL是許可證

GPL設(shè)計(jì)為一種許可證,而不是合同。在英美法系國(guó)家,許可證與合同有法律上的明確區(qū)別:合同由合同法保障效力,而GPL作為一種許可證由版權(quán)法保障效力。不過(guò)在許多采用歐陸法系的國(guó)家并無(wú)此種區(qū)別。

GPL原理簡(jiǎn)單:在版權(quán)法下,你不遵守GPL的條款和條件你就沒(méi)有相應(yīng)權(quán)利。而作品在沒(méi)有GPL的情況下,版權(quán)法作為默認(rèn)條款發(fā)生效力,而不是作品進(jìn)入公有領(lǐng)域

版權(quán)所有人

GPL文本是版權(quán)所有的,且著作權(quán)人是自由軟件基金會(huì)。但是,自由軟件基金會(huì)沒(méi)有在GPL下發(fā)行作品的著作權(quán)(除非作者制定自由軟件基金會(huì)是著作權(quán)人)。只有著作權(quán)人才有權(quán)對(duì)許可證的違反進(jìn)行起訴。

自由軟件基金會(huì)允許人們使用以GPL為基礎(chǔ)的其他許可證,但不允許演繹的許可證未經(jīng)授權(quán)地使用GPL的前言。不過(guò)像這樣的許可證通常與GPL不兼容。[4]

GNU計(jì)劃創(chuàng)立的其他許可證包括:GNU寬通用公共許可證GNU自由文檔許可證

爭(zhēng)議

一個(gè)關(guān)于GPL重要的爭(zhēng)議是,非GPL軟件是否可以動(dòng)態(tài)鏈接到GPL庫(kù)。GPL對(duì)GPL作品的演繹作品在 GPL下發(fā)布規(guī)定很明確。但是對(duì)于動(dòng)態(tài)鏈接到GPL庫(kù)的作品是否是演繹作品就規(guī)定得不清楚了。自由和開(kāi)放源代碼社區(qū)為此分成兩派,自由軟件基金會(huì)認(rèn)為這種 作品就是演繹作品,但其他專(zhuān)家并不同意。這個(gè)問(wèn)題根本的并不關(guān)乎GPL本身,而是一個(gè)版權(quán)法如何定義演繹作品。美國(guó)聯(lián)邦上訴法院第九巡回審判庭在 Galoob v. Nintendo案對(duì)演繹作品嘗試定義,但最終沒(méi)有明確的結(jié)果。

不幸的是,許多開(kāi)發(fā)者覺(jué)得這是個(gè)技術(shù)問(wèn)題。但實(shí)際上這完全是法律問(wèn)題。不過(guò)由于迄今為止沒(méi)有案例表明有人以動(dòng)態(tài)鏈接的方式來(lái)繞過(guò)GPL的條款或者并被起訴,動(dòng)態(tài)鏈接的限制已經(jīng)是事實(shí)上地(de facto)有效,不論它是否是法律上地(de jure)有效。

2002年MySQL AB公司起訴Progress NuSphere侵犯版權(quán)和商標(biāo)。NuSphere被指以鏈接代碼的形式侵犯了著作權(quán)。最終此案以調(diào)解結(jié)束。在聽(tīng)證期間,法官“認(rèn)為沒(méi)有什么原因”(不管是否是動(dòng)態(tài)鏈接)會(huì)使得GPL失去法律效力。

2003年8月,SCO Group稱(chēng)他們認(rèn)為GPL沒(méi)有法律效力,且準(zhǔn)備就在Linux核心中使用的SCO Unix代碼進(jìn)行訴訟。參見(jiàn)SCO訴IBM

2004年4月,在SiteCom拒絕停止發(fā)行Netfilter項(xiàng)目的GPL軟件后,慕尼黑地區(qū)法庭據(jù)對(duì)GPL條款的侵犯判定對(duì)SiteCom進(jìn)行臨時(shí)性禁令(訴前停止侵犯專(zhuān)利權(quán)行為的措施)。同年7月,法庭確認(rèn)此勒令為對(duì)SiteCom最終判決。此判決明顯的印證了自由軟件基金會(huì)的法律顧問(wèn)伊本·莫格林的預(yù)言:

“被告侵犯了原告的著作權(quán):提供了軟件netfilter/iptables的廣告及下載,但沒(méi)有遵守GPL的條款。可以說(shuō),如果被告有許可證許 可,這些行為是完全合法的……原被告就GPL是否達(dá)成協(xié)議這是一個(gè)獨(dú)立的問(wèn)題。如果當(dāng)事人沒(méi)有同意,被告將沒(méi)有復(fù)制、發(fā)行、公開(kāi) ‘netfilter/iptables’的權(quán)利。”

此判決十分重要,因?yàn)樗侨蚴状畏ㄍゴ_認(rèn)GPL是有法律效力的。

2005年5月,Daniel Wallace于美國(guó)聯(lián)邦印第安納南區(qū)地方法院起訴自由軟件基金會(huì),因?yàn)槎邔?duì)GPL是否是非法意見(jiàn)不一。后訴訟于3月結(jié)束,因?yàn)閃allace沒(méi)有有效的反托拉斯陳述。法庭注意到“GPL鼓勵(lì),而不是反對(duì)電腦操作系統(tǒng)的自由競(jìng)爭(zhēng)和發(fā)行,這直接使消費(fèi)者受益。”[5]Wallace被拒絕改變?cè)V由,并被要求支付訴訟費(fèi)用。

兼容性

大多數(shù)自由軟件許可證,比如MIT/X許可證BSD許可證LGPL,都是“GPL兼容的”,即它們的代碼與GPL代碼混用無(wú)沖突(但新代碼則是GPL下的)。但是有某些開(kāi)源軟件許可證不是GPL兼容的。通常意見(jiàn)是開(kāi)發(fā)者僅只使用GPL兼容的許可證,以免法律問(wèn)題。

參見(jiàn)軟件許可證列表以查證兼容性。

批評(píng)

2001年微軟首席執(zhí)行官史蒂夫·巴爾默稱(chēng) Linux為“癌癥”,因?yàn)镚PL的影響。微軟批評(píng)者指出,微軟憎惡GPL的真正原因是因?yàn)閷?duì)微軟的“包圍、擴(kuò)展、消滅”策略起了反作用。注意微軟已以 GPL為許可證發(fā)行了SFU(Microsoft Windows Services for UNIX)中所包含的部分組件,例如GCC

GPL的批評(píng)者常常認(rèn)為GPL是有“傳染性”的“病毒” ,因?yàn)镚PL條款規(guī)定演繹作品也必須是GPL的。由于“演繹作品”通常被解釋為包含GPL代碼或動(dòng)態(tài)鏈接到GPL庫(kù)(如上)的軟件,“病毒說(shuō)”來(lái)源于 GPL對(duì)于許可證的強(qiáng)制繼承的要求。這正是GPL與BSD式許可證的哲學(xué)思想上的差異。GPL的支持者確信自由軟件世界應(yīng)具有自我保護(hù)能力和可持續(xù)發(fā)展性 ——確保自由軟件的演繹作品同樣“自由”,但其他人認(rèn)為自由軟件應(yīng)給予“所有人”最大的自由。


文章來(lái)源:http://x-spirit.spaces.live.com/Blog/cns!CC0B04AE126337C0!822.entry