自由系統發行指南 (GNU FSDG)
這些指南的目的是解釋可安裝的系統發行版(例如 GNU/Linux 發行版)要符合自由(libre)的定義,並協助發行版開發者使其發行版符合資格。
這些指南尚未完整。我們已經提到了目前已知的問題,但我們確信還有更多。當我們遇到時,我們會將它們添加進來。
我們要感謝 Fedora 專案協助我們聚焦這些政策,並允許我們使用其自身的發行版授權指南作為本文檔的基礎。
此頁面由自由軟體基金會的授權與合規實驗室維護。您可以捐款給 FSF 以支持我們的工作。
您可以使用我們的出版物來了解 GNU 授權條款如何運作,或幫助您倡導自由軟體,但它們並非法律建議。FSF 無法提供法律建議。法律建議是由同意為您工作的律師提供的個人化建議。我們的回答處理一般性問題,可能不適用於您的特定法律情況。
這裡沒有解答您的問題嗎?請查看我們其他的授權資源,或透過 licensing@fsf.org 聯絡合規實驗室。
完整發行版
我們的發行版列表是您可以安裝在電腦中的系統指南。因此,它僅包含本身完整且隨時可用的發行版。如果發行版不完整——如果它需要進一步開發,或預設要安裝其他軟體——那麼即使它是自由軟體,也不會在此處列出。
特別是,自由系統發行版應該是自舉的。這表示您必須能夠使用系統提供的工具來開發和建置系統。因此,自由系統發行版不能包含只能透過使用非自由軟體建置的自由軟體。
我們針對小型系統發行版對此要求做出例外,這些發行版是為資源有限的設備設計的,例如無線路由器。自由小型系統發行版不需要是自舉的或完整的,因為在這樣的系統上進行開發是不切實際的,但它必須能夠在我們發行版列表中的自由完整系統發行版的基礎上進行開發和建置,也許可以藉助與小型系統發行版本身一起發行的自由工具。
授權規則
「實用資訊」包括具有直接功能性應用的軟體、文件、字型和其他資料。它不包括具有美學(而非功能性)目的的藝術作品,或意見或判斷的陳述。
自由發行版中所有實用資訊都必須以原始碼形式提供。(「原始碼」表示用於對資訊進行變更的首選形式。)
資訊和原始碼必須在適當的自由授權條款下提供。我們評估特定的授權條款,並在我們的授權條款列表中列出我們的決定,其中針對適用於軟體、文件、字型和其他實用作品的授權條款設有單獨的章節。如果這類作品是以多種授權條款的析取形式發布,則只要其中至少有一個授權條款是自由的,該作品就是自由的;系統開發人員在發行和/或修改它時,應遵循適用的自由授權條款。
自由系統發行版不得引導使用者獲取任何非自由的實用資訊,或鼓勵他們這樣做。系統不應有非自由軟體的儲存庫,也不應有安裝特定非自由程式的特定方法。發行版也不應引用未承諾僅包含自由軟體的第三方儲存庫;即使它們今天只有自由軟體,明天也可能不是這樣。系統中的程式不應建議安裝非自由的外掛程式、文件等等。
例如,自由系統發行版不得包含實作 EME 的瀏覽器,EME 是旨在載入 DRM 模組的瀏覽器功能。
某些非自由發行版提供一個安裝選項來排除非自由套件。這個選項是一個進步,因為它使避免它們變得容易得多,前提是發行版對該選項的實作是完全正確的。然而,非自由套件仍然包含在發行版中。此外,我們知道大多數使用者並非強烈致力於軟體自由,並且不會僅僅因為套件是非自由的就拒絕看似方便的套件。實際上,將這些發行版之一列為自由發行版主要會導致人們安裝非自由軟體。基於這些原因,我們不列出它們。
今天大多數自由系統發行版中都有大量的程式碼;直接稽核所有程式碼所需的工作量對於大多數團隊來說是不切實際的。過去,一些非自由程式碼曾意外地包含在自由系統發行版中。我們不會因此而將發行版從列表中移除;相反地,我們只要求發行版的開發人員盡力避免包含非自由軟體,並承諾在發現任何此類程式時將其移除。
對於創建或考慮自由軟體發行版的人來說,某些類型的授權情況值得特別關注;這些將在以下章節中討論。
非自由韌體
某些應用程式和驅動程式需要韌體才能運作,有時這些韌體僅以目標碼形式發布,並採用非自由授權條款。我們將這些韌體程式稱為「二進位檔案 (blobs)」。在大多數 GNU/Linux 系統上,您通常會發現這些檔案與 Linux 核心中的某些驅動程式一起出現。此類韌體應從自由系統發行版中移除。
二進位檔案可能有多種形式。有時,它們會以單獨檔案的形式提供。其他時候,它們可能會被併入驅動程式本身的原始碼中——例如,它可以編碼為一個大型數字陣列。但無論它如何編碼,任何非自由韌體都需要從自由系統中移除。
(需要澄清的是,並非驅動程式中的每個數字陣列都是韌體。重要的是要了解資料的用途,然後再決定它是否適用於自由系統。)
Brian Brazil、Jeff Moe 和 Alexandre Oliva 開發了一系列腳本,用於從 Linux 核心的庫存版本中移除非自由韌體。如果您想開發自己的自由 GNU/Linux 發行版,您可能會發現它們很有用——儘管我們建議加入現有自由發行版的開發,而不是透過啟動新的發行版來分散精力。無二進位檔案版本 Linux 核心的完整原始碼也可用;您可以從自由軟體目錄中了解更多關於這個專案的資訊。
非功能性資料
非功能性資料,即不做實際工作的資料,更多的是系統軟體的裝飾,而不是其組成部分。因此,我們不堅持對非功能性資料採用自由授權條款標準。只要其授權條款允許您為了商業和非商業目的複製和再發行,它就可以包含在自由系統發行版中。例如,某些在 GNU GPL 下發布的遊戲引擎附帶的遊戲資訊(虛構的世界地圖、遊戲圖形等)是在這種逐字發行授權條款下發布的。這類資料可以成為自由系統發行版的一部分,即使其授權條款不符合自由的標準,因為它是非功能性的。
商標
商標與某些軟體相關聯。例如,程式的名稱可能已註冊商標,或者其介面可能會顯示註冊商標的標誌。通常,這些標記的使用將以某種方式受到控制;特別是,開發人員通常被要求在修改軟體時從軟體中移除對商標的引用。
在極端情況下,這些限制可能會有效地使程式變成非自由軟體。如果商標散佈在整個原始碼中,要求您從修改後的程式碼中移除商標是不公平的。但是,只要實際要求是合理的,自由系統發行版就可以包含這些程式,無論是否帶有商標。
同樣地,發行版本身可能持有特定的商標。如果修改需要移除這些商標,只要它們可以輕易地移除且不喪失功能,就沒有問題。
然而,使用商標來限制完整發行版或任何部分的逐字複製和再發行是不可接受的。
文件
自由系統發行版中的所有文件都必須在適當的自由授權條款下發布。此外,它必須注意不要推薦非自由軟體。
一般來說,有助於已經使用非自由軟體的人更好地將自由軟體與其一起使用的東西是可以接受的,但是鼓勵自由軟體使用者安裝非自由軟體的東西是不可接受的。
例如,自由系統發行版可能會有關於使用者設定雙重啟動系統的文件。它可以解釋如何存取專有作業系統的檔案系統、從中匯入設定等等。這將有助於人們在已經安裝了專有軟體的機器上安裝自由系統發行版,這是好事。
不可接受的是,文件提供人們在系統上安裝非自由程式的說明,或提及他們這樣做可能獲得的便利。
對於一個邊緣案例,明確且嚴正地告誡不要使用非自由程式會使其移到可接受的一側。
專利
自由軟體開發人員和發行商實際上不可能知道給定的軟體是否侵犯了任何專利:專利數量太多,它們因國家/地區而異,它們的措辭通常使其難以辨別它們涵蓋或不涵蓋的內容,而且很難判斷哪些專利是有效的。因此,我們通常不要求自由系統發行版因可能的專利威脅而排除軟體。另一方面,如果發行商選擇省略某些軟體以避免專利風險,我們也不反對。
沒有惡意軟體
發行版不得包含 DRM、後門程式和間諜軟體。
承諾修正錯誤
大多數發行版開發團隊沒有資源來詳盡檢查其發行版是否符合所有這些標準。我們也沒有。因此,我們預期發行版偶爾會包含錯誤:溜進來的非自由軟體等等。我們不會因為錯誤而拒絕發行版。我們的要求是發行版開發人員堅定承諾及時修正任何報告給他們的錯誤。
維護
為了被列出,發行版應該得到積極維護,並且應該為 GNU 計劃提供明確且具體的方式來報告我們發現的非自由軟體問題。它也應該在我們報告的問題得到解決時通知我們。
名稱混淆
我們不會列出名稱容易與非自由發行版混淆的發行版。例如,如果 Foobar Light 是自由發行版,而 Foobar 是非自由發行版,我們將不會列出 Foobar Light。這是因為我們預期在傳達訊息的過程中,兩者之間的區別會消失。
特別是,自由發行版的主要名稱(在此範例中為「Foobar」)不應成為任何非自由發行版名稱的一部分。
有些人曾想過在自由發行版的名稱中加入「GNU」名稱,以將其與非自由發行版區分開來。這有兩個問題。首先,這兩個名稱不會有足夠的區別,因為兩個名稱中的主要詞彙會是相同的。
其次,這會助長對「GNU」含義的誤解。GNU 是一個作業系統,通常與 Linux 作為核心一起使用,並且基本上所有所謂的「Linux」發行版實際上都是 GNU/Linux 發行版。在這種情況下,兩種版本都是 GNU/Linux,並且從其中一個版本的名稱中省略「GNU」會產生誤導。
如果您是下游,請聯絡上游
對於發行版開發人員(或任何其他人)來說,如果他們為 GNU 套件發送了重要的錯誤報告:如果在合理的時間(請至少等待兩週)後,套件維護者仍未理會,您可以透過寫信給 <maintainers@gnu.org> 來提升錯誤的嚴重性。如果您找不到套件維護者近期活動的證據,則尤其有必要這樣做。
請向使用者宣導自由軟體
為了建立持久的自由,僅僅給予使用者自由是不夠的。還必須教導他們理解自由的意義並要求自由。因此,我們建議並敦促自由發行版在螢幕上顯著地宣布,在登入前和登入後的預設桌面上,發布關於自由的顯著聲明,例如「本系統是尊重自由的自由/開放原始碼軟體」或類似的聲明,並提供指向 gnu.org 或 gnu.org/philosophy 的連結或圖示,以獲取有關此問題的更多資訊。
請避免重複宣傳和混淆
請參閱我們的應避免使用的詞彙列表,這些詞彙可能帶有偏見、誤導或令人困惑,並盡量在您的公開聲明和與公眾的討論中避免使用它們。
結語
我們維護著我們所知的自由 GNU 系統發行版列表。如果您知道有未列出的自由發行版,請要求其開發人員寫信至 <webmasters@gnu.org>,並附上其系統的描述以及其網頁的連結。
我們也在相同的道德條件下列出了自由非 GNU 系統發行版。
如果您對這些指南本身有任何問題或意見,請隨時發送至 <licensing@fsf.org>。我們希望它們能幫助大家更好地理解對於自由系統發行版來說重要的問題,並且我們期待在未來推廣更多這類發行版。