本文由高級(jí)咨詢師薛亮據(jù)自由軟件基金會(huì)(FSF)的英文原文[1]翻譯而成,這篇常見問題解答澄清了在使用 GNU 許可證中遇到許多問題,對(duì)于企業(yè)和軟件開發(fā)者在實(shí)際應(yīng)用許可證和解決許可證問題時(shí)具有很強(qiáng)的實(shí)踐指導(dǎo)意義。 2、對(duì)于 GNU 許可證的一般了解 2.1 為什么 GPL 允許用戶發(fā)布其修改版本? 自由軟件的一個(gè)關(guān)鍵特點(diǎn)是用戶可以自由合作。絕對(duì)有必要允許希望彼此幫助的用戶與其他用戶分享他們對(duì)錯(cuò)誤的修復(fù)和改進(jìn)。 有些人提出了 GPL 的替代方案,需要原作者批準(zhǔn)修改版本。只要原作者持續(xù)進(jìn)行維護(hù),這種做法在實(shí)踐中可能會(huì)不錯(cuò),但是如果作者停止維護(hù)(或多或少會(huì))去做別的事情,或并不打算去滿足所有用戶的需求,這種替代方案就會(huì)失敗。除了實(shí)踐上的問題之外,該方案也不允許用戶之間互相幫助。 有時(shí)候?qū)π薷陌姹镜目刂?,是為了防止用戶制作的各種版本之間造成混淆。根據(jù)我們的經(jīng)驗(yàn),這種混亂不是一個(gè)大問題。在 GNU 項(xiàng)目之外出現(xiàn)了許多版本的 Emacs,但用戶仍可以將它們區(qū)分開。GPL 要求版本創(chuàng)造者將他/她的名字標(biāo)注其上,以區(qū)別于其他版本,并保護(hù)其他維護(hù)者的聲譽(yù)。 2.2 GPL 是否要求將修改版本的源代碼公開發(fā)布? GPL 不要求您發(fā)布修改后的版本或其中的任何一部分。您可以自由地進(jìn)行修改并私人使用它們,而無需進(jìn)行發(fā)布。這也適用于組織(包括企業(yè));組織可以制作修改版本,在內(nèi)部使用它,并且絕不將修改版本發(fā)布到組織之外。 但是,如果您以某種方式向公眾發(fā)布修改后的版本,依據(jù) GPL 許可證,GPL 要求您保證程序的用戶可以獲得修改后源代碼。 因此,GPL 給你以某些特定方式發(fā)布修改后的程序的授權(quán),而不是以其他方式發(fā)布;但是,是否發(fā)布修改版本的決定取決于您。 2.3 我可以在同一臺(tái)電腦上安裝一個(gè)遵循 GPL 許可證的程序和一個(gè)不相關(guān)的非自由程序嗎? 可以。 2.4 如果我知道某些人有一個(gè)遵循 GPL 許可證的程序的副本,我可以要求他們給我一個(gè)副本嗎? 不可以,GPL 給人們制作和再分發(fā)程序副本的授權(quán),倘若有人選擇這樣做的話。那個(gè)人也有權(quán)選擇不去再分發(fā)該程序。 2.5 GPL v2 中的“書面文件對(duì)任何第三方有效”是什么意思? 這是否意味著世界上每個(gè)人都可以獲得任何遵循 GPL 許可證的程序的源代碼? 如果您選擇通過書面文件提供源代碼,那么任何向您索求源代碼的人都有權(quán)收到。 如果您對(duì)不附帶源代碼的二進(jìn)制文件進(jìn)行商業(yè)分發(fā),GPL 要求您必須提供一份書面文件,表明將稍后分發(fā)源代碼。當(dāng)用戶非商業(yè)性地再分發(fā)他們從您那里獲取的二進(jìn)制文件時(shí),他們必須傳遞這份書面文件的副本。這意味著不能直接從您那里獲取二進(jìn)制文件的人,仍然可以收到源代碼副本以及該書面文件。 我們要求書面文件對(duì)任何第三方有效的原因是,以這種方式間接收到二進(jìn)制代碼的人可以從您那里訂購(gòu)源代碼。 2.6 GPL v2 中規(guī)定,發(fā)布后的修改版本必須“授予…所有第三方許可”。這些第三方是誰? 第 2 節(jié)中規(guī)定,依據(jù) GPL,您分發(fā)的修改版本必須授權(quán)給所有第三方。 “所有第三方”當(dāng)然是指所有人,但這并不要求您為他們做任何事情。這僅僅意味著他們依據(jù) GPL 從您那里獲得了您的修改版本的許可。 2.7 GPL 允許我出售程序的副本以獲利嗎? 是的,GPL 允許每個(gè)人這樣做。銷售副本的權(quán)利[3]是自由軟件定義的一部分。除了一種特殊情況之外,對(duì)您可以收取什么樣的價(jià)格是沒有限制的。(這種例外情況是:二進(jìn)制版本必須附有表明將提供源代碼的書面文件。) 2.8 GPL 允許我從我的分發(fā)網(wǎng)站收取下載程序的費(fèi)用嗎? 允許。您可以對(duì)您分發(fā)程序副本收取任何您想收取的費(fèi)用。如果您通過下載分發(fā)二進(jìn)制文件,則必須提供“等同的訪問權(quán)限”來讓人們下載源代碼,因此,下載源代碼的費(fèi)用可能不會(huì)超過下載二進(jìn)制文件的費(fèi)用。 2.9 GPL 允許我要求任何接收軟件的人必須向我支付費(fèi)用和/或通知我嗎? 不允許。實(shí)際上,這樣的要求會(huì)使程序變成非自由軟件。如果人們?cè)讷@得程序副本時(shí)必須支付費(fèi)用,或者他們必須特別通知任何人,那么這個(gè)程序就不是自由軟件。請(qǐng)參閱自由軟件的定義[4]。 GPL 是自由軟件許可證,因此允許人們使用甚至再分發(fā)軟件,而不需要向任何人支付費(fèi)用。 您可以向用戶收取費(fèi)用,以獲取您的副本[5]。當(dāng)他們從別人那里獲得副本時(shí),您不能要求人們向您支付費(fèi)用。 2.10 如果我收費(fèi)分發(fā)遵循 GPL 的軟件,我是否還需要向公眾免費(fèi)提供? 不需要。不過,如果有人向您支付費(fèi)用并獲得副本,GPL 給予他們免費(fèi)或收費(fèi)向公眾發(fā)布的自由。例如,有人可以向您支付費(fèi)用,然后把他的副本放在一個(gè)網(wǎng)站上,讓公眾去獲取。 2.11 GPL 允許我根據(jù)保密協(xié)議分發(fā)副本嗎? 不允許。GPL 規(guī)定,任何從您那里獲取副本的人都有權(quán)再分發(fā)已修改或未修改的副本。您不得在任何更嚴(yán)格的基礎(chǔ)上分發(fā)作品。 如果有人要求您簽署保密協(xié)議(NDA),以獲取來自 FSF 的遵循 GPL 的軟件,請(qǐng)立即通知我們 <license-violation@fsf.org>。 如果違規(guī)行為涉及其他版權(quán)所有者的遵循 GPL 的代碼,請(qǐng)通知該版權(quán)所有者,就像您對(duì)其他任何類型的 GPL 違規(guī)行為所做的工作一樣。 2.12 GPL 允許我根據(jù)保密協(xié)議分發(fā)程序的修改版或測(cè)試版嗎? 不可以。GPL 規(guī)定,您的修改版本必須具備 GPL 中規(guī)定的所有自由。因此,從您那里獲取您的版本副本的任何人都有權(quán)再分發(fā)該版本的副本(已修改或未修改)。您不得在更嚴(yán)格的基礎(chǔ)上分發(fā)該作品的任何版本。 2.13 GPL 是否允許我根據(jù)保密協(xié)議開發(fā)程序的修改版本? 可以。例如,您可以接受一份合同來開發(fā)修改版本,并同意不得發(fā)布您的修改版本,直到客戶同意才可以發(fā)布。這是允許的,因?yàn)檫@種情況下不處于 GPL 協(xié)議之下的代碼是依據(jù) NDA 分發(fā)的。 您還可以依據(jù) GPL 將您的修改版本發(fā)布給客戶,但須同意不將其發(fā)布給其他任何人,除非客戶同意。也同樣在這種情況下,不處于 GPL 協(xié)議之下的代碼是以保密協(xié)議或任何其他限制條款分發(fā)的。 GPL 將給予客戶再分發(fā)您的版本的權(quán)利。在這種情況下,客戶可能會(huì)選擇不行使這項(xiàng)權(quán)利,但他確實(shí)擁有這項(xiàng)權(quán)利。 2.14 為什么 GPL 要求程序的每個(gè)副本必須包含 GPL 許可證副本? 作品包含許可證副本至關(guān)重要,因此獲得程序副本的每個(gè)人都可以知道他們的權(quán)利是什么。 包括一個(gè)指向許可證的 URL,而不是將許可證本身包含在內(nèi),這是一種看起來很誘人的做法。但是您不能確定該 URL 在五年或十年后仍然有效。二十年后,我們今天所知道的 URL 們可能已不復(fù)存在。 不管網(wǎng)絡(luò)將發(fā)生什么樣的變化,確保擁有該程序副本的人員能夠繼續(xù)看到 GPL 許可證的唯一方法是,將許可證的副本包含在該程序中。 2.15 如果作品不是很長(zhǎng),那該怎么辦? 如果整個(gè)軟件包中只有很少的代碼——我們使用的基準(zhǔn)是不到 300 行,那么您可以使用一個(gè)寬松的許可證,而不是像 GNU GPL這樣的 Copyleft 許可證(除非代碼特別重要)。我們建議這種情況使用 Apache License 2.0[6]。 2.16 我是否需要將我對(duì)遵循 GPL 的程序所做的修改聲明版權(quán)? 您不需要對(duì)您的修改聲明版權(quán)。不過,在大多數(shù)國(guó)家/地區(qū),默認(rèn)情況下會(huì)自動(dòng)獲得版權(quán),因此,如果您不希望修改受到版權(quán)限制,您需要將修改明顯地放置于公有領(lǐng)域。 無論您是否對(duì)您的修改聲明版權(quán),依據(jù) GPL,您都必須將修改版本作為整體發(fā)布(參見:2.2 GPL 是否要求將修改版本的源代碼公開發(fā)布?)。 2.17 GPL 對(duì)于將某些代碼翻譯成不同的編程語言是如何規(guī)定的? 根據(jù)著作權(quán)法,翻譯工作被認(rèn)為是一種修改。因此,GPL 對(duì)修改版本的規(guī)定也適用于翻譯版本。 2.18 如果一個(gè)程序?qū)⒐蓄I(lǐng)域代碼與遵循 GPL 的代碼相結(jié)合,我可以取出公有領(lǐng)域的部分,并作為公有領(lǐng)域代碼來使用嗎? 您可以這樣做,如果您能弄清楚哪個(gè)部分是公有領(lǐng)域的部分,并將其與其他部分區(qū)分開。如果代碼曾經(jīng)由其開發(fā)人員放置在公有領(lǐng)域,那么它就是公有領(lǐng)域代碼,無論它現(xiàn)在究竟在哪里。 2.19 我想要因我的作品獲得聲譽(yù)。我想讓人們知道我寫了什么,如果我使用 GPL,我還能獲得聲譽(yù)嗎? 您一定能獲得這份作品的聲譽(yù)。遵循 GPL 發(fā)布的程序的一部分是以您自己名義撰寫的版權(quán)聲明(假設(shè)您是版權(quán)所有者)。GPL 要求所有副本攜帶恰當(dāng)?shù)陌鏅?quán)聲明。 2.20 GPL 允許我添加條款,要求在使用遵循 GPL 的軟件或其輸出物的研究論文中包含引用或致謝嗎? 不可以,根據(jù) GPL 的規(guī)定,這是不允許的。雖然我們認(rèn)識(shí)到適當(dāng)?shù)囊檬菍W(xué)術(shù)出版物的重要組成部分,但引用不能作為對(duì) GPL 的附加要求。對(duì)使用 GPL 軟件的研究論文要求包含引用,超出了 GPL v3 第 7(b)條中可接受的附加要求,因此將被視為對(duì) GPL 第 7 節(jié)的額外限制。而且版權(quán)法也不允許您在軟件的輸出物[7]中設(shè)置這樣的要求,無論該軟件是依據(jù) GPL 還是其他許可證的條款獲得許可。 2.21 為了節(jié)省空間,我是否可以省略 GPL 的引言部分,或者省略如何在自己的程序上使用GPL的指導(dǎo)部分嗎? 引言和指導(dǎo)是 GNU GPL 的組成部分,不能省略。事實(shí)上,GPL 是受版權(quán)保護(hù)的,其許可證規(guī)定只能逐字復(fù)制整個(gè) GPL。(您可以使用法律條款制作另一個(gè)許可證[8],但該許可證不再是 GNU GPL。) 引言和指導(dǎo)部分共約 1000 字,不到 GPL 總文字?jǐn)?shù)量的 1/5。除非軟件包本身很小,否則引言和指導(dǎo)不會(huì)對(duì)軟件包的大小產(chǎn)生大幅度的改變。在軟件包很小的情況下,您可以使用一個(gè)簡(jiǎn)單的全權(quán)許可證,而不是 GNU GPL。 2.22 兩個(gè)許可證“兼容”是指什么? 為了將兩個(gè)程序(或它們的實(shí)質(zhì)部分)組合成一個(gè)更大的作品,您需要有以組合方式使用這兩個(gè)程序的權(quán)限。如果兩個(gè)程序的許可證允許這種使用方式,則它們是兼容的。如果沒有辦法同時(shí)滿足這兩個(gè)許可證,則它們是不兼容的。 對(duì)于一些許可證,組合的方式可能會(huì)影響它們是否兼容,例如,它們可能允許將兩個(gè)模塊鏈接在一起,但不允許將其代碼合并到一個(gè)模塊中。 如果您只想在同一個(gè)系統(tǒng)中安裝兩個(gè)獨(dú)立的程序,那么它們的許可證并不是必須兼容的,因?yàn)樗鼈儧]有組合成更大的作品。 2.23 許可證與 GPL 兼容是什么意思? 這意味著其他許可證和 GNU GPL 兼容;在一個(gè)更大的程序中,您可以將根據(jù)其他許可證發(fā)布的代碼與根據(jù) GNU GPL 發(fā)布的代碼進(jìn)行組合。 所有 GNU GPL 版本都允許進(jìn)行這種組合;它們還允許分發(fā)這些組合,只要該組合在相同的 GNU GPL 版本下發(fā)布。其他許可證如果允許這樣做,則其與 GPL 兼容。 與 GPL v2 相比,GPL v3 與更多的許可證兼容:它允許您與具有特定類型附加要求(GPL v3 本身不包含)的代碼進(jìn)行組合。GPL v3 第 7 節(jié)中有關(guān)于此問題的更多信息,包括了允許的附加要求的列表。 2.24 為什么原始的 BSD 許可證與 GPL 不兼容? 因?yàn)樗?guī)定了 GPL 不包含的具體要求,即對(duì)程序廣告的要求。GPL v2 第 6 節(jié)規(guī)定:
GPL v3 在第 10 節(jié)中提到類似的內(nèi)容。廣告條款正好提供了這樣一個(gè)限制,因此與 GPL 不兼容。 修訂的 BSD 許可證沒有廣告條款,從而消除了這個(gè)問題。 2.25 “聚合”與其他類型的“修改版本”有什么區(qū)別? “聚合”由多個(gè)單獨(dú)的程序組成,分布在同一個(gè) CD-ROM或其他媒介中。GPL 允許您創(chuàng)建和分發(fā)聚合,即使其他軟件的許可證不是自由許可證或與 GPL 不兼容。唯一的條件是,發(fā)布“聚合”所使用的許可證不能禁止用戶去行使“聚合”中每個(gè)程序?qū)?yīng)的許可證所賦予用戶的權(quán)利。 兩個(gè)單獨(dú)的程序還是一個(gè)程序有兩個(gè)部分,區(qū)分的界限在哪里?這是一個(gè)法律問題,最終由法官?zèng)Q定。我們認(rèn)為,適當(dāng)?shù)呐袛鄻?biāo)準(zhǔn)取決于通信機(jī)制(exec、管道、rpc、共享地址空間內(nèi)的函數(shù)調(diào)用等)和通信的語義(哪些信息被互換)。 如果模塊們被包含在相同的可執(zhí)行文件中,則它們肯定是被組合在一個(gè)程序中。如果模塊們被設(shè)計(jì)為在共享地址空間中鏈接在一起運(yùn)行,那么幾乎肯定意味著它們組合成為一個(gè)程序。 相比之下,管道、套接字和命令行參數(shù)是通常在兩個(gè)獨(dú)立程序之間使用的通信機(jī)制。所以當(dāng)它們用于通信時(shí),模塊們通常是單獨(dú)的程序。但是,如果通信的語義足夠親密,交換復(fù)雜的內(nèi)部數(shù)據(jù)結(jié)構(gòu),那么也可以視為這兩個(gè)部分合并成了一個(gè)更大的程序。 2.26 為什么 FSF 要求為 FSF擁有版權(quán)的程序做出貢獻(xiàn)的貢獻(xiàn)者將版權(quán)分配給 FSF?如果我持有 GPL 程序的版權(quán),我也應(yīng)該這樣做嗎?如果是,怎么做? (同1.11) 我們的律師告訴我們,為了最大限度地向法院要求違規(guī)者強(qiáng)制執(zhí)行 GPL,我們應(yīng)該讓程序的版權(quán)狀況盡可能簡(jiǎn)單。為了做到這一點(diǎn),我們要求每個(gè)貢獻(xiàn)者將貢獻(xiàn)部分的版權(quán)分配給 FSF,或者放棄對(duì)貢獻(xiàn)部分的版權(quán)要求。 我們也要求個(gè)人貢獻(xiàn)者從雇主那里獲得版權(quán)放棄聲明(如果有的話),以確保雇主不會(huì)聲稱擁有這部分貢獻(xiàn)的版權(quán)。 當(dāng)然,如果所有的貢獻(xiàn)者把他們的代碼放在公共領(lǐng)域,也就沒有用之來執(zhí)行 GPL 許可證的版權(quán)了。所以我們鼓勵(lì)人們?yōu)榇笠?guī)模的代碼貢獻(xiàn)分配版權(quán),只把小規(guī)模的修改放在公共領(lǐng)域。 如果您想要在您的程序中執(zhí)行 GPL,遵循類似的策略可能是一個(gè)好主意。如果您需要更多信息,請(qǐng)聯(lián)系<licensing@gnu.org>。 2.27 如果我使用遵循 GNU GPL 的軟件,那么允許我將原始代碼修改為新程序,然后在商業(yè)上分發(fā)和銷售新程序嗎? 您被允許在商業(yè)上出售修改程序的副本,但僅限于在 GNU GPL 的條款之下這么做。因此,例如,您必須依照 GPL 所述,使得程序用戶可獲取源代碼,并且,用戶也依照 GPL 所述,被允許再分發(fā)和修改程序。 這些要求是將遵循 GPL 的代碼包含在您自己的程序中的條件。 2.28 我可以將 GPL 應(yīng)用于軟件以外的其他作品嗎? (同1.6) 您可以將 GPL 應(yīng)用于任何類型的作品,只需明確該作品的“源代碼”構(gòu)成即可。GPL 將“源代碼”定義為作品的首選形式,以便在其中進(jìn)行修改。 不過,對(duì)于手冊(cè)和教科書,或更一般地,任何旨在教授某個(gè)主題的作品,我們建議使用 GFDL,而非 GPL。 2.29 我想依據(jù) GPL 授權(quán)我的代碼,但我也想明確指出,它不能用于軍事和/或商業(yè)用途。我可以這樣做嗎? 不可以,因?yàn)檫@兩個(gè)目標(biāo)相互矛盾。GNU GPL 被專門設(shè)計(jì)為防止添加進(jìn)一步的限制。GPL v3 在第 7 節(jié)允許非常有限的一組附加限制,但是用戶可以刪除任何其他添加的限制。 2.30 我可以依據(jù) GPL 來對(duì)硬件進(jìn)行許可嗎? 任何可以受版權(quán)保護(hù)的材料都可以依據(jù)GPL進(jìn)行許可。GPL v3 也可以用于受其他類似版權(quán)法的法律保護(hù)的材料,如半導(dǎo)體掩模。因此,作為一個(gè)例子,您可以依據(jù) GPL 發(fā)布物理對(duì)象的圖紙或電路。 在許多情況下,版權(quán)不涵蓋依照?qǐng)D紙制作的物理硬件。在這種情況下,無論您使用什么許可證,您對(duì)圖紙的許可都不能對(duì)制造或銷售物理硬件施加任何控制。當(dāng)版權(quán)不涵蓋利用 IC 掩膜等進(jìn)行硬件制作時(shí),GPL 能以有效的方式處理這種情況。 2.31 將遵循 GPL 的二進(jìn)制文件預(yù)鏈接到系統(tǒng)上的各種庫,以優(yōu)化其性能,將被視為修改嗎? 不。預(yù)鏈接是編譯過程的一部分;與編譯過程所涉及的其他各個(gè)方面相比,預(yù)鏈接沒有引入更多的許可證要求。如果您被允許將程序鏈接到各種庫,那么也可以預(yù)鏈接到各種庫。如果您分發(fā)預(yù)鏈接后的目標(biāo)碼,則需要遵循第 6 節(jié)的條款。 2.32 LGPL 如何與 Java 配合使用? 詳情請(qǐng)參閱這篇文章[9]。LGPL 如同被設(shè)計(jì)、被預(yù)想、被期待的那樣去工作。 2.33 為什么你們?cè)?GPL v3 中發(fā)明新的術(shù)語“傳播”和“傳遞”? (譯者注:convey 這個(gè)詞匯在一個(gè) GPL 譯本中被翻譯為“轉(zhuǎn)發(fā)”,此處,我們認(rèn)為“轉(zhuǎn)發(fā)”一詞在計(jì)算機(jī)領(lǐng)域存在一定的歧義,因此,采用“傳遞”的翻譯。) GPL v2 中使用的“分發(fā)”一詞來自美國(guó)版權(quán)法。多年來,我們了解到,一些司法管轄區(qū)在自己的版權(quán)法中使用了同一個(gè)詞,但卻給出了不同的含義。我們發(fā)明了這些新術(shù)語,無論在何處對(duì)許可證進(jìn)行解釋,都使我們的意圖盡可能清楚。這些新術(shù)語沒有使用在世界上的任何版權(quán)法中,我們直接在許可證中提供了它們的定義。 2.34 在GPL v3中的“傳遞”與GPL v2中的“分發(fā)”意思一樣嗎? 是的,差不多是一個(gè)意思。在執(zhí)行 GPL v2 的過程中,我們了解到一些司法管轄區(qū)在自己的版權(quán)法中使用了“分發(fā)”這個(gè)詞,但給出了不同的含義。我們發(fā)明了一個(gè)新的術(shù)語,以使我們的意圖清晰,避免這些差異可能引起的任何問題。 2.35 如果我只復(fù)制遵循 GPL 的程序并運(yùn)行它們,而不分發(fā)或傳遞給其他人,許可證對(duì)我施加什么要求? 沒有要求。GPL 不對(duì)此活動(dòng)附加任何條件。 2.36 GPL v3將“向公眾提供”作為傳播的一個(gè)例子。這是什么意思? 是提供一種可獲取的傳遞形式嗎? “向公眾提供”的一個(gè)例子是將該軟件放在公共網(wǎng)頁或FTP服務(wù)器上。在您這樣做之后,在任何人從您那里真正獲取軟件之前,可能會(huì)需要一段時(shí)間,但是由于這種情況可能會(huì)立即發(fā)生,您也需要能夠立即履行 GPL 的義務(wù)。因此,我們將“傳遞”定義為包括這一活動(dòng)。 2.37 鑒于分發(fā)和向公眾提供作為傳播形式,同樣也構(gòu)成了 GPL v3 中的“傳遞”,那么有哪些傳播的例子不構(gòu)成傳遞嗎? 為自己制作軟件的副本是不構(gòu)成“傳遞”的主要傳播形式。您可以依此在多臺(tái)計(jì)算機(jī)上安裝軟件,或進(jìn)行備份。 2.38 GPL v3 如何讓 BitTorrent 分發(fā)變得更容易? 因?yàn)?GPL v2 是在軟件的點(diǎn)對(duì)點(diǎn)分發(fā)普及之前編寫的,所以當(dāng)您利用這種方式分享代碼時(shí),很難滿足 GPL v2 的要求。在 BitTorrent 上分發(fā) GPL v2 目標(biāo)代碼時(shí),確保您合規(guī)的最佳方法是將所有相應(yīng)的源代碼包含在相同的種子文件中,但這種方式代價(jià)高昂。 GPL v3 以兩種方式解決了這個(gè)問題。首先,作為該過程的一部分,下載此種子文件并將數(shù)據(jù)發(fā)送給其他人的人不需要做任何事情。因?yàn)榈?9 節(jié)規(guī)定:“受保護(hù)作品的輔助傳播如果僅僅是使用點(diǎn)對(duì)點(diǎn)傳輸來接收副本,不需要接受[本許可證]?!?/p> 第二,通過告知接收人在公共網(wǎng)絡(luò)服務(wù)器上哪里可獲取,GPL v3 的第 6(e)節(jié)旨在給予分發(fā)者(最初制作種子文件的人)一種清晰、直觀的方式來提供源代碼。這樣可以確保每個(gè)想要獲取源代碼的人都可以如此獲取,而且分發(fā)者幾乎不用擔(dān)心。 2.39 什么是 TiVo化? GPL v3 對(duì)此如何防止? 一些設(shè)備使用可升級(jí)的自由軟件,但被設(shè)計(jì)為用戶不能修改該軟件。有很多不同的方式可以做到這一點(diǎn);例如,有時(shí)硬件校驗(yàn)所安裝的軟件,如果與預(yù)期簽名不匹配,則關(guān)閉軟件。制造商通過提供源代碼來遵循GPL v2,但是您仍然無法自由修改您使用的軟件。我們稱這種做法為TiVo 化。 當(dāng)人們分發(fā)包含遵循 GPL v3 軟件的“用戶產(chǎn)品”時(shí),第 6 節(jié)要求他們?yōu)槟峁┬薷脑撥浖璧男畔?。“用戶產(chǎn)品”是該許可證特別定義的術(shù)語;“用戶產(chǎn)品”的示例包括便攜式音樂播放器、數(shù)字錄像機(jī)和家庭安全系統(tǒng)。 2.40 GPL v3 是否禁止 DRM? 不禁止,您可以使用遵循 GPL v3 發(fā)布的代碼來開發(fā)您喜歡的任何類型的 DRM 技術(shù)。不過,如果您這樣做,第 3 節(jié)規(guī)定,系統(tǒng)不會(huì)被視為一種有效的技術(shù)“保護(hù)”措施,這意味著如果有人破壞了 DRM,他也可以自由分發(fā)他的軟件,不受《美國(guó)數(shù)字千禧版權(quán)法》(DMCA)和類似法律的限制。 像往常一樣,GNU GPL 并不限制人們?cè)谲浖性趺醋?,只是阻止他們限制他人?/p> 2.41 GPL v3 是否要求投票人能夠修改在投票機(jī)中運(yùn)行的軟件? 不要求。企業(yè)分發(fā)包含遵循 GPL v3 軟件的設(shè)備,最多只需要為擁有目標(biāo)代碼副本的人提供軟件的源代碼和安裝信息。使用投票機(jī)(如同任何其他信息亭一樣)的選民不能擁有它,甚至不能暫時(shí)擁有,所以選民也不能擁有二進(jìn)制軟件。 不過,請(qǐng)注意,投票是一個(gè)非常特殊的情況。僅僅因?yàn)橛?jì)算機(jī)中的軟件是自由軟件,并不意味著您可以信任計(jì)算機(jī),并進(jìn)行投票。我們認(rèn)為電腦不值得信任,不能被用作投票。投票應(yīng)在紙上進(jìn)行。 2.42 GPL v3 是否包含“專利報(bào)復(fù)條款”? 實(shí)際上,是的。第 10 節(jié)禁止傳遞該軟件的人向其他被許可人發(fā)起專利訴訟。如果有人這樣做,第 8 節(jié)解釋他們將如何喪失許可證權(quán)益以及與之伴隨的所有專利許可。 2.43 在 GPL v3 和 AGPL v3中,當(dāng)說到“盡管有本許可證的其他規(guī)定”時(shí),是什么意思? 這僅僅意味著以下條款勝過許可證中可能與之沖突的其他任何內(nèi)容。例如,如果沒有該文本,有些人可能聲稱,您不能將遵循 GPL v3 的代碼與遵循 AGPL v3 的代碼結(jié)合在一起,因?yàn)?AGPL 的附加要求將被歸類為 GPL v3 第 7 節(jié)下的“進(jìn)一步限制”。該文本明確表示我們的預(yù)期解釋是正確的,您可以進(jìn)行組合。 該文本僅解決許可證不同條款之間的沖突。當(dāng)兩個(gè)條件之間沒有沖突的時(shí)候,您必須同時(shí)滿足它們。這些段落不允許您輕率地忽略許可證的其余部分,它們只是強(qiáng)調(diào)了一些非常有限的例外。 2.44 在 AGPL v3 中,怎么才算是“通過計(jì)算機(jī)網(wǎng)絡(luò)遠(yuǎn)程與[軟件]進(jìn)行交互”? 如果程序被明確設(shè)計(jì)為接受用戶請(qǐng)求并通過網(wǎng)絡(luò)發(fā)送響應(yīng),則它符合這些標(biāo)準(zhǔn)。屬于此類程序的常見示例包括網(wǎng)絡(luò)和郵件服務(wù)器、交互式網(wǎng)絡(luò)應(yīng)用程序和在線游戲的服務(wù)器。 如果程序沒有被明確設(shè)計(jì)為通過網(wǎng)絡(luò)與用戶進(jìn)行交互,而是恰好在這樣做的環(huán)境中運(yùn)行,那么它不屬于此類。例如,僅僅因?yàn)橛脩敉ㄟ^ SSH 或遠(yuǎn)程 X 會(huì)話來運(yùn)行的應(yīng)用程序不需要提供源代碼。 2.45 GPL v3 中“您”的概念如何與 Apache License 2.0 中“法律實(shí)體”的定義相比較? 它們是完全相同的。Apache License 2.0 中“法律實(shí)體”的定義在各種法律協(xié)議中是非常標(biāo)準(zhǔn)的,因此,如果法院在缺乏明確定義的情況下沒有以同樣的方式解釋該術(shù)語,將會(huì)令人非常驚訝。我們完全期待他們?cè)诳?GPL v3 時(shí)也會(huì)如此,并考慮到誰有資格作為被許可人。 2.46 在 GPL v3 中,“該程序”是指什么? 是每個(gè)依據(jù) GPL v3 發(fā)布的程序? 術(shù)語“該程序”是指依據(jù) GPL v3 進(jìn)行許可的特定作品,由特定被許可人從上游許可人或分發(fā)者那里接收?!霸摮绦颉笔悄?GPL v3 許可的指定情境下接受到的特定軟件作品。 “該程序”并不意味著“依據(jù) GPL v3 進(jìn)行許可的所有作品”;由于一些原因,這種解釋沒有任何意義。針對(duì)那些想要了解更多的人,我們已經(jīng)發(fā)表了對(duì)“該程序”一詞的分析[10]。 2.47 如果某些網(wǎng)絡(luò)客戶端軟件依據(jù) AGPL v3 發(fā)布,是否必須能夠向與之交互的服務(wù)器提供源代碼? AGPL v3 需要該程序向“所有通過計(jì)算機(jī)網(wǎng)絡(luò)進(jìn)行遠(yuǎn)程交互的用戶”提供源代碼。至于您將程序稱為“客戶端”還是“服務(wù)器”,那無關(guān)緊要。您需要詢問的問題是,是否存在合理的期望讓一個(gè)人通過網(wǎng)絡(luò)遠(yuǎn)程與該程序交互。 2.48 對(duì)于一個(gè)運(yùn)行在代理服務(wù)器上的依據(jù) AGPL 進(jìn)行許可的軟件來說,如何向與該軟件交互的用戶提供源代碼書面文件? 對(duì)于代理服務(wù)器上的軟件,您可以通過向此類代理的用戶傳遞消息的常規(guī)方法來提供源代碼書面文件。例如,Web 代理可以使用登錄頁。當(dāng)用戶最初開始使用代理時(shí),您可以將他們引導(dǎo)到包含源代碼書面文件以及您選擇提供的任何其他信息的頁面。 AGPL 規(guī)定,您必須向“所有用戶”提供書面文件。如果您知道某個(gè)用戶已經(jīng)被展示過書面文件,對(duì)于當(dāng)前版本的軟件,您不必再重復(fù)向該用戶提供。 |
|