開源定義

開源定义

開源定義(英語:The Open Source Definition)是開放源代碼促進會(OSI)出版的文件,來確定一個軟件許可證是否可以獲得該會的開源軟件標記[1]

這份定義基於Debian自由軟件指導方針, 由Bruce Perens撰寫和修改,Eric S. Raymond 等人也做出貢獻[2]

定義

開放源代碼不止意味着可以訪問代碼。開源軟件的分發需要服從以下準則:

  1. 自由再分發 許可證不應該限制其他方出售或者分發該軟件,當該軟件作為包含多個不同源碼程序的集成軟件的一部分。許可證不應該要求專利費或其他銷售費用。
  2. 源代碼 程序必須包含源代碼,需要有完整的源代碼和可編譯的形式。程序的某一部分如果不是來自這份源代碼,那必須有一個不需要費時費財的公共方式獲得源代碼或者從網絡上下載過來。源代碼需要以易修改的形式呈現。不能故意模糊源代碼,也不能只發布預處理器或編譯器的輸出文件。
  3. 衍生作業 許可證必須允許修改和衍生作業,需要像原來的許可證那樣發布。
  4. 作者源代碼的完整性 僅當許可證允許使用源代碼分發「補丁文件」以便在構建時修改程序時,許可證才可以限制源代碼以修改的形式分發。 許可證必須明確允許分發由修改後的源代碼構建的軟件。許可證可能要求派生作品帶有與原始軟件不同的名稱或版本號。
  5. 不歧視個人或團體 許可證不能歧視任何個人或團體。
  6. 不歧視領域 許可證不能限制任何人將程序用在某個特定的領域。例如,不能要求人們不可以把程序用在商業領域或者基因研究。
  7. 許可證的分發 該程序所附帶的權利必須適用於該程序再分配的所有人,而無需由分配方執行額外的許可。
  8. 許可證不能對一個產品特化 附加到程序的權利不得取決於程序是特定軟件分發的一部分。如果程序是從該分發中提取並在程序許可的條款中使用或分發的,則程序重新分發的所有各方應具有與原始軟件分發相同的權限。
  9. 許可證不能限制其他軟件 許可證不得對與許可軟件一起分發的其他軟件施加限制。例如,許可證不得堅持在同一介質上分發的所有其他程序必須是開源軟件。
  10. 許可證必須是技術中立的 許可證的提供不得基於任何單獨的技術或界面風格。

接納

FSF立場

開放源代碼促進會開源運動開源軟件的定義以及自由軟件基金會(FSF)對自由軟件的官方定義基本上參考相同的軟件許可證(除了少數例外情況),這兩個定義因此具有相同的品質和價值[3]。儘管如此,FSF創始人Richard Stallman在評論時強調了潛在的哲學差異:

某些人口中的「開源」軟件意指與自由軟件大致相同的類別。 但它們不是完全相同的軟件類別:開源軟件接受一些我們認為過於限制的許可證,並且沒有接受部分自由軟件的許可證。 但是,類別擴展的差異很小:幾乎所有的自由軟件都是開源的,幾乎所有的開源軟件都是自由的。

- 自由軟件基金會[4]

開放知識

Open Knowledge International(OKI)[5]開放內容開放數據開放許可開放定義中描述,「開放/自由」在開源定義、FSF和自由文化作品定義中是同義詞:

這個基本含義與開源定義中的「開放」相匹配,與自由文化作品定義和自由軟件定義中的「自由」同義。

- 開放定義[6]

參見

參考資料

  1. ^ Raymond, Eric S. "Open Source Certification". Open Source Initiative. June 16, 1999 [2017-11-18]. (原始內容存檔於2018-06-12). 
  2. ^ Tiemann, Michael. "History of the OSI". Open Source Initiative. September 19, 2006 [2017-11-18]. (原始內容存檔於2019-10-26). 
  3. ^ Kelty, Christpher M. "The Cultural Significance of free Software – Two Bits". Duke University Press. 2008. 
  4. ^ "Categories of free and nonfree software". Free Software Foundation. [2018-07-10]. (原始內容存檔於2017-12-01). 
  5. ^ Davies, Tim. "Data, information, knowledge and power – exploring Open Knowledge's new core purpose". Tim's Blog. April 12, 2014 [2018-07-10]. (原始內容存檔於2017-06-29). 
  6. ^ "Open Definition 2.1". The Open Definition. [2018-07-10]. (原始內容存檔於2021-09-26).