Un pequeño hacks que se me ocurrió hace unos meses y del que estoy especialmente contento. No por su complejidad (que vereis es realmente simple), sino por su eficacia.

Problema: Tenemos varios navegadores instalados en tu sistema GNU/Linux (En mi caso tengo Konqueror, Firefox, G. Chrome, Opera y Flock). Uno de ellos lo tienes definido como “navegador favorito“, es el que se inicia al hacer click en un enlace de correo, mensajería, etc…. por ejemplo: Firefox, pero…. Resulta realmente antipático que si tienes Chrome y Konqueror abiertos, al cliquear sobre un correo electrónico se lance, además, Firefox.
¿tres? ¿no sería más lógico utilizar alguno de los navegadores que está ejecutandose en lugar de tener que abrir un segundo o tercer navegador?

Solución: el siguiente script recibe un requerimiento de abrir una URL, comprueba si algún navegador se está ejecutando y (si es así) le pasa la URL para que la abra ó inicia el navegador que definamos en la linea PREFERIDO=…

Copia el siguiente contenido a un archivo llamado (p. ejem) Navegador_favorito:
#!/bin/sh
CHROME_BIN="/usr/bin/google-chrome"
FIREFOX_BIN="/usr/bin/firefox"
KONQUEROR_BIN="/usr/bin/konqueror"
OPERA_BIN="/usr/bin/opera"
FLOCK_BIN="/usr/bin/flock"
PREFERIDO=$CHROME_BIN
if [ "`pidof $OPERA_BIN`" != "" ]; then
PREFERIDO=$OPERA_BIN
fi
if [ "`pidof $KONQUEROR_BIN`" != "" ]; then
PREFERIDO=$KONQUEROR_BIN
fi
if [ "`pidof $FLOCK_BIN-bin`" != "" ]; then
PREFERIDO=$FLOCK_BIN-browser
fi
if [ "`pidof $FIREFOX_BIN-bin`" != "" ]; then
PREFERIDO=$FIREFOX_BIN
fi
if [ "`pidof $CHROME_BIN`" != "" ]; then
PREFERIDO=$CHROME_BIN
fi
$PREFERIDO "$1"

Si encontrase varios navegadores ejecutandose pasará la URL al último de la lista de IF, por lo tanto PREFERIDO y el último IF deberian coincidir (aunque no tiene porqué, es una sugerencia).

Personaliza la linea “PREFERIDO=” para indicar que navegador quieres que se inicie si encuentra ninguno.

Instalar

Copia “Navegador_favorito” a /usr/bin y hazlo ejecutable (chmod +x /usr/bin/Navegador_favorito).

A continuación solo tienes que definir en tu sistema a “Navegador_favorito” como tu browser por defecto (kcmshell4 componentchooser). Hecho.
En adelante los clicks en URL se abriran en el navegador que haya en ejecución ó en el definido como PREFERIDO sino hubiera ninguno.

Notas

Antes de que me solteis los perros por la extrema simpleza del script:
– Observad que el lanzador y el binario en Firefox/Flock no son el mismo (pidof busca “firefox-bin” pero lanza “firefox“).
– He optado por dejar las lineas de ejecución del lanzaror individuales por si alguien quiere ejecutar el navegador pasandole alguna opción extra (tipo -newtab, -profile, etc).
– Las primeras lineas son repetidas porque es posible que no todos los navegadores estén en /usr/bin, es posible que alguno esté en /usr/local/bin ó /opt/kde3/bin, /usr/share/bin … etc….