How to get back unity webapps to firefox integration?

I can't believe that there was not a question or open issue for this before.

I've recently installed ubuntu 14.04 along with my favourite webapps; and I, unfortunately, realised that they're not integrated with firefox/chromium anymore. Instead, they use a minimal browser which I am not interested in.

Within the few reasons why I'm still using unity and I haven't moved to gnome or xfce, it's the unity-webapps. I haven't known any other OS or Desktop Environment (DE) which integrates the internet webapps in the computer and, at same time, keeps the power of the web-browser and the computer-using style.

I loved to be able to have tens of opened tabs & to be in one-click far away to my facebook tab. And I loved to create new tabs in the same windows that I used to have my open webapp. No mention of all the capabilities which firefox provides me...

So, is there any workaround to get back the unity-webapps integrated in firefox/chromium? I've already checked the system settings and the unity tweak tool with no luck.

The major issue of the unity-webapps was there are few of them, they need more features and more stability. If ubuntu doesn't fix this, I'll strongly think in moving to another DE. C'mon Canonical, I'm not using a tablet, I have got 6GB of RAM and I want to see many apps and many pages at the same time.

EDIT - I have reported a bug in launchpad for this issue: https://bugs.launchpad.net/libunity-webapps/+bug/1329046

EDIT - My proposal of solution: The solution might be archieved following the path I'm describing below. I can only show it, somebody has to walk through it.

  1. get the source for 14.04 unity-webapps
  2. edit the place where webapp-browser is changed to be by default for unity-webapps inside libunity-webapps.
  3. Compile again the code for 14.04 and post the output package here.

The source for libunity is hosted here: http://packages.ubuntu.com/source/trusty/libunity-webapps


Ok at least for chromium this can be solved (somehow):

just change the line in

/usr/share/applications/<yourwebapp>.desktop

that says

Exec=unity-webapps-runner ...

to:

Exec= chromium-browser --app=http://mail.google.com (for gmail)

I think it is best to move the desktop file to ~.local/share/applications and uninstall the corresponding webapp completely, since the desktop file does imo everything the whole webapp does...

I'm sure there's something similar for firefox


Your solution got me thinking. It might be very easy to edit out their mistakes. Now...

Disclaimer: I don't use webapps. I installed Youtube for the purpose of solving this issue. This may not work with all webapps, you will have to try each one and post in comments so we can work it out together if you can't on your own. I post this as an answer because comments are way to short.

Let's start from the top, the command you call to run a webapp is called unity-webapps-runner. I don't know how it operates, I don't know how to fix it. What I do know is that you can very easily replace it with a bash script that launches Firefox. I am not a pro bash scripter, but this works:

#!/bin/bash 
for i; do 
if [[ $URL = "1" ]]; then
firefox $i;
exit;
fi
if [[ $i = "-d" ]]; then
URL="1";
fi
done

What the script does is that it will wait until the -d argument appear and take the next argument as a URL for Firefox.

Save this file in your ~/ directory as unity-webapps-runner and make it executable. Rename unity-webapps-runner in /usr/bin/ to something like unity-webapps-runner-classic. I presume you know you need root permissions for these actions and I presume you have knowledge concerning these particular procedures. Paste your ~/unity-webapps-runner to /usr/bin/ and try to launch a webapp, Youtube first to see that I haven't tricked you.

That should be it. Now it will launch a tab/new window in Firefox instead of the Ubuntu Browser. You could ofc replace firefox in the bash script with chromium or google-chrome or any other browser to make them launch instead.