什么是開源?
開源(Open Source)
全稱是:開放源代碼。
在今天,不僅是軟件的源代碼,還有硬件的機械圖、電路圖、PCB圖,甚至整個工程項目的源文件,也都是開源的對象。
開源的目的,就是讓用戶在一個工程項目中,利用開源的源代碼和源文件,在前一位開發(fā)者的基礎(chǔ)上進行學(xué)習(xí)、修改、完善,使之變得更完美。
開源雖然免費,但是這些源代碼和源文件以及它的產(chǎn)物是有版權(quán)的,同樣受到法律保護。
什么是開源協(xié)議?
開源協(xié)議是工程項目中,那些開源共享的部分或者全部源代碼和源文件,去遵循的一個公認協(xié)議,用來保護每一個為它做出貢獻的開發(fā)者。
常用的開源協(xié)議
我們在開源平臺發(fā)布的工程項目,需要選擇一個公認的開源協(xié)議,用來保護自己和前任開發(fā)者的合法權(quán)益。
現(xiàn)在存在的開源協(xié)議多達幾十種,下面我們看看在開源平臺中常見的那些開源協(xié)議:
1、Public Domain
協(xié)議原文:
https://creativecommons.org/share-your-work/public-domain/
協(xié)議簡介:
這是公有領(lǐng)域的協(xié)議,申明了權(quán)利或權(quán)益不為個人或團體所有,這些知識或發(fā)明是屬于公有的文化遺產(chǎn)。
2、TAPR Open Hardware License
協(xié)議原文:
https://www.tapr.org/ohl.html
協(xié)議簡介:
這是TAPR開放硬件許可證,
它與GNU通用公共許可證一樣,OHL旨在保證你分享和創(chuàng)造的自由。它禁止任何人接受OHL規(guī)定的拒絕任何其他被許可人的相同權(quán)利的權(quán)利復(fù)制、修改和分發(fā)文檔,以及制作、使用和根據(jù)文件分發(fā)產(chǎn)品。它又與GPL不同,OHL主要不是版權(quán)許可。
3、CERN Open Hardware License
協(xié)議原文:
https://www.ohwr.org/projects/cernohl/wiki
協(xié)議簡介:
這是CERN開放硬件許可證,
CERN方面稱OHL的誕生源自于其想公開分享硬件設(shè)計的愿望。他們認為GPL、MIT以及Apache 2.0之類的開源許可證并不能完全滿足其想要分享硬件設(shè)計的需求。
在硬件方面,與商業(yè)公司合作是必要的,因為需要有人來制造它、組裝測試并賣出。公司不喜歡法律風(fēng)險,所以需要一個許可證來明確條件是什么。
CERN開放式硬件許可證2.0版于2020年正式發(fā)布,以促進硬件設(shè)計者之間的合作;并提供一個法律工具,支持自由使用、研究、修改、分享和分發(fā)硬件設(shè)計和基于這些設(shè)計的產(chǎn)品。該許可證版本最終獲得了三種變體包括CERN-OHL-P(permissive);以及兩個互惠許可證:CERN-OHL-W(weakly reciprocal)和CERN-OHL-S(strongly reciprocal)。
4、GPL 3.0(GNU General Public License version 3)
協(xié)議原文:
https://opensource.org/licenses/GPL-3.0
協(xié)議簡介:
這是GUN的通用公共許可證,
只要在工程項目中使用了GPL協(xié)議下的產(chǎn)品,那么這個工程項目必須采用GPL協(xié)議,也就是說必須開源和免費。
GPL的出發(fā)點是代碼的開源與免費使用和引用、修改、衍生代碼的開源與免費使用,但不允許修改后和衍生的代碼做為閉源的商業(yè)軟件發(fā)布和銷售。
GPL最顯著的特點是“病毒性傳播”和“不允許閉源的商業(yè)發(fā)布”,我們熟悉的linux就是使用了GPL許可。
5、LGPL(GNU LGPL)
協(xié)議原文:
https://opensource.org/licenses/lgpl-license
協(xié)議簡介:
這是GNU的寬通用公共許可證,
LGPL是GPL主要為類庫使用而設(shè)計的開源協(xié)議,與原生的GPL協(xié)議不同。
LGPL允許商業(yè)軟件通過對類庫以引用的方式使用LGPL類庫,而不需要開源商業(yè)軟件的代碼。這使得采用LGPL協(xié)議的開源代碼可以被商業(yè)軟件作為類庫引用并發(fā)布和銷售。
但是如果修改LGPL協(xié)議的代碼或者衍生代碼,則所有修改的代碼,涉及修改部分的額外代碼和衍生的代碼都必須采用LGPL協(xié)議開源。
因此LGPL協(xié)議的開源代碼很適合作為第三方類庫被商業(yè)軟件引用,但不適合希望以LGPL協(xié)議代碼為基礎(chǔ),通過修改和衍生的方式做二次開發(fā)的商業(yè)軟件采用。
GPL和LGPL都是在保護原作者的知識產(chǎn)權(quán),避免有人利用開源代碼復(fù)制并開發(fā)類似產(chǎn)品閉源銷售。
6、BSD(Berkeley Software Distribution)
協(xié)議原文:
https://opensource.org/licenses/BSD-2-Clause
協(xié)議簡介:
這是"伯克利軟件發(fā)行版"許可,
是一個給予使用者很大自由度的協(xié)議,基本上可以認為是能“為所欲為”的使用。
可以自由使用、修改源工程,也可以將原工程修改后的工程作為開源或者專有再發(fā)布,但是需要滿足下面的條件:
a、如果再發(fā)布的產(chǎn)品中包含源工程,則在工程中必須帶有原來的BSD協(xié)議;
b、如果再發(fā)布的只是二進制類庫或軟件,則需要在類庫或軟件的文檔和版權(quán)聲明中包含原來代碼中的BSD協(xié)議;
c、不可以用開源的作者或機構(gòu)名字以及原來產(chǎn)品的名字去做市場推廣。
7、MIT(The MIT License)
協(xié)議原文:
https://opensource.org/licenses/MIT
協(xié)議簡介:
MIT和BSD一樣是寬泛的許可協(xié)議,作者只保留版權(quán),而無需任何其他的限制。
MIT許可證的名字源自麻省理工學(xué)院(Massachusetts Institute of Technology),又叫做「X條款」(X License)或者「X11條款」(X11 License)。
MIT內(nèi)容與三條款BSD許可證(3-clause BSD license)內(nèi)容很像,但是賦予被授權(quán)人更大的權(quán)利和更少的限制。
被授權(quán)人有權(quán)利使用、復(fù)制、修改、合并、出版發(fā)行、散布、再授權(quán)及出售軟件及軟件的副本。 被授權(quán)人可根據(jù)程式的需要修改授權(quán)條款為適當(dāng)?shù)膬?nèi)容。 在軟件和軟件的所有副本中都必須包含版權(quán)聲明和許可聲明。此授權(quán)條款并非屬copyleft的自由軟件授權(quán)條款,允許在自由或開放源碼軟件或非自由軟件(proprietary software)所使用。
這就是MIT與BSD本質(zhì)上不同之處。
MIT條款可與其他授權(quán)條款并存。另外,MIT條款也是自由軟件基金會(FSF)所認可的自由軟件授權(quán)條款,是與GPL相容的。
8、知識共享許可
CC-BY 3.0
協(xié)議原文:
https://creativecommons.org/licenses/by/3.0/
CC-BY-SA 3.0
協(xié)議原文:
https://creativecommons.org/licenses/by-sa/3.0/
CC-BY-NC-SA 3.0
協(xié)議原文:
https://creativecommons.org/licenses/by-nc-sa/3.0/
CC-BY-NC 3.0
協(xié)議原文:
https://creativecommons.org/licenses/by-nc/3.0/
協(xié)議簡介:
上面這四種協(xié)議都是知識共享許可,那些字母代表的意義如下:
CC:知識共享許可協(xié)議(Creative Commons license)的縮寫。
BY:署名,您必須給出適當(dāng)?shù)氖鹈峁┲赶虮驹S可協(xié)議的鏈接,同時標明是否(對原始作品)作了修改。
SA:相同方式共享,如果您在混合、轉(zhuǎn)換或者基于本工程項目進行創(chuàng)作開發(fā),您必須基于與原先許可協(xié)議相同的許可協(xié)議分享發(fā)布您貢獻的部分。
NC:非商業(yè)使用,您不得將本作品用于商業(yè)目的。
ND:禁止演繹,如果您在混合、轉(zhuǎn)換或者基于該作品創(chuàng)作開發(fā),您不可以分享發(fā)布修改后的作品。
申明:
文中涉及開源協(xié)議的簡介和解釋,源于協(xié)議原文和相關(guān)文章的內(nèi)容。
個人能力有限整理匯編的內(nèi)容如有誤差,請告知我,我將通過置頂評論的方式進行糾正。