HN 日本語サマリー

← 一覧へ戻る
プログラミング

GentooのChromiumパッケージに終止符

Last rites for Gentoo's Chromium package (lwn.net)

57 pointsby signa1149 コメント

要約

Gentoo LinuxディストリビューションのChromiumパッケージメンテナーが、パッケージの維持管理の困難さから「last rites(最後の儀式)」を宣言しました。Chromiumは複雑なビルドシステム、頻繁なリリース、依存関係の多さから、ソースからのビルドを基本とするGentooでのパッケージングが非常に困難であることが原因です。この決定は、メンテナー不足と、ユーザーからの報告や提案に対する対応の遅れが背景にあります。

全文翻訳

Joe Brockmeier 2026年10月6日 GoogleのChromeウェブブラウザのオープンソースアップストリームプロジェクトであるChromiumは、多くのLinuxユーザーにとって選択肢となっています。しかし、Linuxディストリビューションがパッケージ化してビルドするのが難しいという評判も得ています。Chromiumは複雑なビルドシステムを持ち、プロジェクトは多くの依存関係をバンドルしており、リリース頻度も高いです。これらすべてに加え、ユーザーからの苦情が、GentooのChromiumパッケージのメンテナーがパッケージの維持管理を諦める原因となりました。Gentooは、Portageソフトウェア管理ツールを使用してユーザーが自分でソースからソフトウェアをビルドできるようにすることに重点を置いています。Gentooのパッカーは、Portageがソフトウェアをビルドするために必要な情報を含む、Bashライクな構文で書かれたテキストファイルであるebuildファイルを作成します。ユーザーはその後、Portageのコマンドラインインターフェイスであるemergeを使用して自分でパッケージをビルドします。最近のChromiumのebuildは、パッケージの複雑さを示しています。Gentooは、Binhostプロジェクトを通じて一部のソフトウェアの事前ビルドされたバイナリパッケージを提供しています。しかし、ソースからビルドすることで、ユーザーはUSEフラグを宣言してコンパイル時のオプションを設定したり、パッケージの設定を変更したりする柔軟性を得られます。例えば、ユーザーは、どのオプションライブラリがパッケージにリンクされるか、または付属のドキュメントをインストールするかどうかを指定したい場合があります。特にChromiumの場合、ユーザーは-bundled-toolchain USEフラグ(バンドルされたツールチェーンを使用しないようにPortageに指示する)を使用して、アップストリームプロジェクトに含まれるバンドルバージョンではなく、システムのClangバージョンでChromiumをコンパイルすることができます。これはx86-64システム上のGentooユーザーにとってはオプションですが、Chromiumのバンドルツールチェーンはx86-64用にのみ出荷されているため、他のアーキテクチャのユーザーには-bundled-toolchainが必要です。Chromiumは現在、プロプライエタリコーデックでパッケージをビルドする際の問題により、Gentooからバイナリパッケージとして利用できないことに注意する価値があります。最後の儀式 Arch Linux、Debian、Fedoraを含む多くのディストリビューションでは、メンテナーに放棄されたパッケージを指すために「orphan(孤児)」という用語を使用します。開発者はパッケージが孤児になったことを発表し、他の貢献者は希望すればメンテナーシップを引き継ぐ機会を得られます。Gentooの用語はもう少しドラマチックです。パッケージメンテナーは、パッケージがメンテナーされなくなることをプロジェクトに通知し、他の開発者がメンテナーシップを引き継ぐ機会を与えるために、gentoo-dev-announceメーリングリストでパッケージの「last rites(最後の儀式)」を発表します。開発者が最後の儀式を宣言した後、パッケージのebuildはGentooのebuildリポジトリでマスクされ、ユーザーがメンテナーされなくなったパッケージを誤ってインストールしないようにします。パッケージがインストールされていてアップグレードを試みるユーザーは、マスクされているという警告を受け取ります。ChromiumパッケージメンテナーのSam Jamesは、Roman Žilkaによって提出されたバグレポートでの長い会話の後、9月24日にChromiumパッケージの最後の儀式を宣言しました。9月9日、Žilkaは、最新の安定版Chromium ebuildが古くなっていると不満を述べていました。「最新の安定版www-client/chromium(およびgoogle-chrome、おそらくその他)は151.0.7922.169で、あらゆる深刻度の602の壊滅的な脆弱性が含まれています。これほど重要なパッケージでこのようなことが二度と起こらないように、資格のある誰かが対策を講じる必要があります。」彼はバグレポートに新しいバージョンのChromiumのebuildを添付しましたが、ユーザーが-bundled-toolchain USEフラグでChromiumをコンパイルしようとすると機能しないだろうと指摘しました。Jamesは、「Chromiumをソースパッケージとして維持するのはひどいものです。Gentooでメンテナーを最も多く消耗させるパッケージであることは間違いありません。」と返信しました。メンテナンスについて不満を言うのは役に立たないと彼は述べ、メンテナーは何年も前からその難しさのためにChromiumに最後の儀式を宣言するところまで来ていたと付け加えました。彼はまた、以前にŽilkaにこのことを伝えており、もし彼がパッケージの支援をしたいのであれば歓迎されるだろうと述べました。実際、Žilkaは8月にChromium ebuildに存在する脆弱性の数について提出されたバグレポートで同様の不満を述べており、Jamesは当時、パッケージのメンテナンスは常に困難であったと返信し、「そして今、彼らはGoも依存関係として追加しました。」と述べていました。それ以前に、ŽilkaはChromiumの脆弱性に関するMatt Jollyが提出したバグレポートに現れ、「更新プロセスを修正する必要があり、このようなイベントがこれほど重要なパッケージで二度と起こらないようにする必要があります!」と不満を述べていました。Jollyは、メンテナーはボランティアのチームであり、最善を尽くしていると返信しましたが、「ビルドの失敗、人的要因(バグの割り当てを誤り、自動化が拾わなかった)、そして私自身の限られた自由時間が遅延の最大の原因です。」と述べていました。状況を変える最善の方法は、Žilkaが自分の助けをボランティアすることだろうと彼は述べました。試行錯誤Gentooには、追加および代替のebuildを提供する「オーバーレイ」と呼ばれるさまざまなサードパーティリポジトリがあります。9月11日、Nick Realeは、BentooおよびFireburnオーバーレイから新しいバージョンのChromiumのebuildを試しましたが、どちらもうまくいかなかったと述べました。数日後、彼はBentooのebuildと特定のUSEフラグのセットで成功したと報告しました。RealeとFrançois Valenducの間で、他のebuildからGentooで更新されたChromiumバージョンをコンパイルするために使用できたさまざまな方法についての議論が続きました。9月18日、Valenducは、Chromiumのバージョン153.0.8010.47がリリースされ、そのバージョンはすでにArch Linux、openSUSE、SUSE、Ubuntuで利用可能になっているとコメントしました。「ここで提案されたすべてのものにもかかわらず、Gentooはまだ待っています。」Jamesは、メンテナーの誰もChromiumパッケージの問題を調べる機会がなかったと返信しました。彼は、バグレポートと共に提出されたパッチとebuildは「有用で感謝されるが、単にそれをつかんでコミットするほど単純ではない」と述べました。メンテナーがebuildをテストせず、それがユーザーのシステムで壊れた場合、ユーザーは不満を言うだろうと彼は言いました。それは、誰もそれが実行されるべき方法でそれを処理することに興味がない場合、それは完了するときに完了しますが、最後の儀式を宣言される可能性が高いです(それは単にebuildを添付することを超えています)。Valenducは、パッケージを維持することはできなかったが、「bentooオーバーレイからebuildを取得するのはそれほど難しくなかった[...]Gentooでアップデートがないのを見るのはフラストレーションがたまるだけだ」と述べました。Jamesは、ebuildがValenducで機能したからといって、すべてのUSEフラグが機能したわけではないことを意味しないと返信しました。彼は、Gentooのebuildにパッチが提出されていないため、メンテナーはebuildをdiffして変更を逆エンジニアリングし、何が変更されたかを理解する必要があると付け加えました。「これらすべては些細な作業ではなく、開始するためのebuildがあることはそれに役立ちますが、git add && git commit && git pushできるという意味ではありません。」Valenducは、ラップトップでChromiumをコンパイルするのに15〜16時間かかるため、すべての可能なUSEフラグをテストすることはできなかったことを認めました。9月24日、Žilkaは「これはばかげている」とコメントしました。数分後、Jamesは「OK、それなら」と返信し、パッケージの最後の儀式を宣言しました。保持できますか?Maciej S. Szmigieroは、ebuildをGentooのリポジトリに保持し、「ベストエフォート」レベルでメンテナンスされていると宣言することは可能かどうか尋ねました。「ビルド可能/パッチ可能なChromiumを削除することは、Gentooデスクトップにとって大きな損失です。」Jamesは、それは可能ではないと思うと述べました。彼はすでに、Chromiumはボランティアによって維持されていると説明しており、その説明は受け入れられていなかったと述べました。人々は別のリポジトリでebuildを維持することは自由だが、それは彼らが自分で作業を行うか、誰かがより低い基準でそれを行うことを受け入れることを意味すると彼は言いました。彼は、Bentooオーバーレイからのebuildが議論で引用されていたことを指摘しましたが、それらのebuildの作成は、