mozilla-launcher pegs my proc for a couple seconds when making any request to any application it handles. Reproducible: Always Steps to Reproduce: 1.Launch Firefox Actual Results: mozilla-laucher script takes 2 to 3 seconds to execute. Expected Results: I would expect that instead of one huge script to check what application is running, break this into smaller scripts that handle each application separately. It should be up to the user to choose the behavior of the mozilla-launcher script. Maybe this should be done with an /etc config file. I don't run multiple profiles on the same machine at the same time, so when I want to open a new tab in firefox, it is easy enough to check to see if an instance is running with ps -A | grep firefox-bin in a bash script and pass my tab or window parameter to the binary directly. I wrote this bash script which replaces /usr/bin/firefox which is moved to /usr/libexec/firefox so I can pass the app name to mozilla-launcher if it is the fire time the app has run. #!/bin/bash EXISTS=`ps -A | grep -c firefox-bin` ARGS= if [[ EXISTS -eq 0 ]] then EXEC=/usr/libexec/firefox else if [ -z $1 ] then EXEC=/usr/lib/MozillaFirefox/firefox-bin ARGS="-remote openurl($1,new-window)" else EXEC=/usr/lib/MozillaFirefox/firefox-bin ARGS="-remote openurl($1,new-tab)" fi fi $EXEC $ARGS &
The speed issues are solved with firefox-0.9, which supports the -a option to mozilla-xremote-client. The reason mozilla-launcher is slow, and the reason that your script isn't sufficient, is that mozilla-launcher is using some workarounds for the fact that mozilla-xremote-client can't tell windows apart. If you run mozilla-xremote-client 'ping()', for example, it doesn't distinguish between mozilla, firefox or thunderbird windows. Your script would fail about half the time if you were running thunderbird simultaneously as firefox. Anyway, with the latest firefox you shouldn't see the slowdown at all because it fixes the random-target-window problem (and mozilla-launcher takes this properly into account). Thanks for the bug.