レンダリングエンジンの置き換えによるXara LXのフォーキング

先週、ベクトルグラフィックエディタのXara LXに関して大きな動きが見られた。このプロジェクトについてはオープンソースコミュニティの貢献者たちと同社の経営陣との間に意見の対立が存在し、ここ数カ月は膠着状態に陥っていたのだが、貢献者側の1人がコードベースをフォーキングした成果を公開したことで再び動き出したのである。この行為に対しては会社側からの承認も得られており、オフィシャルなSubversionリポジトリに登録することが申し出られている。

プロジェクトを膠着化させたそもそもの原因は、GPLを用いた同ソースコードのリリースにおいてライブラリの1つだけは例外にするというXaraの決定であった。ここで問題にされているライブラリとは、編集セッションにおけるワークスペースコンテンツのラスタライズおよび画面描画に用いられるCDrawというレンダリングエンジンを指す。Xara側としてはCDrawの処理速度と画質にかなりの自信を持っており、実際、CDrawの高速性こそが競合製品に対する優位性をもたらしているという旨の発言をしている。つまり同社としては、CDrawのソースコードを公開することで、こうした優位性を失うことを恐れていたのだ。そのためXaraは、Xara LXプロジェクトをオープンソースとして立ち上げた際に、CDrawについてはバイナリのみをバンドルするがライセンス形態としてはフリーな再配布を認める、ということを明示していた。

このようなCDrawについてはフリーでのリリースをしないという決定に対し、外部の貢献者たちは不満を感じ、わざわざ時間を割いてまでXara LXプロジェクトに協力することを渋り始めたのである。結果、同プロジェクトの活動は衰退化し、その責任の所在については両陣営が互いに相手側を糾弾するという状況に陥った。つまりコード開発に外部から貢献していた側は、ソースコードの一部非公開というXaraのリリース態勢には問題があると発言し、対するXara側は、そうした外部の貢献者による寄与などは些細なものでしかないと取り合わなかったのである。

こうした膠着状態は今月になって好転し始め、より建設的で具体的な検討開発者用のメーリングリストにて行われるようになり、外部の貢献者とXaraのスタッフとの間では、CDrawの有すメリットおよび仮にオープン化した場合に双方に課されるであろうリスクが検討され始めた。

従来Xara側はCDrawの扱いについて、適切な時機が到来すればオープンソース化することを検討すると発言していたものの、XaraのCharles Moir氏がそうした構想が実現されない可能性の高まったことを認めたという経緯がある。こうしたCDrawのオープンソース化構想が立ち消えとなった背景には、この1月にXaraがMagixにより買収されたなど、諸々の経済的要因が絡んでいるようだ。

ターニングポイントとなったのは、CDraw問題は本質を外れた事柄という、Moir氏による発言であった。Moir氏は、こうしたCDraw問題がどちらに転ぼうとも、結局はコミュニティによるXara LXの開発は進められることになるはずだと示唆したのである。そして、この問題が最悪と呼べる状況にまでこじれた場合を想定して同氏が提案したのが、Cairoのようなオープンソース系レンダリングエンジンでCDrawを代替するという手段であったのだ。

CDrawライブラリの分離

こうした提案を実行に移すべく、Cairoの主任開発者を務めるCarl Worth氏が自ら名乗りを上げたのが2月20日の出来事である。Worth氏は、Xara LXにおけるCDrawライブラリの呼び出し部をすべて特定して、該当部をダミー関数で置き換えたコードを、同氏が公開しているGitリポジトリに掲載したのだ。その後Moir氏からは、このコードをXaraのサーバに収容することが提案されているが、それだけではなく、Xara LXから正式に分岐されたプロジェクトの1つとして並行開発を進めることを呼びかけている。

メーリングリストにおける論争もこうした状況の変化を受けて、理念的な主張の応酬から、提案されたコードの検討という具体的な活動へと速やかに切り換えられた。こうして膠着状態は解消されたのである。

現在Moir氏は、今回のCairoによる代替はより多くのLinux開発者を招き入れることになり、メインストリームのLinuxディストリビューションによるXara LXの採用への道を開くことになるであろうと、今後の先行きを楽観視している。もっともその一方で、Xara LXをWindows用に移植するという提案については、Xaraの収益を脅かす可能性があるとして、同氏が頑なに拒否し続けているのも事実だ。

「この件に関する当方の見解は、従来通りです。いかなるものであってもWindows用の移植版をサポートする意志はありません。もっとも、現在の良好な関係を壊してでもそうした行為を強行しようとする人間が出てきた場合、それは私どもが阻止できる性質の問題ではないのも事実です。仮にそうした事態が発生して、当方の商業活動を脅かす行為だと判断された場合は、現行製品に関する作業を凍結した上で、その後のすべての開発をクローズソースの形態で行うようになるでしょう。その結果がオープンソースコミュニティに何らかのメリットをもたらすかについて、私からは何とも申し上げられませんね」

一方のWorth氏は、CDrawを分離したXara LXのコード開発が軌道に乗りつつあるのは見ていて喜ばしいと語っている。「私は常々(Xara LXは)面白いプロジェクトに成長するだろうと考えていましたが、CDrawがフリーで公開されていない件については、Charlesが想定している以上の問題を呼び込むだろうと思っていました。Charlesにはこの1年間に何度も語ってきたのですが、CDrawはフリーで利用できないという点以外にも不確定な要素があり、外部からの協力を得るのは色々と難しいはずです。仮に1年ほど前の段階でCharlesが“弊社がCDrawをフリー化することは金輪際あり得ません”と発言していたら、私はおそらくその時点で今回と同様のフォーキングを行っていたでしょう(実際、この作業は極めて短時間で実行できました)。このように事態を明確化する発言をするという行為は、それがあまり好ましくない決断であったとしても、状況の改善に貢献するという事例がいくつも存在しています」

このようにWorth氏はXara LXプロジェクトに興味があるとしながらも、作業に必要な時間が取れそうもないため、同氏自身はさほどの貢献ができないだろうとしている。ただし同氏が予想するに、このコードベースを熟知した人間は多数存在しており、そうした人々が同氏がフォーキングしたコードを発展させて、機能豊富なアプリケーションに仕上げてくれるだろうとのことだ。

Moir氏自身もXara LXの開発活動を継続する意欲は高く、オープンソース版プロジェクトについても、同プログラムの商用バージョンから多数の機能が取り込まれることを歓迎する姿勢を見せている。「いずれにせよこうしたものは、何らかの対価として得られるという側面を持っています。つまり、私たちが過去に開発した成果から何かの見返りを得られるような場合(見返りと言っても、Linuxマーケットにおいて金銭的な収入を得るという意味ではなく、ユーザベースを拡大させたり開発者コミュニティを活性化させるなどの意味ですが)、そうして開発される新機軸によって今度はLinux版にも改良が加えられる、という点で理にかなった活動であると言えるでしょう」

NewsForge.com 原文