在我們可以理解 copyleft 之前,我們必須先介紹一下 copyright 的概念。copyleft 並不是一個脫離於 copyright 的法律框架,copyleft 存在於 copyright 規則中。那麼,什麼是 copyright?
它的准確定義隨著司法權的不同而不同,但是其本質就是:作品的作者對於作品的復制(因此這個術語稱之為 “copyright”:copy 's right)、表現等有一定的壟斷性。在美國,其憲法明確地闡述了美國國會的任務就是制定版權法律來“促進科學和實用藝術的進步”。
不同於以往,版權會立刻附加到作品上——而且不需要注冊。默認情況下,所有的權力都是保留的。也就是說,沒有經過作者的允許,沒有人可以重新出版、表現或者修改作品。這種“允許”就是一種許可,可能還會附加有一定的條件。
如果希望得到對於 copyright 更徹底的介紹,Coursera 上的教育工作者和圖書管理員的著作權是一個非常優秀的課程。
什麼是 copyleft?
先不要著急,在我們討論 copyleft 是什麼之前,還有一步。首先,讓我們解釋一下開源意味著什麼。所有的開源許可協議,按照開源倡議的定義(規定),除其他形式外,必須以源碼的形式發放。獲得開源軟件的任何人都有權利查看並修改源碼。
copyleft 許可和所謂的 “自由” 許可不同的地方在於,其衍生的作品中,也需要相同的 copyleft 許可。我傾向於通過這種方式來區分兩者不同:自由許可向直接下游的開發者提供了最大的自由(包括能夠在閉源項目中使用開源代碼的權力),而 copyleft 許可則向最終用戶提供最大的自由。
GNU 項目為 copyleft 提供了這個簡單的定義:“規則就是當重新分發該程序時,你不可以添加限制來否認其他人對於[自由軟件]的自由。這可以被認為權威的定義,因為GNU 通用許可證的各種版本的依然是最廣泛使用的 copyleft 許可。
軟件中的 copyleftGPL 家族是最出名的 copyleft 許可,但是它們並不是唯一的。Mozilla 公共許可協議和Eclipse 公共許可協議,也很出名。很多其它的 copyleft 許可 也有較少的采用。
就像之前章節介紹的那樣,一個 copyleft 許可意味著下游的項目不可以在軟件的使用上添加額外的限制。這最好用一個例子來說明。如果我寫了一個名為 MyCoolProgram 的程序,並且使用 copyleft 許可來發布,你將有使用和修改它的自由。你可以發布你修改後的版本,但是你必須讓你的用戶擁有我給你的同樣的自由。(但)如果我使用 “自由” 許可,你將可以將它自由地合並到一個不提供源碼的閉源軟件中。
對於我的 MyCoolProgram 程序,和你必須能做什麼同樣重要的是你必須不能做什麼。你不必用和我完全一樣的許可協議,只要它們相互兼容就行(但一般的為了簡單起見,下游的項目也使用相同的許可)。你不必向我貢獻出你的修改,但是你這麼做的話,通常被認為一個很好的形式,尤其是這些修改是 bug 修復的話。
非軟件中的 copyleft雖然,copyleft 的概念起始於軟件世界,但是它也存在於之外的世界。“做你想做的,只要你保留其他人也有做同樣的事的權力”的概念是應用於文字創作、視覺藝術等方面的知識共享署名許可的一個顯著的特點(CC BY-SA 4.0 是貢獻於 Opensource.com 默認的許可,也是很多開源網站,包括 Linuxprobe.com在內所采用的內容許可協議)。GNU 自由文檔許可證是另一個非軟件協議中 copyleft 的例子。在非軟件中使用軟件協議通常不被建議。
我是否需要選擇一種 copyleft 許可?關於項目應該使用哪一種許可,可以用(已經有了)成篇累牍的文章在闡述。我的建議是首先將許可列表縮小,以滿足你的哲學信條和項目目標。GitHub 的 choosealicense.com 是一種查找滿足你的需求的許可協議的好方法。tl;drLegal使用平實的語言來解釋了許多常見和不常見的軟件許可。而且也要考慮你的項目所在的生態系統,圍繞一種特定語言和技術的項目經常使用相同或者相似的許可。如果你希望你的項目可以運行的更出色,你可能需要確保你選擇的許可是兼容的。
關於更多 copyleft 的信息,請查看 copyleft 指南。
原文來自:https://linux.cn/article-7826-1.html
本文地址:http://www.linuxprobe.com/whatis-copyleft.html
http://xxxxxx/Linuxjc/1184586.html TechArticle