新たにGNOME Shellを採用するUbuntu 17.10で有効になっているGNOME Shell拡張機能について解説します。
Ubuntu 17.10のGNOME Shell
Ubuntu 17.10のリリースが近づいてきています。姉妹連載で既報 のとおりUnityからGNOME Shellに移行する最初のUbuntuということで、GNOME Shellにどのようなカスタマイズが施されるかが気になります。
まずはスクリーンショットを見てみましょう。図1 がUbuntu 17.10(開発版)の、図2 がUbuntu GNOME 17.04のGNOME Shellです。いずれもログイン直後です。
図1 Ubuntu 17.10のデスクトップ画面
図2 Ubuntu GNOME 17.04のデスクトップ画面
かなり違いますが、やはり一番大きな違いは左側に表示されているものがあるかないかの違いでしょう。さらに、Remminaというリモートデスクトップクライアントを起動してみます。Ubuntu GNOME 17.04にはインストールされていないため、インストールしてから起動しています。図3 がUbuntu 17.10(開発版)の、図4 がUbuntu GNOME 17.04のスクリーンショットです。
図3 Ubuntu 17.10でRemminaを起動した
図4 Ubuntu GNOME 17.04でRemminaを起動した
Remminaのアイコンが右上に表示されたり左下に表示されたりしています。もちろん理想は右上に表示されることであり、どうしてこのような違いが出るのでしょうか。
実はGNOME SoftwareにはインストールされているGNOME Shellの拡張機能を表示する機能があり、これを見比べてみると一目瞭然です。Ubuntu GNOME 17.04はたくさんの拡張機能がインストールされていますが、Ubuntu 17.10ではたったの2つだけでなのです(図5 ) 。また、この2つの拡張機能はUbuntu GNOME 17.04にはインストールされていません。
図5 拡張機能は、GNOME Softwareの「インストール済み」の一番下に表示される
Ubuntu Dock
Unity LauncherとGNOME ShellのDashは挙動が違うので、Unityユーザーは慣れが必要となります。極力DashをUnity Launcherっぽい挙動にするため、Dash to Dock を採用することに決めました。Dash to Dockはその名のとおりDashをDockにする拡張機能ですが、機能豊富で細かくカスタマイズできます。その中にはUnity Launcherに近くするための機能もあります。そこで必要な設定をおおむね済ませた上で最低限のカスタマイズだけできるように改変したものをUbuntu
Dockとして採用することにしました。
Dash to Dockは開発が活発でリリースも頻繁にあるので、一度リリースしたら極力変更したくないUbuntuのポリシーとは異なっています。そのような理由や、ほかの理由もあって「軽いフォーク」が行われることになりました。もちろんUbuntu Dockの開発はUbuntu自身(もっといえばCanonical社員)によって行われており、修正は適宜Dash to Dockに反映していますし、その逆もまた行われています。
リポジトリも、GitHubのDash to Dock のブランチ、Ubuntu Dock として存在しています。
Ubuntu Dockの設定はGNOMEの設定から行います(図6 ) 。Dash to Dockの設定(図7 )は拡張機能の設定として実装されているため、全然違うことがわかります。
図6 Ubuntu Dockの設定は3つのみ
図7 Dash to Dockの設定は多岐に渡る
また、17.10に間に合うかどうかはさておき、Ubuntu DockにUnity Launcher API の一部が実装 されました。これでさらにUnity Launcherの挙動に近づきました。
Ubuntu Appindicators
そもそも、GNOME Shellで右上の領域にステータスアイコンを表示しようとすると、拡張機能にするしかありません。右上にステータスアイコンを表示する方法は大きく3つあります。
GNOME Shellの拡張機能にする
Ubuntu AppindicatorsあるいはKStatusNotifierItem/AppIndicator Support をインストールし、Appindicatorsを表示する
Topicons あるいはTopicons Plus をインストールし、レガシートレイアイコンを表示する
2と3は排他です。
Application Indicators (Appindicator) は、もともとUnityのステータスアイコンのライブラリとして開発されました。しかし現在はStatusNotifierItem として標準化され、KDEでもサポート しています。
そこで、AppindicatorsをサポートするGNOME Shellの拡張機能としてKStatusNotifierItem/AppIndicator Support が開発されましたが、長らくメンテナー募集中となっていました。
実はここまで第404回 で言及したこととほぼ同じですが、この時から1年以上経過してUbuntuがGNOME Shellを採用することになり、このKStatusNotifierItem/AppIndicator SupportをUbuntuでメンテナンスすることになりました。Unityとの継続性を考えると収まるところに収まったということでしょう。GitHubのページ をよく見ると、Ubuntuのアカウントになっていることがわかります。Ubuntu
AppindicatorsはKStatusNotifierItem/AppIndicator Supportのブランチ です。名前の他は同じものと見ていいのか、あるいはサポートの関係で違いが出てくるのかは今のところわかりません。
メンテナーを交代し、Ubuntuにインストールされることによって報告されるバグも増えています。今後修正されていくと、さらに便利になっていくことでしょう。
拡張機能をインストールする
拡張機能をインストールするには、chrome-gnome-shellパッケージをインストール後、拡張機能のWebサイト を表示し、指示に従ってアドオンをインストールします。
ポイントは、17.10のGNOME 3.26はリリースされたばかりで、対応済みの拡張機能はさほど多くありません。よって、Ubuntuのリポジトリにある拡張機能も避けるのが無難でしょう。
ちなみにDash to Dock をインストールし、有効にすることもできました(図8 ) 。
図8 Dash to Dockを有効にした