開源社區是如何運作的:Debian vs Ubuntu
原創【51CTO精選譯文】Debian和Ubuntu都有一組官方授予的針對貢獻者的成員角色,他們可以以參加選舉或其他官方決策等方式參與到項目的治理中,同時這也是給貢獻者分配工作的一種手段,大部分貢獻者對他們獲得的身份都感到很自豪。
在一個發行版的發展過程中,成員結構扮演中重要的角色:它定義了受項目歡迎的貢獻者類型,以及項目對貢獻者的期望和貢獻者擁有的權利。***,這種方式形成了項目招募新貢獻者的吸引力,而只有不斷吸收新貢獻者才能使項目保持活力。
在《開源社區是如何運作的——Ubuntu篇》中,我們介紹了Ubuntu社區委員會的組織形式。本文拋開委員會的結構不談,將以Debian和Ubuntu對比為例,介紹不同背景的社區成員是如何進行貢獻以及官方認可的。
簡介
在具體介紹開始之前,先由51CTO編輯為大家簡單的介紹一下Debian和Ubuntu這兩個項目。
Debian是由各種開源協議下的自由軟體組成的作業系統,由“Debian計劃”組織維護。Debian計劃并沒有盈利組織支援,它的開發團隊完全由來自世界各地的志愿者。Debian經常被認為是一個Linux發行版,但實際上Debian所涵蓋的并不僅僅是Linux,還有GNU、FreeBSD等多種作業系統,因此Debian的官方稱呼叫做“Debian通用操作系統”。
采用Linux核心的Debian GNU/Linux是后來很多Linux發行版的基礎,Ubuntu正是其中最知名的一個發行版。Ubuntu的官方支持者是Canonical公司,六個月一次的Ubuntu新版本發布都是由Canonical負責,但大部分編碼、分發、文檔、翻譯等工作都是由社區志愿者完成。
參考閱讀:Debian與Ubuntu 父與子的對比哲學 | 尋找Linux的“根”
接下來,讓我們進一步了解這兩個項目的成員結構。
#p#
Debian的成員結構
Debian只有兩種官方背景的成員角色:Debian開發者(DD)和Debian維護人員(DM)。《Debian憲章》中定義了Debian開發者的權利,而Debian維護人員則是在2007年的總決議中才做的定義。DM一職被整合到Debian官方的進程十分緩慢,而現在,自愿者在申請成為DD之前***是先申請成為DM。
DD的主要職能是提交代碼以及進行自己負責的包的維護。他們具有進入Debian服務器的權限,并可以參與社區投票(比如一年一次的選舉)。
DM是一個沒有多少權限的角色,他們只能為那些在Maintainer或Uploaders字段里包含他們的名字、并已經被DD指定了DM-Upload-Allowed: yes標記(意思為允許DM上傳)的包執行上傳的工作,除此之外他們沒有別的權利,而他們訪問Debian資源的權限也十分有限。
除了這兩個官方角色外,還有一些非官方身份的包維護人員。但他們的名字只出現在Maintainer字段,因此他們不能執行上傳操作,所有上傳操作都由DD完成并進行校驗。如果DD信任這些非正式任維護人員,他們通常希望維護人員去申請正式的DM角色,這樣可以將上傳的工作移交給他們來執行,以減輕自己的負擔。
要成為一個Debian貢獻者,一般的途徑是先成為非官方的包維護人員。在其包維護的能力和人品得到DD認可并推薦之后,則可以申請成為DM。DM任期滿6個月后,則可以通過Debian New Maintainers進程申請成為一個DD,這個過程也需要其他DD的推薦。
Ubuntu中的開發者角色
Ubuntu從一開始就定義了一個官方的“Ubuntu成員(UM)”角色,它包括所有貢獻者,如開發人員,文檔編寫人員,翻譯人員,美工等等。有了這個身份后才可以參與Ubuntu社區委員會的選舉,也才有機會參與Planet Ubuntu計劃(51CTO編輯注:這是一個類似于集體博客的計劃),此外,還可以獲得一個@ubuntu.com郵件別名。
對于開發人員,情況更復雜:Wiki頁面列出了不少于5種身份。最初,開發人員分為Ubuntu核心開發人員(UCD)和Ubuntu宇宙大師(MOTU),后者負責universe/multiverse部分的歸檔,而前者則有main/restricted部分的上傳權限。不過,受到Debian維護人員角色的啟發以及在歸檔方面面臨的一些具體問題,Ubuntu修改了底層結構,以提供更細粒度的包上傳控制。(51CTO編輯注:Ubuntu主要分為四大組件:Main,Restricted,Universe,以及Multiverse。Main指由Ubuntu團隊支持的、在Ubuntu發行版中列入標準配置的自由開源軟件;Restricted指的是Ubuntu發行版中默認配置的專有軟件,主要是硬件驅動;Universe主要是來自第三方、不由Ubuntu團隊負責的開源軟件;Multiverse則是來自第三方的專有軟件。)
Ubuntu現在可以為每個包授予上傳權限,也可以用相同的粒度進行權限委托,于是就誕生了新的“單包上傳者(PPU,Per Package Uploader)”身份——他們是僅對一組有限的包具有上傳權限的Ubuntu成員。Ubuntu開發者身份現在包含多個不同的開發團隊,分別被委托以不同包集合的上傳權限。目前,已經有Ubuntu Desktop,Mythbuntu,Kubuntu和Edubuntu四個團隊,每個團隊可以規定自己的策略,在遵循開發者成員委員會規定的基本原則下,可以自行增加新成員。
Ubuntu貢獻開發人員是一種中間身份,他還沒有為成為其他開發者身份做好準備,但表達了成為Ubuntu成員的決心。
所有這些身份都可以通過類似的方法取得:創建一個Wiki頁面列舉你過去所做出的貢獻;從與你一起工作過的現有成員那里收集證明;將你自己添加到下一次委員會會議的議事日程中,并準時參加會議。委員會成員將會查看你的Wiki頁面,并根據你在會議(以及平時的開發者郵件列表)上的作答情況,以及其他人對你的意見,審核你是否能通過。
最重要的委員會成員是由社區選舉產生的,而其他一般的角色是由社區委員會任命的。這些治理主體包括Canonical員工,但并沒有想象的那么多人:開發者成員委員會總共有8人,其中2人是Canonical員工;社區委員會總共也只有8人,其中2人是Canonical員工;技術委員會的6個成員全部是Canonical員工,這6名成員全部由Mark Shuttleworth親自任命,社區對此沒有任何話語權,在確認投票時只能選擇同意。很明顯,作為Ubuntu的創始人,Mark Shuttleworth希望牢牢控制該項目的發展方向,也只有他是社區委員會和技術委員會***性成員。
#p#
Debian和Ubuntu身份對比
下表列出了這兩個項目給開發者授予的權利對比。
權利 | Debian | Ubuntu | ||||
DM | DD | UM | PPU/UD | MOTU | UCD | |
通過監督進行包維護 | 有 | 無需監督 | 有 | 有 | 有 | 無需監督 |
官方的Email郵件別名 | - | 有 | 有 | 有 | 有 | 有 |
參與成員投票 | - | 有 | 有 | 有 | 有 | 有 |
參與開發者投票 | - | 有 | - | 有 | 有 | 有 |
上傳權限受限于預先核準的包 | 有 | - | - | 有 | - | - |
上傳權限受限于歸檔部分 | - | - | - | - | 有 | - |
無限制的上傳權限 | - | 有 | - | - | - | 有 |
貢獻者人數(截止2010-7-27) | 117 | 904 | 462 | 27 | 85 | 63 |
注解:DM=Debian Maintainer
DD=Debian Developer
UM=Ubuntu Members
PPU/UD=Per Package Uploader/Ubuntu Developers
MOTU=Master of the Universe
UCD=Ubuntu Core Developers
請注意這里的Ubuntu貢獻者人數不是100%的精確,因為同一個貢獻者可能擁有多個身份。
從上表可以看出,Ubuntu提供的身份選擇更多,因此被官方定義了的參與者也更多,但Debian具有明顯更多的開發者人數。雖然所有工作都是貢獻者來完成,但最關鍵的權利還是只有少數人才能獲得。Ubuntu貢獻者中,Canonical員工居多,63名核心開發人員中有36人使用 @canonical.com郵件后綴注冊launchpad帳號,他們放在Ubuntu發行版上的時間比Debian成員更多,如果能比較一下他們的工時數將非常有意思。
Debian已經意識到成員結構的缺點,就是否增設專門的打包人員也討論過多次了,但遺憾的是每次都只是討論討論就結束了,始終沒有拿出一個解決方案。
可能的演變
Ubuntu方面,底層結構變化最近已經結束,他們近期不再打算做出進一步變化,但他們計劃讓每個團隊可以更好地控制與自身相關的包上傳權限,這樣可以讓每個獨立的開發者可以成為單包上傳者。
在Debian方面,Debian項目列表上最近又對某些糟糕的術語進行了討論,大部分人都贊同將“新的維護者進程”改名(建議改成“新的開發者進程”),但Debian帳號管理者Christoph Berg認為應該叫做“新的維護者團隊”,他表示成員結構改革是新的維護者團隊的頭等大事。
自上一次努力改革已經過去兩個年頭了,新的維護者團隊已經招募了許多新成員,新成員的表現都非常不錯,剛剛閉幕的DebConf大會也就Debian成員結構改革進行了大討論,并逐漸成為討論改革事宜的重要集會。
原文出處:http://lwn.net/Articles/398158/
【編輯推薦】