October 29th, 2008Acelerar apertura de Firefox en Ubuntu
1. El problema
Firefox es, sin duda, un navegador excelente y rápido. Y lo mejor es sin duda la acoplación de nuevos plugins que añaden nuevas funcionalidades. En las versiones de Ubuntu ha sido el navegador por defecto aunque, como en mi caso, en una máquina algo lenta puede tardar bastante en iniciarse.

Buscando por Internet, encontré varios manuales de como acelerar su velocidad, pero lo que no he encontrado es como acelerar su apertura.
2. Truco casero
Durante este tutorial se realizará un truco casero para que al querer iniciar Firefox, aparezca instantáneamente. El funcionamiento principal de este truco es dejar Firefox corriendo desde que iniciamos el ordenador y cada vez que queramos iniciarlo, lanzar el proceso que ya está corriendo.
Para aplicar nuestro truco casero nos hará falta instalar dos programas:
- Alltray: minimiza un programa en la bandeja del sistema de Ubuntu.
- Xdotool: envía eventos del teclado al sistema de Ubuntu.
Si estás usando Ubuntu y pulsa sobre los enlaces superiores, el gestor de instalación de programas nos pedirá la contraseña de administrador y nos dará la opción de instalarlos. También nos podemos descargar los dos archivos anteriores y desde consola instalarlos manualmente de la siguiente forma:
- sudo dpkg -i [archivo]
A continuación crearemos el siguiente script (que podemos descargar desde aquí, aunque se escribirá de igual forma en este manual). Este script nos permite iniciar Firefox de dos formas: si no está iniciado en segundo plano, crear una nueva instancia; si ya está cargando en segundo plano, restaurarlo.
- #!/bin/bash
-
- exists=`ps x | grep -i alltray | grep -i firefox | wc -l`
-
- if [ `echo $exists` -eq 0 ]
- then
- echo Run a new instance.
- alltray -na -s -k 115 firefox
- else
- echo Run the background instance.
- xdotool key super
- fi
Código 2.1. Script para iniciar firefox en segundo plano.
Lo que hacemos aquí es iniciar Firefox con Alltray de tal forma que cada vez que pulsemos la tecla “Super” (la del icono de Windows, que equivale al código 115 para Alltray en mi ordenador*) se restaure o se minimice a la bandeja del sistema. Lo que hacemos con la herramienta Xdotool es enviar al sistema un evento de teclado, en este caso de la tecla “Super” para que restaure Firefox si está en segundo plano.
* Para obtener el código de la tecla super de tu ordenador, tienes que ejecutar el siguiente comando:
- xev
Una vez ejecutado, no moveremos el ratón ni pulsaremos las teclas del teclado. Entonces pulsaremos el botón “super” de nuestro teclado y copiaremos el código que aparece en “keycode” que es el que deberás usar en el resto del tutorial en lugar de 115 (includo el script anterior).
Una vez que hemos escrito el script, lo guardamos bajo el nombre de “comeOnFirefox.sh”, y desde consola le aplicamos los permisos de ejecución:
- sudo chmod +x ./comeOnFirefox.sh
3. Iniciando el script al inicio
Ahora aplicaremos este script a los iconos del menu de aplicaciones de Gnome (en caso de usarlo, también se puede hacer en KDE o xfce) y a los iconos que tengamos en el escritorio o paneles.
Si sois como yo y prácticamente cada vez que iniciamos el ordenador usaremos el navegador de Internet, entonces también podemos poner la aplicación para que se inicie automáticamente al iniciar el ordenador (pero que se inicie minimizado en segundo plano para que no nos moleste). Para hacer ésto (para GNOME), pulsaremos sobre “Sistema” - “Preferencias” - “Sesiones”. Una vez en el menú que nos aparece, pulsamos “Añadir” y aplicaremos los siguientes valores:
- Nombre: Firefox startup
- Comando: alltray -na -k 115 firefox
- Comentario: Iniciar firefox en segundo plano al inicio.
Y pulsamos sobre OK para guardar los cambios. Reiniciamos (solo por educación, no es obligatorio) y veremos como nuestra experiencia con el navegador Firefox mejora por el hecho de la velocidad en la que se inicia :)
Links de interés:
- Mirrors para Xdotool para Debian: http://packages.ubuntu.com/intrepid/x11/xdotool
- Guía de Alltray para Ubuntu: http://www.guia-ubuntu.org/index.php?title=Alltray
Código:
- Código fuente del script comeOnFirefox.sh



