Linux Daily Topics

Debianはいかにして現在のDebianになったのか ―古参メンテナーが語る“Debian the way it is

1993年にかのIan Murdockが最初の「Debian Manifesto」を起草してから30年が経過したDebianプロジェクトは、世界でも有数の巨大オープンソースプロジェクトでもある。そしてDebianにはほかのLinuxディストリビューションやオープンソースソフトウェアでは見かけない、一見⁠奇妙⁠なルールや慣習があるのも事実だ。なぜDebianはそんなスタイルを取っているのか ―そんな世間からの疑問に対し、Debianプロジェクトに1996年から参加する古参メンテナー Lars Wirzeniusが自身のブログでDebianがいまのDebianとなった理由を語っている。

Larsは全部で8個の項目に対してDebianがそのアプローチを取っている理由を簡潔に説明している。

Debianがめざすもの
ほとんどの種類のコンピュータ上で動作する、無料のオープンソースソフトウェアのみで構成された、高品質で安全な⁠汎用⁠オペレーティングシステム
→汎用性をめざす=ソフトウェアの目的に基づいてパッケージを選択しない
Debian憲章
プロジェクト初期のリーダー(おそらくIan Murdockのこと)が独裁的であったことなどから、民主主義を徹底するためプロジェクトのルールを定義した「Debian憲章」を獲得
→プロジェクト初期はルールが少なかったが、それではうまく機能しなかったため
Debian社会契約(DFSG)
Free Software Foundation定義の「フリーソフトウェアとは何か」から発展し、Debianとは何か、何を行う組織なのかをあらわしたDebian自身と世界に対しての約束
→Debianが受け入れるべきものが明確になったが、まだ議論の余地はある
自己完結型
将来的に依存関係が使用できなくなることはを回避するため、DebianによってDebianにパッケージ化されたものはすべてDebianの依存関係のみを使用してビルドする
→Debianのパッケージ化は大変だが、それを選択している
バンドル化されたライブラリはない
セキュリティの対応や重大な修正を簡略化するため、バンドル化されたライブラリやライブラリのコピーは使用しない
→必ずしもアップストリームの開発者に歓迎されないため、ときどきDebianとの間で摩擦が生じる
メンバーシッププロセス
巨大で複雑なプロジェクトであるがゆえにメンバーを信頼できることが欠かせないため、新しいメンバーが入会する際にはさまざまな方法で精査する
→Debianに参加したい人や小規模なオープンソースプロジェクトに慣れている人はイライラするかも
リリースコード名
Debianはメジャーリリースごとにコード名を割り当てる。理由はかつてDeiban 1.0をリリースする際、作業が完全に終了する前の作業ディレクトリ「1.0」の内容を使ってCD-ROM発行元がディスクを大量生産したため、再発を防ぎ、ミラーリングコストを削減するためにリリースコード名を選択したことによる
→現在はプール構造がDebianアーカイブに追加されたので、昔よりはミラーリングが容易になっているのでバージョンでも良いかも
変化はゆっくりと
Debianはあまりに巨大(huge, massive, enormous)なので、大型船がゆっくりと止まるようにゆっくりと変化する。変更には合意の形成と広範な議論と時間が必要
→Debian開発者は技術的な決定において保守的な傾向があり、大規模な変更を必要としないソリューションを好む

30年も続くプロジェクトであれば、初期から関わっているメンバーばかりではなく、ローンチのころに生まれたような若い開発者もいる。若手や他のプロジェクトから来た人に「その奇妙な慣習に意味はあるのか?」と問われたとき、その理由と背景を説明できるLarsのようなメンバーはプロジェクトにとって大きな存在であるに違いない。

おすすめ記事

記事・ニュース一覧