各種開源協議的詳細介紹

GPL

在自由軟件所使用的各種許可證之中,最爲人們注意的也許是通用性公開許可證(General Public License,簡稱GPL)。

GPL同其它的自由軟件許可證一樣,許可社會公衆享有:運行、複製軟件的自由,發行傳播軟件的自由,獲得軟件源碼的自由,改進軟件並將自己作出的改進版本向社會發行傳播的自由。 
GPL還規定:只要這種修改文本在整體上或者其某個部分來源於遵循GPL的程序,該修改文本的 整體就必須按照GPL流通,不僅該修改文本的源碼必須向社會公開,而且對於這種修改文本的流通不准許附加修改者自己作出的限制。因此,一項遵循GPL流通 的程序不能同非自由的軟件合併。GPL所表達的這種流通規則稱爲copyleft,表示與copyright(版權)的概念“相左”。

GPL協議最主要的幾個原則:

1、確保軟件自始至終都以開放源代碼形式發佈,保護開發成果不被竊取用作商業發售。任何一套軟 件,只要其中使用了受 GPL 協議保護的第三方軟件的源程序,並向非開發人員發佈時,軟件本身也就自動成爲受 GPL 保護並且約束的實體。也就是說,此時它必須開放源代碼。

2、GPL 大致就是一個左側版權(Copyleft,或譯爲“反版權”、“版權屬左”、“版權所無”、“版責”等)的體現。你可以去掉所有原作的版權 信息,只要你保持開源,並且隨源代碼、二進制版附上 GPL 的許可證就行,讓後人可以很明確地得知此軟件的授權信息。GPL 精髓就是,只要使軟件在完整開源 的情況下,儘可能使使用者得到自由發揮的空間,使軟件得到更快更好的發展。

3、無論軟件以何種形式發佈,都必須同時附上源代碼。例如在 Web 上提供下載,就必須在二進制版本(如果有的話)下載的同一個頁面,清楚地提供源代碼下載的鏈接。如果以光盤形式發佈,就必須同時附上源文件的光盤。

4、開發或維護遵循 GPL 協議開發的軟件的公司或個人,可以對使用者收取一定的服務費用。但還是一句老話——必須無償提供軟件的完整源代碼,不得將源代碼與服務做捆綁或任何變相捆綁銷售。

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

LGPL


GNU 較寬鬆公共許可證

1999.2, 第 2.1 版

版權所有 (C) 1991, 1999 Free Software Foundation, Inc.
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

允許每個人複製和發佈本授權文件的完整副本,
但不允許對它進行任何修改。

[這是第一次發表的較寬鬆公共許可證 (Lesser GPL) 版本。它同時也可視爲 GNU 函數庫公共許可證 (GNU Library Public License) 第 2 版的後繼者,故稱爲 2.1 版]

本版本由 Leo-Hong (leohca (at) yahoo.com) 翻譯整理, Chao-Hong Liu 校正.


導言


大多數軟體許可證決意剝奪您共享和修改軟體的自由。相反的,GNU 通用公共許可證力圖保證您共享和修改自由軟體的自由 —— 保證自由軟體對所有使用者都是自由的。

這個許可證,較寬鬆公共許可證,適用於一些由自由軟體基金會與其他決定使用此許可證的軟體作者,所特殊設計的軟體套件 —— 象是函數庫。您也可以使用它,但我們建議您事先仔細考慮,基於以下的說明是否此許可證或原來的通用公共許可證在任何特殊情況下均爲較好的方案。

當我們談到自由軟體時,我們所指的是自由,而不是價格。我們的 GNU 通用公共許可證是設計用以確保使您有發佈自由軟體備份的自由(如果您願意,您可以對此項服務收取一定的費用);確保您能收到程式原始碼或者在您需要時能得 到它;確保您能修改軟體或將它的一部分用於新的自由軟體;而且還確保您知道您可以做上述的這些事情。

爲了保護您的權利,我們需要作出限制:禁止任何人否認您上述的權利,或者要求您放棄這些權利。如果您發佈軟件的副本,或者對之加以修改,這些規定就轉化爲您的責任。

例如,如果您發佈此函數庫的副本,不管是免費還是收取費用,您必須將您享有的一切權利給予接受者;您必須確保他們也能收到或得到原始程式碼;如果您將此函數庫與其他的程式碼連結,您必須提供完整的目的對象文件和程序(object file)給接受者,則當他們修改此函數庫並重新編譯過後,可以重新與目的檔連結。您並且要將這些條款給他們看,使他們知道他們有這樣的權利。

我們採取兩項措施來保護您的權利: (1)用版權來保護函數庫。並且,(2)我們提供您這份許可證,賦予您複製,發佈和(或)修改這些函數庫的法律許可。
爲了保護每個發佈者,我們需要非常清楚地讓每個人明白,自由函數庫是沒有擔保責任的。如果由於某人修改了函數庫,並繼續加以傳播,我們需要它的接受者明白:他們所得到的並不是原始的版本。故由其他人引入的任何問題,對原作者的聲譽將不會有任何的影響。

最後,由於軟體專利不斷地威脅自由軟體的存在,我們希望商業公司無法藉由自專利持有者取得一個受限的許可證,而有效地限制自由軟體的使用者。因此,我們堅持一個函數庫所能取得的任何專利,必須與本許可證所聲明的“完全自由使用”一致。
<20040222> 
大部分的 GNU 軟體,包括一些函數庫,是受到原來的 GNU 通用公共許可證的保護。本許可證, GNU 較寬鬆通用公共許可證,適用於特殊設計的函數庫,且與原來的通用公共許可證有很大的不同。我們在特定的函數庫中使用它,以准許非自由的程式可以與這些函數 庫連結。 當一個程式與一個函數庫連結,不論是靜態連結或使用共享函數庫,二者的結合可以合理地說是結合的作品,一個原來的函數庫的衍生品。因此,原來的通用公共許 可證只有在整個結合品滿足其自由的標準時,才予許連結。較寬鬆通用公共許可證則以更寬鬆的標準允許其他程式碼與本函數庫連結。

我們稱此許可證 "較寬鬆" 通用公共許可證,是因爲它比起原來的通用公共許可證對使用者的自由做到較少的保護。在與非自由軟體競爭時,它也提供其他自由軟體的寫作者較少的優勢。這些 不利之處正是我們使用原來的通用公共許可證於許多函數庫的理由。然而,較寬鬆的許可證可在某些特殊場合下帶來好處。 例如,在少數情況下,可能會有特殊的需要而鼓勵大家儘可能廣泛地使用特定的函數庫,因而使它成爲實際上的標準。爲了達到此目標,必須允許非自由的程式使用 此函數庫。一個較常發生的情況是一個自由的函數庫與一個被廣泛使用的非自由函數庫做相同的工作,在此情況下,限制只有自由軟體可以使用此自由函數庫不會有 多少好處,故我們如用了較寬鬆通用公共許可證。

在其他情況下,允許非自由程式使用特定的函數庫,可以讓更多的人們使用自由軟體的大部分。例如,允許非自由程式使用 GNU C 函數庫可以讓更多的人們使用整個 GNU 作業系統,以及它的變形,GNU/Linux 作業系統。

儘管較寬鬆通用共公許可證對使用者的自由是較少的保護的,它卻能確保與此函數庫連結的程式的使用者擁有自由,而且具有使用修改過的函數庫版本來執行該程式的必要方法。

以下是複製、發佈、以及修改的精確條款與條件。請注意 "基於函數庫的作品" 以及 "使用函數庫的作品" 之間的差異:前者包含來自函數庫修改過的原始碼;而後者則必須與函數庫結合才能執行。


有關複製,發佈和修改的條款和條件


0. 本許可證適用於任何軟體函數庫,或其他包含了由版權所有者加入的注意事項的程式,或其他有公信力的團體宣稱其程式可以在較寬鬆通用公共許可證 (也稱之爲 "本許可證") 的條款下發布。每一位許可證接受者以 "您" 來稱呼。

一個 "函數庫" 意指一些軟體函數的集合,以及或準備好的資料以方便與應用程式 (其使用了其中某些函數與資料) 連結形成可執行的程式。

以下,"函數庫" 一詞指的是任何在本條款下發布的這一類軟體函數庫或作品,一個 "基於本函數庫的作品" 意指函數庫或任何在版權法下的衍生作品:也就是說,一個包含了本函數庫或其一部分的作品,可以是原封不動的,或經過修改的,和/或直接翻譯成其他語言 的。(在下文中,翻譯是不受限地包含在 "修改" 的條款中。)

作品的 "原始碼" 意指對作品進行修改最優先擇取的形式。對函數庫而言,完整的原始碼意指所有模組的所有原始程式,加上有關的介面的定義,加上控制函數庫的安裝和編譯的 script。

本許可證條款不適用於複製,發佈和修改以外的活動。這些活動超出這些條款的範圍。使用本函數庫來執行本程式的動作不受條款的限制,而程式的輸出只有在其內容所構成的作品是基於本函數庫時 (與在什麼樣的工具中使用本函數庫來輸出無關) ,這一條款才適用。以上是否爲真則取決於本函數庫具體用來做什麼。

1. 只要您在每一程式副本上明顯和恰當地宣告版權聲明和不承擔擔保的聲明,並保持此許可證的聲明和沒有擔保的聲明完整無損,並和程式一起給其他每位程式接受者一份許可證的副本,您就可以用任何媒體複製和發佈您收到的函數庫的完整原始碼。

您可以爲轉讓副本的實際行動收取一定費用。您也可以選擇提供擔保以換取一定的費用。

2. 只要您同時滿足下面的所有條件,您就可以按前面第一款的要求修改函數庫的一個或幾個副本或它的任何部分,以此形成基於此函數庫的作品,並且複製和發佈這一經過修改的程式或作品:


被修改的作品本身必須是一個軟體函數庫。

您必須在修改過的檔案中附有明確的說明:您修改了此一檔案及任何修改的日期。

您必須讓整個作品允許第三方在此許可證條款下可以免費使用。

如果修改過的函數庫其某個設備使用到了「使用本函數庫的應用程式」所提供的函數或資料表格,卻不是當此設備被呼叫時以參數列傳入時,則您必須確實做到,當應用程式不提供這樣的函數或表格時,則此設備依舊能工作,且其執行的任何目的仍然有意義。
(例如,一個函數庫的函數用來計算平方根,其目的是有完整的定義且與應用程式是無關的。因此, 2d 小節要求任何本函數會使用的,由應用程式所提供的函數或表格必須是選擇性的:如果應用程式不提供的話,則計算平方根的函數必須依舊能計算平方根)

這些要求適用於整個修改過的作品。如果能夠確定作品的一部分並非本函數庫的衍生產品,且可以合理地單獨考慮並將它與原作品分開的話,則當您將它作爲獨立的 作品發佈時,它不受此許可證和其條款的約束。但是當您將這部分與基於本函數庫的作品一同發佈時,則整個套件將受到本許可證條款約束,其對於其他許可證持有 人的使用範圍擴大到整個產品,也就是套件的每個部分,不管它是誰寫的。

因此,本條款的意圖不在於索取權利,或剝奪完全由您完成的作品的權利,而是履行權利來控制基於本函數庫的集體作品或衍生作品的發佈。 此外,將與本函數庫無關的作品和本函數庫 (或基於本函數庫的作品) 一起放在貯存媒體或發佈媒體的同一捲上,並不導致將其他作品置於此許可證的約束範圍之內。

3. 對於一個函數庫的副本,您可以選擇性地使用原來的 GNU 通用公共許可證上的條款來取代本許可證上的條款。如果您要這麼做,您必須修改所有的參考到本許可證的注意事項,使它們指向原來的 GNU 通用公共許可證,第二版,以取代本許可證(如果有比第二版的原來的 GNU 通用公共許可證更新的版本出現的話,則如果您願意的話可以特別指明使用新版)。請不要對這些注意事項做出其他的改變。

一旦在一個副本上做了這樣的改變,則該副本就無法撤回這樣的改變,故原來的 GNU 通用公共許可證將適用於所有後續的副本以及由此副本衍生出來的作品。

此一選擇性適用於當您想要將一部分的函數庫原始碼複製到一個非函數庫的程式使用時。

4. 您可以以目標碼或可執行形式複製或發佈本函數庫 (或符合第 2 款,基於本函數庫的作品),只要您遵守前面的第 1、2 款,並同時提供完整的相關機器可讀的原始碼,而這些原始碼必須在前面的第 1 與第 2 款條件下,在一般習慣上用來做軟體交換的媒體上發佈。

如果所發佈的目標碼是由指定的地點提供拷貝索取,那麼由同一地點所提供等價的原始碼拷貝索取可以算作原始碼的發佈,即使第三方不強求與目標碼一起復制原始碼。

5. 一個程式若包含不經任何部分修改的函數庫,但卻是設計經由編譯或連結的方式與本函數庫一同工作者,稱之爲 "使用函數庫的作品"。這樣的一個作品,嚴格地說,並非本函數庫的衍生作品,因而不在本許可證的範圍之內。

然而,將 "使用函數庫的作品" 與本函數庫連結而產生可執行程式,則是本函數庫的衍生品 (因爲它包函了本函數庫的一部分),而不是 "使用函數庫的作品",因此其可執行程式包含在本許可證的範圍內。第 6 款說明了發佈此可執行程式的條款。

當 "使用函數庫的作品" 使用了函數庫部分的標頭檔內容時,則此作品即使其原始碼不屬於本函數庫的衍生品,但其目標碼仍然是。這一點是否爲真特別在是否本作品可以在不需要本函數庫即可連結,或者是否該作品本身也是一個函數庫時特別明顯。

如果這樣的目標檔只使用數字參數、資料結構層級與附屬品、以及小巨集和小內□式 (小於或等於十行) ,則此目標檔的使用是不受限的,不論是否它是合法的衍生作品。 (但可執行程式若包函此目標檔以及一部分的函數庫,仍然將在第 6 款的規定下)

否則的話,如果本作品是本函數庫的衍生品,您必須在第 6 款的規定下發布該作品的目標碼。任何包含該作品的可執行程式也在第 6 款的範圍內,不論它們是否直接與本函數庫連結。

6. 做爲上述條款的例外情況,您也可以將 "使用函數庫的作品" 與本函數庫結合或連結,以產生包含部分本函數庫的作品,並在允許使用者自身使用時可以修改該作品,以及在對修改進行反組譯除錯的情況下,您可以依照您的選擇發佈該作品。

您必須在每個作品的副本突顯出如下的注意事項:本函數庫在作品中被使用,以及本函數庫以及它的使用是在本許可證的規定下。您必須提供本許可證的副本。如果 該作品在執行時顯示版權聲明,您必須在其中包含本函數庫的版權聲明,以及指引使用者取得本許可證的副本。同時,您必須做到以下其中一件事: 


必須將完整的機器可讀的函數庫原始碼包含在該作品中,包括任何該作品使用到的改變 (這些改變必須在前述第 1 與第 2 款的要求下發布);而且,如果該作品是一個與函數庫連結的「完整的、機器可□的 "使用函數庫的作品"」,則要有目標碼和/或原始碼,如此使用者可以修改本函數庫且可以重新連結,以產生包函修改過的函數庫的修改過的可執行程式。 (理所當然的若使用者修改了函數庫的檔案定義內容時,則該作品不必然可以重新編譯以使用修改過的定義。)

在與函數庫連結時使用適當的分享函數庫連結機制。一個適當的機制是: (1) 在執行時使用已存在於使用者的電腦中的函數庫副本,而不是將函數庫的函數複製到可執行程式裏,以及 (2) 如果使用者安裝了一份修改過的函數庫,只要修改過的版本在介面上與該作品在編譯連結時所用的版本是相容的,則該執行程式可以與修改過的函數庫運作良好。

在該作品內提供書面報價,有效期不少於三年,以提供同樣的使用者上述第 6a 款中的內容,費用不得超過該程式發佈的實際成本。 如果所發佈的作品是由指定的地點提供拷貝索取,則由同一地點提供上述內容的等價拷貝索取。

確定使用者已經收到該作品的一份複製,或是您已經寄給該使用者一份複製品。
對於一個可執行程式,其所需的 "使用函數庫的作品" 的形式必須包括任何要從中再產生可執行程式時所需的資料與工具程式。然而,有一個特殊例外,其所發佈的內容不需要包括任何一般與「可執行本程式的作業系統」的主要部分 (如編譯器、核心等) 一起發佈的部分 (不論是原始碼或可執行碼),除非這些組成部分和可執行作品結合在一起。

有一個可能情況是,這些要求與其他通常不與作業系統在一起的私有函數庫的版權限制相牴觸,這樣的牴觸表示您不能將它們與本函數庫一起用於您發佈的可執行程式中。

7. 您可以將使用本函數庫的函數庫設備,以及其他不在本許可證範圍內的函數庫,對等地放入一個單獨的函數庫中,並在基於本函數庫的作品以及其他函數庫在其他狀態下同意可以個別發佈,以及您做到以下兩點的情況下,您可以發佈此結合的函數庫:


將基於本函數庫的作品單獨不與其他函數庫設備結合地,與此結合的函數庫一同發佈。該作品必須在上述條款的規定下發布。

在此結合的函數庫中明顯地指出其中一部分的作品是基於本函數庫,並且說明那裏可以找到同樣不具結合形式的作品。 
8. 除非您明確按許可證提出的要求去做,否則您不能複製、修改、轉發許可證、與本函數庫連結、和發佈本函數庫。任何試圖用其他方式複製、修改、轉發許可證、與 本函數庫連結、和發佈本函數庫是無效的,而且將自動結束許可證賦予您的權利。然而,對那些從您那裏按許可證條款得到副本和權利的人們,只要他們繼續全面履 行條款,許可證賦予他們的權利仍然有效。

9. 您沒有在許可證上簽字,因而您沒有必要一定接受此一許可證。然而,沒有任何其他東西賦予您修改和發佈本函數庫及其衍生作品的權利。如果您不接受許可證,這些行爲是法律禁止的。因此,如果您修改或發佈函數庫 (或任何基於函數庫的作品) ,您就表明您接受這一許可證以及它的所有有關複製、發佈和修改本函數庫或基於它的作品的條款和條件。

10. 每當您重新發布函數庫 (或任何基於函數庫的作品) 時,接受者自動從原始許可證頒發者那裏接到受這些條款和條件支配的複製、發佈、連結或修改本函數庫的許可。您不可以強迫接受者履行除了這裏賦予他們的權利之外的其他限制。您也沒有強求第三方履行許可證條款的義務。

11. 如果由於法院判決或違反專利的指控或任何其他原因 (不限於專利問題) 的結果,使得強加於您的條件 (不管是法院判決,協議書或其他) 和許可證的條件有衝突時,他們也不能令您背離許可證的條款。在您不能同時滿足本許可證規定的義務及其他相關的義務來發布函數庫時,則結果您只能夠根本不發 布函數庫。例如,如果某一專利許可證不允許所有直接或間接從您那裏接受副本的人們,在不付專利費的情況下重新發布函數庫,唯一能同時滿足兩方面要求的辦法 是停止發佈函數庫。

如果本條款的任何部分在特定的環境下無效或無法實施,就使用條款的其餘部分,並將這部分條款作爲整體用於其他環境。 本條款的目的不在於引誘您侵犯專利或其他財產權的要求,或爭論這種要求的有效性。本條款的主要目的在於保護自由軟體發佈系統的完整性。它是通過公共許可證 的應用來實現的。許多人已依賴同是出自此係統的應用程式,經由此係統發佈大量自由軟體而做出慷慨的供獻。作者/捐獻者有權決定他/她是否通過任何其他系統 發佈軟體,許可證持有人不能強加這種選擇。

本節的目的在於明確說明許可證其餘部分可能產生的結果。

12. 如果由於專利或者由於有版權的介面問題使函數庫在某些國家的發佈和使用受到限制,則在許可證約束下的原始版權擁有者可以增加發布地區的限制條款,將這些國 家明確排除在外,並在這些國家以外的地區發佈函數庫。在這種情況下,許可證套件含的限制條款和許可證正文一樣有效。 13. 自由軟體基金會可能隨時出版較寬鬆通用公共許可證的修改版或新版。新版和當前的版本在原則上保持一致,但在提到新問題時或有關事項時,在細節上可能出現差 別。

每一版本都有不同的版本號。如果函數庫指定可適用的許可證版本號以及 "任何更新的版本" ,您有權選擇遵循指定的版本或自由軟體基金會以後出版的新版本。如果函數庫未指定許可證版本,您可選擇自由軟體基金會已經出版的任何版本。 14. 如果您願意將函數庫的一部分結合到其他自由程式中,而它們的發佈條件不同,請寫信給作者,要求准予使用。如果是自由軟體基金會加以版權保護的軟體,寫信給 自由軟體基金會,我們有時會作爲例外的情況處理。我們的決定受兩個主要目標的指導,這兩個主要目標是:我們的自由軟體的衍生作品繼續保持自由狀態,以及從 整體上促進軟體的共享和重複利用。

沒有擔保
15. 由於函數庫准予免費使用,在適用法准許的範圍內,對函數庫沒有擔保。除非另有書面說明,版權所有者和/或其他提供函數庫的人們 "一樣" 不提供任何類型的擔保,不論是明確的,還是隱含的,包括但不限於可銷售和適合特定用途的隱含保證。全部的風險,如函數庫的質量和性能問題都由您來承擔。如果函數庫出現缺陷,您應當承擔所有必要的服務、修復和改正的費用。

16. 除非適用法或書面協議的要求,在任何情況下,任何版權所有者或任何按許可證條款修改和發佈函數庫的人們都不對您的損失負有任何責任。包括由於使用或不能使用函數庫引起的任何一般的、特殊的、偶然發生的或重大的損失 (包括但不限於數據的損失,或者數據變得不精確,或者您或第三方的持續的損失,或者函數庫不能和其他軟體協調運行等) 。即使版權所有者和其他人提到這種損失的可能性也不例外。

如何將這些條款用到您新的函數庫


如果您開發了新函數庫,而且您需要它得到公衆最大限度的利用,要做到這一點的最好辦法是將它變爲自由軟體,使得每個人都能在遵守本條款 (或者是在原來的通用公共許可證的條款) 的基礎上對它進行修改和重新發布。

爲了做到這一點,請將函數庫附上下列聲明。最安全的方式是將它放在每個原始碼檔案的開頭,以便最有效地傳遞拒絕擔保的信息。每個文件至少應有 "版權所有" 行以及在什麼地方能看到聲明全文的說明。

用一行空間描述函數庫的名稱和它的用途簡單說明
版權所有 (C) 19XX 作者姓名
這一函數庫是自由軟體,您可以遵照自由軟體基金會出版的 GNU 較寬鬆通用公共許可證條款來修改和重新發布這一程式,或者用許可證的第二版,或者 (根據您的選擇) 用任何更新的版本。

發佈這一函數庫的目的是希望它有用,但沒有任何擔保。甚至沒有適合特定目的而隱含的擔保。更詳細的情況請參閱 GNU 較寬鬆通用公共許可證。

您應該已經和函數庫一起收到一份 GNU 較寬鬆通用公共許可證的副本。如果還沒有,寫信給:

Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.

此外還應加上如何藉由電子郵件或一般信件與您保持聯繫的信息。 
如果需要,您應該取得您的上司 (如果您是程式員) 或您的學校簽署放棄函數庫版權的聲明。下面只是一個例子,您應該改變相應的名稱:

Yoyodyne 公司以此方式放棄 James Random Hacker 所寫的 `Frob' 函數庫 (用以扭轉 knobs 的函數庫) 的全部版權利益。
Ty coon 簽名,1990.4.1
Ty coon 副總裁

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

Apache Licence

Apache Licence是著名的非盈利開源組織Apache採用的協議。該協議和BSD類似,同樣鼓勵代碼共享和尊重原作者的著作權,同樣允許代碼修改,再發布(作爲開源或商業軟件)。需要滿足的條件也和BSD類似:

  1. 需要給代碼的用戶一份Apache Licence
  2. 如果你修改了代碼,需要在被修改的文件中說明。
  3. 在延伸的代碼中(修改和有源代碼衍生的代碼中)需要帶有原來代碼中的協議,商標,專利聲明和其他原來作者規定需要包含的說明。
  4. 如果再發布的產品中包含一個Notice文件,則在Notice文件中需要帶有Apache Licence。你可以在Notice中增加自己的許可,但不可以表現爲對Apache Licence構成更改。

Apache Licence也是對商業應用友好的許可。使用者也可以在需要的時候修改代碼來滿足需要並作爲開源或商業產品發佈/銷售。


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

BSD

BSD開源協議是一個給於使用者很大自由的協議。可以自由的使用,修改源代碼,也可以將修改後的代碼作爲開源或者專有軟件再發布。當你發佈使用了BSD協議的代碼,或者以BSD協議代碼爲基礎做二次開發自己的產品時,需要滿足三個條件:

  • 如果再發布的產品中包含源代碼,則在源代碼中必須帶有原來代碼中的BSD協議。
  • 如果再發布的只是二進制類庫/軟件,則需要在類庫/軟件的文檔和版權聲明中包含原來代碼中的BSD協議。
  • 不可以用開源代碼的作者/機構名字和原來產品的名字做市場推廣。

BSD代碼鼓勵代碼共享,但需要尊重代碼作者的著作權。BSD由於允許使用者修改和重新發布代碼,也允許使用或在BSD代碼上開發商業軟件發佈和銷 售,因此是對商業集成很友好的協議。很多的公司企業在選用開源產品的時候都首選BSD協議,因爲可以完全控制這些第三方的代碼,在必要的時候可以修改或者 二次開發。


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

MPL

MPL是The Mozilla Public License的簡寫,是1998年初Netscape的 Mozilla小組爲其開源軟件項目設計的軟件許可證。MPL許可證出現的最重要原因就是,Netscape公司認爲GPL許可證沒有很好地平衡開發者對 源代碼的需求和他們利用源代碼獲得的利益。同著名的GPL許可證和BSD許可證相比,MPL在許多權利與義務的約定方面與它們相同(因爲都是符合OSIA 認定的開源軟件許可證)。但是,相比而言MPL還有以下幾個顯著的不同之處:

◆ MPL雖然要求對於經MPL許可證發佈的源代碼的修改也要以MPL許可證的方式再許可出來,以保證其他人可以在MPL的條款下共享源代碼。但是,在MPL 許可證中對“發佈”的定義是“以源代碼方式發佈的文件”,這就意味着MPL允許一個企業在自己已有的源代碼庫上加一個接口,除了接口程序的源代碼以MPL 許可證的形式對外許可外,源代碼庫中的源代碼就可以不用MPL許可證的方式強制對外許可。這些,就爲借鑑別人的源代碼用做自己商業軟件開發的行爲留了一個 豁口。 
◆ MPL許可證第三條第7款中允許被許可人將經過MPL許可證獲得的源代碼同自己其他類型的代碼混合得到自己的軟件程序。 
◆ 對軟件專利的態度,MPL許可證不像GPL許可證那樣明確表示反對軟件專利,但是卻明確要求源代碼的提供者不能提供已經受專利保護的源代碼(除非他本人是 專利權人,並書面向公衆免費許可這些源代碼),也不能在將這些源代碼以開放源代碼許可證形式許可後再去申請與這些源代碼有關的專利。 
◆ 對源代碼的定義 
而在MPL(1.1版本)許可證中,對源代碼的定義是:“源代碼指的是對作品進行修改最優先擇 取的形式,它包括:所有模塊的所有源程序,加上有關的接口的定義,加上控制可執行作品的安裝和編譯的‘原本’(原文爲‘Script’),或者不是與初始 源代碼顯著不同的源代碼就是被源代碼貢獻者選擇的從公共領域可以得到的程序代碼。” 
◆ MPL許可證第3條有專門的一款是關於對源代碼修改進行描述的規定,就是要求所有再發布者都得有一個專門的文件就對源代碼程序修改的時間和修改的方式有描述。

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

MIT

MIT許可證之名源自麻省理工學院(Massachusetts Institute of Technology, MIT),又稱「X條款」(X License)或「X11條款」(X11 License)

MIT內容與三條款BSD許可證(3-clause BSD license)內容頗爲近似,但是賦予軟體被授權人更大的權利與更少的限制。

被授權人有權利使用、複製、修改、合併、出版發行、散佈、再授權及販售軟體及軟體的副本。

被授權人可根據程式的需要修改授權條款爲適當的內容。

在軟件和軟件的所有副本中都必須包含版權聲明和許可聲明。

此授權條款並非屬copyleft的自由軟體授權條款,允許在自由/開放源碼軟體或非自由軟體(proprietary software)所使用。

此亦爲MIT與BSD(The BSD license, 3-clause BSD license)本質上不同處。

MIT條款可與其他授權條款並存。另外,MIT條款也是自由軟體基金會(FSF)所認可的自由軟體授權條款,與GPL相容。


以上協議皆從開源中國社區收集轉載!!!


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章