I have used Mozilla's Prism (previously Webrunner and now Webrunner again) for years to create an run web pages as a desktop app but, unfortunately, Mozilla has discontinued Prism and handed the code over to an individual for any future development. Needless to say, development is slow if progressing at all and most distros (including Ubuntu) have removed Prism from the repos. This left me with a rather large gap in needed functionality so I did some research.
Originally I wanted to use a very lightweight browser such as Midori to replace Prism for running desktop apps. This turned out to be an issue for me as the desktop app I wanted to run is a local TiddlyWiki app which needs "write" permissions to save changes in the wiki locally. Apparently Midori, Chrome/Chromium, and a host of other browsers do not support this functionality on Linux/Mac currently. This left me back in Firefox land so I decided to stick with it but to make Firefox act a bit more like Prism and run my webpage as a desktop app.
A desktop app is simply a web page ran through a lightweight / stand-alone web browser. There is no difference in what you see from viewing a web page via a browser or as a desktop app but a desktop app typically has no menu/navigation/bookmarks/status bar. This makes the desktop app simple, lightweight, and fast.
Desktop apps over benefits and drawbacks to viewing web pages in a standard browser. The core reasons I prefer some web pages to be desktop apps are as follows:
There are other benefits of desktop apps but the above capture the basis from my point of view.
Of course you know how to open a webpage in a browser, just open your browser, enter the URL and click Go! But how do you make/use a desktop app? It used to be easier in Firefox 3.x as there was an extension that would make the webapp for you but with 4.x+...well it takes a little more work (although its not difficult). The steps to create a desktop app are as follows:
You've now got a desktop app! Since a desktop app is generally used for a single web page/site (like gmail) you can hide the Menu bar, Navigation bar, tab bar, and status bar. This will save a lot of screen space and make for a quicker/easier to use/navigate desktop app!
To start your desktop app simply use the same command as above (firefox -P "gmail-webapp" -no-remote https://mail.google.com) but note that your app will start immediately as the Profile "gmail-webapp" already exists now!
You may not like entering a long command each time you want to start your desktop app. You can always create a desktop/menu shortcut, simply paste in the command from above in the "execute" or "command" item and you should be all set. I personally prefer a keyboard shortcut to make it ultra-quick/easy, here's how to create a keyboard shortcut for the above command in XFCE:
That's all there is to it. Now you can simply press Meta+M and your desktop app will start up in its own trimmed down browser instance!
You may also be interested in knowing that the above approach works well with local HTML files (e.g. TiddlyWiki). Simply pass in the path to your local html file (such as: firefox
./firefox -P "bookie" -no-remote file:///home/user/notes/TiddlyWiki/common.html) and you should be all set.
I'm going to bet there is at least one
person out there like me who creates a perfect desktop app and has
hidden all the menu/tool bars yet finds the need to get the menu bar
back to do a little more tweaking. If this is you, simply press F10 or
ALT+V+T+M and you can toggle the menu bar on/off.
Just in case you wanted to see a desktop app (or the results from the above work), I've included a screenshot of the results.
