DUICUO

オープンソースコミュニティの仕組み:Debian vs Ubuntu

[51CTO 選訳] DebianとUbuntuはどちらも、貢献者向けに公式に付与された一連のメンバーシップの役割を持っています。貢献者は選挙やその他の公式決定に参加することで、プロジェクトのガバナンスに参加できます。これは貢献者に作業を割り当てる手段でもあり、ほとんどの貢献者は与えられた役割に誇りを持っています。

ディストリビューションの開発において、メンバーシップ構造は重要な役割を果たします。これは、プロジェクトが歓迎する貢献者のタイプ、そして貢献者に対するプロジェクトからの期待と彼らが持つ権利を定義するものです。この構造は、プロジェクトにとって新しい貢献者を募集する魅力を生み出し、継続的に新しい貢献者を引き付けることでのみ、プロジェクトの活力を維持することができます。

「オープンソースコミュニティの仕組み - Ubuntu編」では、Ubuntuコミュニティ委員会の組織構造を紹介しました。この記事では、委員会構造については触れず、DebianとUbuntuを例に、異なるバックグラウンドを持つコミュニティメンバーがどのように貢献し、その貢献がどのように公式に認められているのかを説明します。

導入

詳細な紹介を始める前に、51CTO の編集者が Debian および Ubuntu プロジェクトについて簡単に紹介します。

Debianは、様々なオープンソースライセンスに基づくフリーソフトウェアで構成されたオペレーティングシステムであり、「Debianプロジェクト」によって維持されています。Debianプロジェクトは営利団体の支援を受けておらず、開発チームは世界中のボランティアのみで構成されています。DebianはLinuxディストリビューションとみなされることが多いですが、実際にはLinuxだけでなく、GNU、FreeBSD、その他のオペレーティングシステムも含まれています。そのため、Debianの正式名称は「Debian Universal Operating System」です。

Linuxカーネルを使用するDebian GNU/Linuxは、その後の多くのLinuxディストリビューションの基盤となり、中でもUbuntuは最もよく知られているディストリビューションの一つです。UbuntuはCanonicalによって公式にサポートされており、Canonicalは6ヶ月ごとにUbuntuの新バージョンをリリースしています。しかし、コーディング、配布、ドキュメント作成、翻訳作業の大部分はコミュニティのボランティアによって行われています。

さらに読む: Debian vs. Ubuntu: 父と子の比較哲学| Linuxの「ルーツ」を探る

次に、これら 2 つのプロジェクトのメンバーシップ構造を詳しく見てみましょう。

#p#

Debianメンバー構成

Debianには公式メンバーの役割が2つしかありません。Debian開発者(DD)Debianメンテナ(DM)です。Debian開発者の権利はDebian憲章で定義されていますが、Debianメンテナの役割は2007年の一般決議で定義されました。DMの役割を公式Debianチームに統合するのは非常に遅く、現状ではボランティアはDDに応募する前にDMに応募しています。

DDの主な役割は、担当するパッケージのコードを提出し、メンテナンスすることです。DDはDebianサーバーにアクセスでき、コミュニティの投票(年次選挙など)に参加できます。

DMは権限が制限された役割です。DMは、MaintainerまたはUploadersフィールドに自分の名前が記載され、DDによってDM-Upload-Allowed: yesフラグが付けられている(DMによるアップロードが許可されている)パッケージのアップロードのみを実行できます。その他の権限はなく、Debianリソースへのアクセスも非常に制限されています。

これら2つの公式の役割に加えて、非公式のパッケージメンテナーも存在します。ただし、彼らの名前はMaintainerフィールドにのみ表示されるため、アップロード操作を行うことはできません。すべてのアップロード操作はDDによって完了および検証されます。DDがこれらの非公式メンテナーを信頼している場合、通常は公式のDMの役割に応募するよう求めます。これにより、アップロード作業が彼らに委任され、DD自身の作業負荷が軽減されます。

Debianの貢献者になるには、まず非公式のパッケージメンテナーになるのが一般的です。パッケージメンテナンスのスキルと人柄がDebianメンテナー(DD)に認められ、推薦されたら、Debian開発者(DM)への応募が可能になります。DMとして6ヶ月の任期を全うした後、Debian新規メンテナープロセスを通じてDDへの応募が可能になります。このプロセスにも、他のDDからの推薦が必要です。

Ubuntuにおける開発者の役割

Ubuntuは当初から公式の「 Ubuntuメンバー(UM) 」という役割を定義しており、開発者、ドキュメント作成者、翻訳者、デザイナーなど、すべての貢献者が含まれます。このIDを持つことで、Ubuntuコミュニティ委員会の選挙やPlanet Ubuntuプロジェクト( 51CTO編集者注:これは共同ブログのようなプロジェクトです)に参加できます。さらに、@ubuntu.comのメールエイリアスが付与されます。

開発者の場合、状況はより複雑です。Wiki ページには 5 つ以上の役割がリストされています。当初、開発者はUbuntu Core Developers (UCD)Ubuntu Universe Masters (MOTU)に分かれていました。後者は universe/multiverse 部分のアーカイブを担当し、前者は main/restricted 部分のアップロード権限を持っていました。しかし、Debian のメンテナーの役割とアーカイブで発生した特定の問題にヒントを得て、Ubuntu は基礎構造を変更し、パッケージのアップロードをより細かく制御できるようになりました。( 51CTO 編集者注: Ubuntu は主に4 つのコンポーネントに分かれています。Main、Restricted、Universe、Multiverse。Main は、Ubuntu チームによってサポートされ、Ubuntu ディストリビューションの標準構成に含まれる無料のオープンソース ソフトウェアを指します。Restricted は、Ubuntu ディストリビューションにデフォルトで含まれるプロプライエタリ ソフトウェア (主にハードウェア ドライバー) を指します。Universe は、Ubuntu チームによって管理されていないサードパーティのオープンソース ソフトウェアが主な構成です。Multiverse は、サードパーティのプロプライエタリ ソフトウェアです。 )

Ubuntuでは、すべてのパッケージに対してアップロード権限を付与し、権限を同じ粒度で委任できるようになりました。これにより、新しい「 Per Package Uploader (PPU)」アイデンティティが作成されます。これは、限られたパッケージセットに対してのみアップロード権限を持つUbuntuメンバーです。Ubuntu開発者アイデンティティには、複数の異なる開発チームが含まれるようになり、それぞれが異なるパッケージセットに対してアップロード権限を委任されています。現在、Ubuntu Desktop、Mythbuntu、Kubuntu、Edubuntuの4つのチームがあります。各チームは、開発者メンバーシップ委員会が定めた基本原則を遵守しながら、独自のポリシーを定義し、独立して新しいメンバーを追加できます。

Ubuntu 貢献者は中間的なアイデンティティです。まだ別の開発者になる準備はできていませんが、Ubuntu のメンバーになる決意を表明しています。

これらのIDはすべて、同様のプロセスで取得できます。過去の貢献をリストアップしたWikiページを作成し、一緒に仕事をした既存のメンバーから推薦状を集め、次回の委員会会議の議題に自分自身を追加し、時間通りに出席してください。委員会メンバーはあなたのWikiページを審査し、会議(および通常の開発者メーリングリスト)でのあなたの回答と他のメンバーからのフィードバックに基づいて、資格を判断します。

委員会の最重要メンバーはコミュニティによって選出され、その他の一般的な役割はコミュニティ委員会によって任命されます。これらのガバナンス組織にはCanonicalの従業員が含まれますが、想像するほど多くはありません。開発者委員会は合計8名で、そのうち2名はCanonicalの従業員です。コミュニティ委員会も8名で、そのうち2名はCanonicalの従業員です。技術委員会の6名のメンバーはすべてCanonicalの従業員で、全員がマーク・シャトルワース氏によって個人的に任命されたものです。コミュニティは発言権を持たず、賛成票を投じることしかできません。Ubuntuの創設者であるマーク・シャトルワース氏は、プロジェクトの方向性を厳しく管理したいと考えていることは明らかで、コミュニティ委員会と技術委員会の両方において、彼が唯一の主要メンバーとなっています。

#p#

DebianとUbuntuのアイデンティティ比較

以下の表は、これら 2 つのプロジェクトによって開発者に付与される権利を比較したものです。

デビアンウブントゥ
DM DDうーんPPU/UD MOTU UCD
監視によるパッケージのメンテナンス持っている監督は不要持っている持っている持っている監督は不要
公式メールエイリアス-持っている持っている持っている持っている持っている
会員投票に参加する-持っている持っている持っている持っている持っている
開発者投票に参加する-持っている-持っている持っている持っている
アップロード権限は事前に承認されたパッケージに制限されます。持っている- -持っている- -
アップロード権限はアーカイブセクションに制限されます。 - - - -持っている-
無制限のアップロード権限-持っている- - -持っている
寄稿者数(2010年7月27日現在) 117 904 462 27 85 63

注: DM = Debian メンテナー
DD = Debian開発者
UM = Ubuntuメンバー
PPU/UD=パッケージごとのアップローダー/Ubuntu 開発者
MOTU = 宇宙の覇者
UCD = Ubuntuコア開発者

ここでの Ubuntu 貢献者の数は 100% 正確ではないことに注意してください。同じ貢献者が複数の ID を持っている可能性があります。

上の表が示すように、Ubuntuはより多くのIDオプションを提供しており、結果として公式に定義された参加者もより多くなっています。一方、Debianは開発者数が大幅に多いという特徴があります。すべての作業は貢献者によって行われていますが、最も重要な権限は依然として選ばれた少数の人々に留保されています。Ubuntuの貢献者のうち、Canonicalの従業員が大多数を占めており、63人のコア開発者のうち36人が@canonical.comのメールアドレスを使用してLaunchpadアカウントを登録しています。彼らはDebianメンバーよりもUbuntuディストリビューションに多くの時間を費やしており、その時間の比較は非常に興味深いものとなっています。

Debianはメンバー構成の欠点を認識しており、専任のパッケージング担当者を追加する可能性について何度も議論してきました。しかし残念ながら、どの議論も解決策が見つからず終わっています。

進化の可能性

Ubuntuでは、基盤となる構造の変更が最近完了しており、近い将来にさらなる変更を行う予定はありません。ただし、各チームがパッケージのアップロード権限をより細かく制御できるようにすることで、個々の開発者が単一のパッケージアップローダーとして機能できるようになる予定です。

Debian側では、最近、Debianプロジェクトリストにおける用語の使用に関する問題が議論されています。「New Maintainers Process」(「New Developers Process」への変更を提案)という名称変更には大方の意見が一致していますが、Debianアカウント管理者のChristoph Berg氏は、新メンテナーチームにとってメンバー構成の再構築が最優先事項であるとして、「New Maintenanceers Team」に改名すべきだと主張しています。

前回の大規模な改革から2年が経過しました。新しいメンテナチームは多くの新メンバーを採用し、彼らは非常に優れた成果を上げています。先日終了したDebConfカンファレンスでも、Debianメンバー構成の改革について大きな議論が行われ、改革に関する議論の場として徐々に重要な場となっています。

出典: http://lwn.net/Articles/398158/

[編集者のおすすめ]

  1. DebianとUbuntuの比較哲学:父と息子
  2. オープンソースコミュニティの仕組み – Ubuntu編
  3. CanonicalのCOOがオープンソースソフトウェアの収益性動向について語る