Ubuntu announces web app integration in Unity
As part of his OSCON presentation yesterday, Ubuntu founder Mark Shuttleworth announced a new feature of Canonical's Unity desktop. In Ubuntu 12.10, Unity will integrate popular web services with the desktop using the new Ubuntu Web Apps functionality. This integration includes native desktop notifications from web applications, being able to control music from Ubuntu's own sound menu and accessing web services with Unity's application switcher, Dash and HUD interface. Unity also includes a credential manager to store account details and authentication tokens for web services.
Support for web applications is specifically tailored to the application in question. Email services like Gmail will use Ubuntu's own notification system to notify the user of incoming emails, while social networking services like Twitter are integrated in the messaging menu which allows users to not only receive notifications of messages directed at them, but also compose new messages right from within the desktop. A music site such as Last.fm is integrated with Ubuntu's sound menu, which allows users to control playback in the web app's music player even when the browser window is minimised; similar playback controls have been provided for YouTube. Google Docs integrates itself into Unity's Dash and HUD menu allowing users to search for documents and access Google Doc's in-browser application menus from within the Unity desktop.
The Ubuntu developers have so far added support for about 40 applications. According to a blog post by Ubuntu Community Manager Jono Bacon, adding support for new services is relatively easy – Canonical will release details on how to do this in the near future. According to Bacon, implementing support for a web service doesn't require any modification of the web application, so it is safe to assume that all the work is being done within the Unity infrastructure and that the functionality merely extracts data from the web site. The downside to this approach, as opposed to relying on a web site's official API, appears when the web service in question changes the way it implements functionality. In this case, Ubuntu's integration could break and require an update to make it work with the web service again. Presumably Ubuntu uses official APIs wherever possible, as is the case with its Twitter integration which uses the service's API via the Gwibber client built into Ubuntu.
Ubuntu Web Apps will be released with Ubuntu 12.10 but will also be available from a Personal Package Archive (PPA) for Ubuntu 12.04 LTS. The functionality currently works with Firefox and Chromium and should be relatively easily to adapt for other browsers as well. According to Bacon, all of the code for the feature will be open sourced by Canonical.