Ubuntu 10.04 upgrade broke my gmail in prism
3 May 2010, 00:21
I upgraded to Lucid today. Process went smoothly. First impressions, even though I kinda liked the brown / orange, I think I’ll get used to a dark theme and the aubergine presence pretty quickly.
First noticeable breakage is my fancy offline gmail in prism (a firefox add-on that provides dedicated firefox windows to “web applications”). That, oddly enough, tend to break often so I talk a lot about.
So here is the journey from breakage to resolution.
When I try to run the thing, it always crashes when loading gmail (the progress bar stage after login). It doesn’t work on the command line either, I only get a “segmentation fault” output.
I run the thing through strace to realize that it’s crashing when accessing information about extensions. Expecting a lot of troubleshooting down the road, I decide to try something completely different: I’ve heard that Google Chrome’s “Create shortcut to web application” works a lot better than prism so I give it a shot. Well, yes it does work but it doesn’t support offline gmail (on linux) or firepgp (for gpg signed and/or encrypted emails) so I’m back to looking at getting this prism to work.
Realizing that my hacks around prism are probably pretty old and that it’s probably all nicely supported into ubuntu, I decided to look for packages.
Found and installed prism-google-mail and xul-ext-gears. Now I was able to log into gmail but offline mode was deactivated and when I tried to restart it, prism wouldn’t even start (and didn’t even gave an error message).
I moved my ~/.prism/ and I got it to work again. Turns out I am experiencing this bug: Firefox does not start with certain addons installed. To work around it, I did a little shell wrapper that deletes the compatibility.ini file in question.
Now I have a gmail prism that starts but no offline mode. To install an add-on under prism you need the status bar to bring up the Tools -> Add-ons dialog. To enable it, you need to edit your webapp.ini and set status to yes. My webapp.ini was at:~/.webapps/google.mail@developer.mozilla.org/webapp.ini
Once I had that enabled, I noticed that Gears was installed for my prism instance. Turns out that xul-ext-gears installs gears for firefox and for any prism instance too. That was welcomed!
However, I was still out of luck trying to enable offline mode. It was behaving exactly as if I didn’t had gears installed. I found a bug related to this and it the bug someone was talking about modifying stub.js.
This rang a bell.
I needed to modify the stub.js when I created my own gears package to workaround the prism / gears deal the first time I did that. So I looked at my references and did it again. Turns out, it’s easier with the ubuntu package since it is already installed, I modify the file in place, restart my prism instance and voilà!
Anyway, I filed a patch hack and explained the fix so all this is probably (and hopefully) of little or no interest now.
— Olivier Bilodeau