Ubuntu Weekly Recipe

第236回Webサービスをデスクトップアプリ化する

先月末に開催されたOSCONでは、Ubuntuプロジェクトの指導的立ち位置にいるマーク・シャトルワースが、Webサービスをデスクトップアプリ化するWeb Apps機能についてデモを行いました。

今回はこの「Web Apps」とさらに同じ機能を持った「Fogger」を使ってみましょう。

Webサービスのデスクトップアプリ化

近年のWebサービスは、ウェブブラウザーをはじめとしたソフトウェアの進歩やブロードバンドネットワークの普及とともにどんどんインターフェースがリッチになっていき、ローカルアプリケーションとほとんど遜色なくなるまで進化しました。クライアント側のインストール作業が不要、インターフェースのアップデートが容易、環境の依存性が低いなどさまざまなメリットからあらゆるアプリがウェブサービス化する傾向にあります。

その結果、ライトユーザーがパソコンを利用する目的の大半[1]はウェブブラウザーさえ起動していればなんとかなる、という状況にもなってきました。

ブラウザー上で使うサービスが増えてくると、今度はウェブサービスごとにブラウザーウィンドウやタブを開くのが面倒になってきます。特にたくさん開いているとサービス間の切り替えが大変です。⁠このサービスそのまま、単体のアプリとして使えれば良いのに」と思うのが人間の性というもの。

要するにブラウザーの基本部分だけ使ってサイト特有のブラウザーを複数作成し、個別に管理したいというわけです。当然ブラウザー側でも、Mozilla PrismやChromeless、タブのPin化、アプリケーションショートカットという技術や機能を提供することでこれらの要求に応えてようとしています。Ubuntuの場合なら、LauncherにGMailアプリを配置する方法として、Chromiumのショートカットを使う手順が紹介されていました。

しかしながらこのアプローチの場合、デスクトップの機能を十分には活かせないというデメリットもあります。FirefoxやChromiumはOSの垣根を越えたマルチプラットフォーム対応のブラウザーであるが故に、デスクトップ環境固有の機能には依存しないように作りたいという方向性があるからです。

そこで出てきたのが、Ubuntuの「Web Apps」という回答です。これはUnityデスクトップの機能をふんだんに使うことで、プラットフォームの互換性を捨てる代わりに、ユーザーエクスペリエンスを向上させようというプロジェクトです。

Unityを前提としているので、各ウェブアプリは実装次第で次のような機能を使えるようになります。

  • NotifyOSDを使った通知機能
  • クィックリストによる機能へのショートカット
  • Alt-Tabによるグルーピングに対応したウィンドウ切り替え
  • HUDを使ったメニューへのアクセス

Web Apps

Web AppsはUbuntu 12.10の目玉機能の一つとしてOSCONで発表されたプロジェクトです。

サポート済みのウェブサービスにアクセスすると、アカウントの管理やWebアプリ化を行うかどうかをユーザーに問い合わせます。Webアプリ化する場合は、自動的にLauncherへ起動アイコンが追加され、GMailの場合ならメッセージインジケーターにラベルが表示され、TwitterならGwibberにアカウントが登録されるといった、Unityデスクトップへの統合が行われます。

OMG Ubuntuには現在サポートしているサイトのリストが掲載されていますので、こちらも参考にすると良いでしょう。

ちなみにWeb Appsは開発途上ということもあって、かなり不安定です。

Web Appsのインストール

Web Appsは12.10向けに開発されていますが、12.04でもプレビュー版を使うことができます。まずは次のコマンドでPPAを追加してから、Web Appsをインストールしましょう。

$ sudo add-apt-repository ppa:webapps/preview
$ sudo apt-get update
$ sudo apt-get install unity-webapps-preview

なお、このPPAはChromiumを含む公式リポジトリに存在するパッケージの修正版も存在します。Web Appsを使う場合はこれらもアップグレードされますので、導入には注意してください。

インストールが完了したらブラウザーを再起動してください。Unityが使っているライブラリーも更新されているので、一度リログもしておいたほうがいいでしょう。

Webアプリの作成

FirefoxかChromiumからWeb Appsがサポートしているサイトにアクセスし、ログインします。するとブラウザーの左上に「Web Apps」として登録するか問い合わせるポップアップが表示され、さらにOnline Accountsが起動します[2]⁠。

図1 GMailアクセス時に表示されるOnline Accounts
図1 GMailアクセス時に表示されるOnline Accounts
図2 ⁠Allow access」をクリックするとUnityの各コンポーネントからGMailにアクセスできるようになる
図2 「Allow access」をクリックするとUnityの各コンポーネントからGMailにアクセスできるようになる
図3 インジケーターなどからGMailのラベルを表示
図3 インジケーターなどからGMailのラベルを表示
図4 ポップアップでIntegrateを選択するとLuancherにGMailアイコン追加
図4 ポップアップでIntegrateを選択するとLuancherにGMailアイコン追加
図5 さらにDashからも検索できるようになる
図2 GMailアクセス時に表示されるOnline Accounts

Launcherアイコンはリログすると消えます。常時表示させたい場合は、アイコンを右クリックして「Launcherに登録」を選択しましょう。

Fogger

FoggerはUbuntuAppShowdownで銀賞を受賞したWebサービスをデスクトップアプリ化するツールです。

Web Appsがサービスごとに標準のブラウザーを立ち上げるのに対して、FoggerはWebKitベースの内蔵ブラウザーを立ち上げます。またユーザースクリプトを使って、ユーザーが自由に対応サイトを追加できることも特徴です。

Foggerは既にUbuntuのリポジトリに追加されているので、ソフトウェアセンターからfoggerを検索してインストールできます。インストールしたらDashから「Create new a fog app」を起動してください。

図6 Fogアプリの作成画面
図6 Fogアプリの作成画面

ここにサービスURLとアプリ名を登録して、Fogアプリを作成します。アプリ名はその名前からfaviconを検索してくれますし、適当な画像をドラッグアンドドロップすることでも設定できます。

「Create」ボタンを押したらアプリが作成され、自動的にサイトにアクセスします。以降はDashやLauncherを使ったアプリの起動や切り替えが可能になります[3]⁠。

図7 大抵の場合は最初はログイン画面が表示される
図7 大抵の場合は最初はログイン画面が表示される
図8 Webサービスにアクセスした状態
図8 Webサービスにアクセスした状態
図9 Luancherにアイコンが表示される
図9 Luancherにアイコンが表示される
図10 Dashからも検索できるようになる
図10 Dashからも検索できるようになる

Foggerのカスタマイズ

FoggerはユーザースクリプトやユーザーCSSを追加することで、サービスごとに特化した機能を追加できます。

以下のPPAに、SNSのFacebookやTODOサービスであるWunderlist用のユーザースクリプトを配布していますので、これらのサービスを使っている場合は試してみてはいかがでしょうか。

$ sudo add-apt-repository ppa:fogger-app-authors/ppa
$ sudo apt-get update
$ sudo apt-get install facebook-fogapp
$ sudo apt-get install wunderlist-fogapp

おすすめ記事

記事・ニュース一覧