Mirの過去、現在、そして将来
「Mir」の開発者が、「Mir」の過去、現在、そして将来について語っています。Mirの過去
「Mir」は、モダンなデスクトップにとって、モダンなシェルを開発する最善のプラットフォームを提供するプロジェクトでした。このプロジェクトでは、デスクトップ環境におけるセキュリティーモデルや、アプリのライフサイクルに影響する収束、そしてモダンなハードウェアの活用といった懸念の払拭が目的に含まれています。
「MirといえばUnity 8」のように、「Unity 8」とセットで語られることが多かったのですが、「Mir」は「Unity 8」のためだけに存在するソフトウェアではありません。
たしかに最初に「Mir」を利用して実装されたシェルは「Unity 8」でしたが、「Mir」の開発者は「Mir」が「Unity 8」専用のソフトウェアではないことを示すため、「Unity 8」を切り離したデモを実装し公開しました。
Unity 8以外のシェルが登場しなかった
「Unity 8」以外の「Mir」を利用したシェルが登場しなかった理由は色々ありますが、この状況を打破するため、昨年「Mir」の開発者は「MiaAL」を開発しました。「MiaAL」の目的は、シェルの開発を簡単に行えるようにすることです。
例えば「miral-kiosk」は、IoT向けに利用可能なシェルの1つです。
要求されるセキュリティーモデルを実現しつつ、グラフィックを画面に表示することができます。
Mirの現在
「Canonical」にとって「Mir」の主なターゲットは「Ubuntu Core」です。「Ubuntu Core」は「IoT」向けのOSであり、現在「16.04」がベースになっています。
最近「Mir」は「Mir 0.26.3」がリリースされましたが、「Mir 1.0」がリリースされれば「Mir 1.0」へアップグレードできるようになります。
「Canonical」以外のプロジェクトに目を向けると、以下のプロジェクトが「Mir」を利用しています。
UBports
「UBports」は、「Ubuntu Touch」の開発を継続するコミュニティー及びプロジェクトです。現在「UBports」では古い「Mir 0.17」を利用していますが、「Ubuntu Touch」を「Ubuntu 16.04」ベースへと移行させる作業を行っており、将来的に最新の「Mir」を利用することになるでしょう。
Yunit
「Yunit」は、「Unity 8」の開発を継続するコミュニティー及びプロジェクトです。ただしIPの関係で「Unity 8」の名称は「Yunit」に置き換えられています。
現在「Yunit」はソフトウェアの調査や検証を行っている段階ですが、先日「Debian」向けにリリースされたパッケージでは、「Mir 0.26」が利用されています。
MATE
「MATE」では、「Mir」を「Wayland」のコンポジターとして利用できないか、検証が行われています。Mirの将来
新バージョンの「Mir 0.27」を「Ubuntu 17.10」向けにリリースするため、現在テストが行われています。このバージョンでは、「Canonical」が「Unity 8」への投資を止める前、「Mir」が元々「Mir 1.0」で目標としていた実装の多くが含まれています。
「Mir 0.27」は、他のバージョンにはリリースされません。
また「Ubuntu 17.10」で「Mir 1.0」が提供される予定です。
APIの公開
「Mir」プラットフォームを開発するのに必要なAPIの公開がMirのソースツリー以外の場で行われました。これにより、例えば「Mir on Wayland」を開発するために、「Mir」全体をフォークする必要がなくなりました。
そして「Mir on Android」プラットフォームは、今やMirのソースツリーの外にあるプラットフォームの一つです。
Waylandクライアントのサポートへ
「Canonical」の方針変更により、「Mir 1.0」で実現予定だった目標は変わりました。「libmirclient」から非推奨の機能の削除を行う計画はなくなり、「Wayland」クライアントを直接「Mir」でサポートする目標を持ち、それに向けて作業が行われています。