ディストリビューションの功罪、目玉の分散

おくじさんの嘆きはよく分かる。分かった気になっているだけかも知れないが。
確かにバージョン番号は最近とみにわけわからんことになってきているように思う。おくじさんはその原因の一つに、開発者リソースに対してテスターがあまりに少ないことを挙げ、さらにその原因として「深く考えずに使えてしまう」ディストリビューションの存在を挙げる。
具体例を挙げれば、GRUBを採用しているディストリビューションは非常に多いが、そのほとんどにあの「splashimageパッチ」が適用されていて、そこから上がってくるバグレポートをGRUB開発側が無視せざるを得ないという現状がある。かくいうワタシもうっかりVinePlus/2.6では splashimage付きのGRUBパッケージをputしてしまった。3.0からはきっぱりと止めましたけど。
そういう風に、ディストリビューションでは独自の、あるいは別のディストリビューションから引っ張ってきた、パッチを適用することが多くて、Vineなんかもいろんなパッケージでパッチの嵐なわけだが、一方でユーザーはそれを意識しないで使えるしくみになっている。それはもちろん、ディストリビューションの存在意義はそこにこそあるので、それ自体を否定するとディストリビューションの存在が否定されてしまう。
ではどうすればいいのかというと、これはもう、パッケージャが

  • パッチを上流へ投げる
  • 最新版のソースを追いかける

ことに尽きると思う。パッチを上流へ投げ、採用を働きかける。採用すべきと自分が思う理由でなんとしても相手を説得する。そしてどんどん最新版のソースをパッケージしてディストリビューションに含めて膿を出してまた上流へバグレポートなりパッチなりを返す。そうやって開発に貢献していく熱意が、いまパッケージャに求められている。というかそれが両者のwin-winな関係だと思っている。
そうしないと、どんどん手元のsrc.rpmと上流のソースが乖離していき、安定指向という大義名分の元にどんどん開発元のテスターを減らすような動きが正当化されていってしまう。それでは開発者のモチベーションは下がりっぱなしでしょう。
そんなことを漠然と考えながら、ワタシも微力ながら(本当に些細な)パッチやバグレポートをacpidやらTerminalに投げました。採用もして頂きました。
GRUB ではおくじさんにrejectされた(汚い)splashimageパッチが、見た目かっこいいという理由だけで延々と使われ続けて現在に至るのだが、採用されないと分かっているパッチはもうあきらめる、そうでなければパッチを(採用してもらえるように)書き直すとか、それでもダメなら

  • forkする

くらいの覚悟がないといかんと思う。もちろんワタシにはそんな根性もリソースもないので、小さなパッチやバグレポートを上流へ投げて採用してもらうくらいのことしかできないのだが。