デフォルトのアプリケーションにMATEのアプリケーションを
「Ubuntu Unity」で採用するデフォルトのアプリケーションに、「Ubuntu MATE」が採用しているアプリケーションを採用して欲しいとの提案が出されました。GNOMEコアアプリケーション
現在「Ubuntu Unity」では、以前の「Ubuntu」のようにデフォルトのアプリケーションに「GNOMEコアアプリケーション」を採用しています。例えばファイルマネージャーである「Nautilus」やドキュメントリーダーである「Evince」、テキストエディターの「gedit」は、「GNOME」が開発及び提供している「GNOMEコアアプリケーション」です。
他にもデフォルトでインストールされているアプリの多くは、「GNOMEコアアプリケーション」を採用しています。
「GNOME」では「GNOME」デスクトップ環境と共に「GNOMEコアアプリケーション」も併せてユーザーに提供することを推奨しています。
「Ubuntu」のデスクトップ環境が「GNOME」に変わりましたが、「Unity」時代でもデフォルトのアプリケーションに「GNOMEコアアプリケーション」を採用していました。
GNOMEコアアプリケーションとCSD
「GNOMEコアアプリケーション」は、「GNOME」デスクトップ環境に綺麗に統合されたデザインで提供されます。「GNOME」以外のデスクトップ環境で「GNOMEコアアプリケーション」を利用することもできますが、「GNOME」デスクトップ環境のデザインと大きく異なるデスクトップ環境では、そのデスクトップ環境と「GNOMEコアアプリケーション」のデザインを綺麗に統合することが困難になっています。
その主な理由は「CSD(Client Side Decoration)」の採用とメニュー項目の簡潔化です。
「CSD」はアプリのウィンドウのタイトルバーを廃し、代わりにタイトルバー相当の機能とウィジェットを配置する機能を提供する仕組みです。
「Client Side」とある通り、アプリ側で様々なウィジェットをヘッダーバーに配置できます。
「CSD」の目的は、従来のタイトルバーにあった不要なスペースを活用し、アプリのコンテンツを縦方向により多く表示できるようにすることです。
また今まで数多くあったメニュー項目が削除され、ヘッダーバー経由で独自のメニューにアクセスするようになりました。
この独自のメニューは従来のメニューと異なる仕組みであり、他のデスクトップ環境からメニューとして認識することができません。
Unityとのデザインの乖離
「Unity」は、アプリが持つメニューをトップパネルやウィンドウのタイトルバーに表示する機能を提供しています。前者は「グローバルメニュー」と呼ばれ、後者は「LIM(Locally Integrated Menu)」と呼ばれる仕組みです。
「LIM」は後から出てきた仕組みですが、いずれの仕組みもアプリのコンテンツを縦方向により多く表示できるようにする仕組みです。
つまりメニューバーを廃し、メニューを既存の空いたスペースに配置します。
目的は「CSD」と同じなのですが、「CSD」経由で表示されるメニューは「Unity」から認識できません。
そのため「CSD」が採用される以前の「GNOMEコアアプリケーション」を「Unity」で利用してきたユーザーからすると、今まで数多くあったメニューの殆どがトップパネルから削除され、使い勝手が大きく変わってしまう結果になりました。
そこで以前の「Unity」では「CSD」を採用せず、「GNOMEコアアプリケーション」に独自のパッチをあて、従来通りアプリのメニューを提供するよう修正してきました。
またメニュー以外にも、削られた機能を元に戻すためにパッチをあてるなど、「Ubuntu」の開発チームは既存ユーザーのために活動を行ってきました。
「Nautilus」にあてたType-Ahead検索パッチが記憶に新しいでしょう。
「Ubuntu」の開発チームはなるべく同じ使い勝手をユーザーに提供するためにリソースを割き、良くやってきたと思います。
しかし「GNOMEコアアプリケーション」が「GNOME」デスクトップ環境での利用を前提としたデザインに最適化されていく中で、アプリのデザイン自体が変更され、「Unity」と調和の取れたデザインを維持するのが難しくなります。
機能が簡素化され、今まで利用していた機能が無くなるケースや、見せ方が大きく変わるケースがでてきました。
例えば「Ubuntu 14.04」の「gedit」では、ツールバーに様々なボタンが配置されています。
一方「Ubuntu 16.04」の「gedit」では、ツールバーから多くのボタンが削除され、間の空いたデザインになってしまいました。
ちなみに「GNOME」デスクトップ環境では、「GNOMEコアアプリケーション」は一貫性のあるモダンなデザインで表示されます。
「GNOMEコアアプリケーション」は「GNOME」向けのアプリケーションですから、当然ですね。
「GNOME」は「GNOME」のポリシーに基づき開発を行っているため、デザインの乖離にどう対処するかは、ダウンストリームが考るべきことです。
Linux Mintでも同じ事情があった
以前「Linux Mint」でも同様の話題がありました。「GNOMEコアアプリケーション」と「Cinnamon」など「Linux Mint」が提供するデスクトップ環境とのデザインの乖離をどう埋めるのが良いのか、「Linux Mint」の開発チームは検討を行い、「X-Apps」という解を導き出しました。
Unityと相性の良いMATEアプリ
前置きが長くなりましたが、本題です。「MATE」で利用されているアプリ群は、「GNOME 2」時代の「GNOMEコアアプリケーション」をフォークして開発されているアプリ群です。
今や「GTK+3」に移植され、HiDPIなどモダンな環境での利用も考慮されています。
(詳しくはUbuntu MATEやMATEのリリースノートを参照してください。)
従来のメニューシステムが使用されており、「グローバルメニュー」や「LIM」を最大限活用できます。
また、今では削られてしまったアプリの機能も利用できます。
Cajaの例
例えばファイルマネージャーである「Caja」は、ペインを2分割し、ファイルやフォルダーの一覧を表示できます。もちろんタブ表示も可能です。
Type-Ahead検索も可能です。
好意的な反応
さて本提案に対する反応を見てみると、非常に多くの好意的な反応が寄せられています。そして「Ubuntu MATE」のリーダーが本提案に対し概念実証を行い、「Nautilus」の代わりに「Caja」を「Unity」環境に統合できないか検証と課題の洗い出しを行っています。
(本件に関し非常に協力的でノリノリで仕事が早いです。)
また「MATE」のアプリケーションの中には「MATE端末」など「MATE」の文字が含まれるアプリケーションがあります。
「Unity」では「MATE端末」を「端末」という表現に修正してみてはどうか提案が行われており、この変更も問題ないとの回答が寄せられています。
Nemoも候補に
ファイルマネージャーに「Nemo」も候補に挙げられています。「Cinnamon」ユーザーであれば非常に馴染み深いファイルマネージャーだと思いますが、こちらも非常に使い勝手の良いファイルマネージャーです。
「Nemo」は、「Caja」のUIをモダンにして更に機能を追加したものと思ってもらえれば良いです。
MATEアプリ版ディスクイメージ
近々MATEアプリを同梱したディスクイメージがリリースされる予定です。興味ある方は試してみてはいかがでしょうか。
それにしても「Ubuntu Unity」は話の展開が非常に早いですね。