inicio

dic 21, 2011
|

Script para crear lanzadores personalizados

Hace un tiempo publicamos una entrada en la que se explicaba cómo crear, de forma manual, lanzadores personalizados para Unity. En este caso, vamos a ver un sencillo script que nos permite automatizar dicha tarea; únicamente tendremos que facilitarle los siguientes datos:

- Nombre del lanzador (ej: Eclipse).
- Ruta completa del archivo ejecutable (ej: /home/miusuario/eclipse/eclipse).
- Ruta completa del archivo de icono (ej: /home/miusuario/eclipse/icon.xpm).

El código del script es el siguiente:


#!/bin/bash

read -p "Nombre del lanzador: " NOMBRE # Se nos pide el nombre del lanzador.
if [ -e /usr/share/applications/$NOMBRE.desktop ]; then # Si el lanzador ya existe...
echo "ERROR: El lanzador ya existe. Abortado."
exit # ...salimos del script.
fi

read -p "Ruta completa del archivo ejecutable: " RUTAEXE # Se nos pide la ruta completa del archivo ejecutable.
if [ ! -e $RUTAEXE ]; then # Si el archivo ejecutable no existe...

echo "ERROR: El archivo no existe. Abortado."
exit # ...salimos del script.
elif [ ! -x $RUTAEXE ]; then # O si el archivo no es ejecutable...
echo "ERROR: El archivo no es ejecutable. Abortado."
exit # ...salimos del script.
fi

read -p "Ruta completa del archivo de icono: " RUTAICO # Se nos pide la ruta completa del archivo de icono.
if [ ! -e $RUTAICO ]; then # Si el archivo de icono no existe...
echo "ERROR: El archivo no existe. Abortado."
exit # ...salimos del script.
fi

echo "[Desktop Entry]" > $NOMBRE.desktop # Creamos el archivo lanzador
echo "Type=Application" >> $NOMBRE.desktop # escribiendo en él los datos
echo "Terminal=false" >> $NOMBRE.desktop # anteriormente facilitados.
echo "Name=$NOMBRE" >> $NOMBRE.desktop
echo "Exec=$RUTAEXE" >> $NOMBRE.desktop
echo "Icon=$RUTAICO" >> $NOMBRE.desktop

echo "Lanzador creado."
echo "Ahora se moverá al directorio '/usr/share/applications/'."
echo "Introduce tu contraseña de 'root' si es necesario."

sudo chown root:root $NOMBRE.desktop # Hacemos que el lanzador pertenezca a root
sudo mv $NOMBRE.desktop /usr/share/applications/ # y lo enviamos al directorio de los lanzadores.

read -n 1 -p "Finalizado. Pulsa una tecla para salir..."
echo ""
Para poder hace uso de este script, debemos guardar su código en un archivo y darle permiso de ejecución. Yo le he llamado lanzpers.sh y le he otorgado dicho permiso desde la terminal con chmod +x lanzpers.sh . En la siguiente captura tenemos un ejemplo de ejecución:

Comprobamos que el contenido del lanzador recién creado es el correcto:

Lo más cómodo es poder utilizar el script sin abrir una terminal. Para ello, sólo tenemos que activar la ejecución de archivos de texto en Nautilus – Editar – Preferencias; cualquiera de las dos opciones marcadas en verde es válida:


Saludos.

0
Las dos fichas siguientes cambian el contenido a continuación.
Fundador y administrador del blog. Gran fan de todo lo relacionado con la tecnología y de GNU/Linux en particular.

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información. ACEPTAR