I started having an issue on my Linux box shortly after firefox 3.6 came out: it simply refused to start. It’d try, but then just quit, without ever displaying anything or printing any errors.
Whenever I investigated with ‘firefox -safe-mode‘, it’d start OK, and then when I quit and started it normally, it’d be OK again. I vaguely recall having this happen to me on the odd occasion before, but this time it had become 100% [un]reliable, to the extent that I wrote a script that started firefox in safe-mode every time, letting me quit it, and then started it normally.
Fortunately, I stumbled across a discussion about this issue (well, several, but most were unrelated), and I thought I’d share the outcome, in case anyone else sees the problem (there don’t seem to be many of us).
This is not an explanation, but a work around: it seems to be something to do with a file in your profile called compatibility.ini. I’ve no idea what it does for you, but it appears as if it’s removed by safe-mode, and when it’s there, at least for me, firefox won’t start.
And yes, I did try going through all my extensions to see if one was the culprit. Unfortunately, it wasn’t anything obvious: I could make things work when all extensions were disabled, but simply turning them back on one-by-one didn’t help: I’d reach one that seemed to cause a failure, skip it, but then the next would too, even though that had worked stand-alone. It seems to be more a case of the volume of extensions turned on.
Anyway, I’m now using this script (~/bin/firefox) to start firefox. When the next version comes out, maybe I’ll try without and see what happens. It doesn’t seem to have any adverse affects.
#!/bin/bash PATH=/home/nabird/usr/mozilla/install/firefox:${PATH} pgrep -U $USER firefox-bin > /dev/null || \ { [ -f "$HOME/.firefox/compatibility.ini" ] && \ mv "$HOME/.firefox /compatibility.ini" "/tmp/$USER-compatibility.ini"; } exec firefox "$@"
I’m moving it to /tmp and not deleting it … well, just in case.
Leave a Reply