Application indicatorサポートへ
「Ubuntu 17.10」では「Application indicator」がサポートされます。「Application indicator」は、「Ubuntu(Unity)」で採用されているインジケーターを表示するための仕組みです。
GNOMEシェル拡張機能の導入
インジケーターを表示したいアプリは、「Application indicator」を利用することでインジケーターを表示できるようになります。しかし「GNOME」では「Application indicator」がサポートされておらず、「Application indicator」を利用しているインジケーターは表示されません。
そこで開発チームは「Ubuntu 17.10」で「Application indicator」をサポートするため、以下のGNOMEシェル拡張機能を導入することにしました。
これにより「Application indicator」に依存するインジケーターが動作するようになります。
ただし全てのインジケーターが正常に動作に動作するとが限りません。
「Unity」そのものの環境に依存したインジケーターは機能しませんし、高度な描画を行うインジケーターは正常に描画されない可能性があります。
とはいえ、「Ubuntu(Unity)」で利用していたインジケーターが引き続き利用できる状況は、ユーザーにとって嬉しい状況でしょう。
一部のアプリは修正が必要
「Ubuntu 16.10」にて「XDG_CURRENT_DESKTOP」環境変数の内容が「Unity」から「Unity:Unity7」に変更されており、この環境変数を参照して動作しているインジケーターは修正が必要です。そのため修正が行われていない「Dropbox」や「Skype」は、インジケーターが動作しません。
Electronアプリもアップデートが必要
Chromiumフレームワークを利用しているElectronアプリも、インジケーターを表示するにはアップデートが必要になります。これはChromiumフレームワークが「Unity」を参照しているためです。
開発チームの取り組み
開発チームは、アップストリームの開発者に修正を行ってもらうよう、修正内容と共に働きかけを行っています。うまくいけば、「Dropbox」や「Skype」など様々なアプリケーションが「Ubuntu 17.10」で期待通り動作するようになるでしょう。
KStatusNotifierItem/AppIndicator Supportが有効に
以下の最新のアップデート(proposed)を適用している環境では、「KStatusNotifierItem/AppIndicator Support」GNOMEシェル拡張が有効になっています。- ubuntu-meta 1.397 source package in Ubuntu
- gnome-shell-extension-appindicator package in Ubuntu
- gnome-shell 3.24.3-0ubuntu7 source package in Ubuntu
今まで、あるいは「GNOME」で表示されていなかったインジケーターが表示されるようになっています。
KStatusNotifierItem/AppIndicator Supportの移管
「Ubuntu Dock」と同じ事情により、「KStatusNotifierItem/AppIndicator Support」を「Ubuntu」向けにフォークする必要がありました。しかしアップストリームの開発者から提案があり、以下のリポジトリーに転送が行われ、以下でソースコードの管理が行われるようになりました。
これにより「KStatusNotifierItem/AppIndicator Support」GNOMEシェル拡張の公式リポジトリーは、上記のリポジトリーになります。
また既存の不具合報告やPR(Pull Request)及びリダイレクトも転送されています。
既存の協力者(コントリビューター)は、引き続き同じ権限が与えられています。
Ubuntu向けの修正を適用したubuntuブランチ
「Ubuntu」向けの修正を適用した「ubuntu」ブランチが作成されました。「Ubuntu」向けの修正はこのブランチに適用されます。
現在適用されている変更は、拡張IDの変更及びパッケージ化に必要な変更です。
共通の修正はmasterブランチに
共通の修正は「master」ブランチに行われます。これにより「Ubuntu」ではなく他の環境でこのGNOMEシェル拡張を利用したいユーザーも、改善や改良の恩恵にあずかれます。
開発チームは、インジケーター上でのスクロールなどプロトコルの拡張を「master」ブランチで実装する予定です。
そのため、すべてのGNOMEシェル拡張の利用者がこの実装を利用できるようになります。