SummerOfCode/2012/LinuxNativeWebApps

From MozillaWiki
Jump to navigation Jump to search

Native Webapps Support on Linux

The Native Webapps feature in Firefox permits a webapp to be installed in the OS and launched as a separate process in a standalone window and environment. Currently this support exists for Windows and OSX, and the goal of this project is to bring the same support for Linux desktop, specifically for Gnome. The work consists in two pieces: support for the standalone runtime that runs the webapps, and support for the installation process that installs them to the OS.

Activities during the "Community Bonding" period

  • Study the code of the implementations for Windows and Mac.
  • Watch webapps related bugs and their fixes (see bug 731054).
  • Improve my knowledge of the Mozilla codebase.
  • Study the Mochitest testing framework, that could be useful to write automated tests (see bug 733631).
  • Decide the approach for webapps installation/removal (https://etherpad.mozilla.org/tzkVRnfvm1)

Timeline

Time To Do
May 21 - May 28 Implement the webapp launcher (I).
May 28 - June 4 Implement the webapp launcher (II).
June 4 - June 11 Test the implementation with manual test cases. Correct eventual bugs.
June 11 - June 18 Implement installation in the home directory.
June 18 - June 25 Support the creation of .desktop files in the standard directories and the reloading of menus, when necessary (for example on GNOME it's automatic, on KDE you have to execute an external binary)
June 25 - July 2 Implement support to uninstall applications.
July 2 - July 9 Manual testing on several distributions (with different desktop managers, Unity,GNOME,KDE,Xfce,LXDE) and possibly write automated tests. Correct eventual bugs.
July 9 - July 16 Test the implementation with manual test cases. Correct eventual bugs. During this week we'll also submit the mid-term evaluations.
July 16 - July 23 Implement automatic update of the webapp launcher. We could use GSettings to store the Firefox installation path, as another way to check a new webapprt version (other than "installDir" in the webapp.ini).
July 23 - July 30 Manual testing on several distributions (with different desktop managers, Unity,GNOME,KDE,Xfce,LXDE) and possibly write automated tests. Correct eventual bugs.
July 30 - August 6 Any other business.
August 6 - August 13 Any other business.
August 13 - August 20 Improve documentation.


Obviously the work could be subject to delay depending on the approach we'll adopt for uninstallation. This is why I decided to have two weeks without any specific work planned.

Weekly status reports

I'll write here weekly reports about my work, starting from May 21.