如何選擇開源許可證?

2021-10-19 10:48:10 字數 2147 閱讀 1049

對於軟體產品,無論是免費發布還是**,制定乙份許可協議都非常有用。否則,對於前者,你相當於放棄了自己所有的權利,任何人都沒有義務表明你的原始作者身份,對於後者,你將不得不花費比開發更多的精力用來逐個處理授權問題。許可,就是提供給使用你產品的人有一定的許可權,不過你仍然擁有版權和專利(如果申請了的話)。開源許可證使得我們發布開源軟體產品變得簡單。

現今存在的開源許可證很多,多數人搞不清楚他們之間的區別。很多程式設計師在開源**的時候不知如何選擇開源許可證,或者使用別人的開源**時未遵循其原始許可證。如何選擇開源許可證,這是乙個問題。

通過osi(open source initiative)組織批准的許可證目前有78種。當前流行的6種gpl,lgpl,apache,mit,bsd和mpl都是osi批准的許可證。github建了乙個很讚的**choose an open source license,提供了各主流許可證的協議文字,並對它們作了詳細的介紹和比較。國內阮一峰的blog也提供了一張簡潔的分析圖(gpl,lgpl和mpl許可證描述有誤)。

mit許可證

mit許可證是乙個簡短、寬鬆的許可證,唯一的要求就是保留原始版權和許可宣告。你可以:

bsd許可證

bsd許可證是乙個給予使用者很大自由的許可證。使用者可以自由的使用、修改源**,也可以將修改後的**作為開源或專有軟體再發布,只須滿足:

apache許可證

apache許可證是乙個寬鬆且專業的許可證,相比於其他許可證,軟體產品可以自由修改、發布和商用,該許可證還為使用者提供專利許可,只須滿足以下條件:

如果修改了源**,包含乙份**修改說明。

不得使用其原始商標

gpl許可證

gpl(gnu general public license)許可證是乙個開放原始碼許可證,只要在軟體產品中使用(「使用」指類庫引用,修改後的**或者衍生**)gpl許可證的產品,則該軟體產品也必須採用gpl許可證發布,並且不論以何種形式發布,都必須同時附上源**。這就是所謂的「傳染性」。其他細節與apache許可證類似,如:

lgpl許可證

lgpl( gnu lesser general public license)許可證是乙個主要為類庫使用設計的開源協議。和gpl要求任何使用/修改/衍生之gpl類庫的的軟體必須採用gpl協議不同。lgpl允許商業軟體通過類庫引用(link)方式使用lgpl類庫而不需要開源商業軟體的**。這使得採用lgpl協議的開源**可以被商業軟體作為類庫引用並發布和銷售。但是如果修改lgpl協議的**或者衍生,則所有修改的**,涉及修改部分的額外**和衍生的**都必須採用lgpl協議。因此lgpl協議的開源**很適合作為第三方類庫被商業軟體引用,但不適合希望以lgpl協議**為基礎,通過修改和衍生的方式做二次開發的商業軟體採用。其他細節與gpl許可證類似,如:

mpl許可證

mpl(mozilla public license)許可證是2023年初netscape的 mozilla小組為其開源軟體專案設計的軟體許可證。mpl許可證出現的最重要原因就是,netscape公司認為gpl許可證沒有很好地平衡開發者對源**的需求和他們利用源**獲得的利益。mpl同著名的gpl許可證和bsd許可證相比。mpl在許多權利與義務的約定方面與它們相同,但是,相比而言mpl還有以下幾個顯著的特點:

注:以上所有許可證都支援私有使用,即使用和修改軟體但不對外發布。

the unlicense

the unlicense是乙個放棄所有權利的許可證,沒有任何限制,它一般用在致力於公有領域的產品。

如果你的產品不是軟體產品(資料、多**等),也有一些開源許可證可供選擇。

creative commons許可證

creative commons簡稱cc,中國大陸正式名稱為知識共享。傳統的著作權通常為兩種極端,一種是」保留所有權利」,另一種是「不保留任何權利」(即公有領域,public domain)。知識共享則試圖在兩者中間廣大的灰色地帶保有彈性,使創作者可以「保留部分權利」。創作者可與大眾分享創作,授予其他人再散布的權利,卻又能保留其他某些權利。知識共享一般用於設計,攝影,作品的開放式分享,並提供多種可供選擇的授權形式及條款組合:

注:許可協議不能同時包含「相同方式共享」和「禁止演繹」許可要素,「相同方式共享」要素僅適用於演繹作品。

這些授權形式可以結合起來用,如cc by,cc by-nc-sa等。

參考:

如何選擇開源許可證?

如何為 選擇開源許可證,這是乙個問題。世界上的開源許可證,大概有上百種。很少有人搞得清楚它們的區別。即使在最流行的六種 gpl bsd mit mozilla apache和lgpl 之中做選擇,也很複雜。烏克蘭程式設計師paul bagwell,畫了一張分析圖,說明應該怎麼選擇。這是我見過的最簡單...

如何選擇開源許可證?

何為 選擇開源許可證,這是乙個問題。世界上的開源許可證,大概有上百種。很少有人搞得清楚它們的區別。即使在最流行的六種 gpl bsd mit mozilla apache和lgpl,如何在這之中做選擇,也很複雜。烏克蘭程式設計師 paul bagwell,畫了一張分析圖,說明應該怎麼選擇。這是我見過...

如何選擇開源許可證

世界上的開源許可證,大概有上百種。很少有人搞得清楚它們的區別。即使在最流行的六種 gpl bsd mit mozilla apache和lgpl之中做選擇,也很複雜。烏克蘭程式設計師paul bagwell,畫了一張分析圖,說明應該怎麼選擇。這是我見過的最簡單的講解,只用兩分鐘,你就能搞清楚這六種許...