Crear lanzadores en Debian para una AppIMage
En este artículo descargaremos una aplicación de este tipo «AppImage», y crearemos un lanzador, para no tener que desplazarnos al directorio de instalación para ejecutarlo.
En alguna ocasión necesitamos descargar una aplicación desde la página de los desarrolladores, ya que no la encontramos en los repositorios oficiales.
Podremos instalar algún paquete «.deb» o compilar e instalar el código fuente. Para facilitar las cosas, allá por el año 2004, se lanzó un proyecto para distribuir software portátil en paquetes para todas las distribuciones, sin permisos de superusuario, proyecto que en 2013 se renombró como «AppImage».
Sumario
- Qué es AppImage
- Ejecución de una AppImage
- Con la GUI
- Con la terminal
- Crear un lanzador
Qué es AppImage
AppImage es un formato que permite a los desarrolladores obtener binarios, para los usuarios de Linux, de manera similar a como lo hacen otros sistemas operativos. Son unos paquetes de software compatibles con cualquier S.O. Linux, como Debian, Ubuntu, openSUSE, RHEL, CentOS, Fedora, Linux Mint, etc.
Estos paquetes se caracterizan por incluir todas las librerías que necesita el software para ejecutarse, impidiendo problemas de incompatibilidades de versiones.
Hay variadas razones para el uso de este tipo de software. Vemos algunas.
- Queremos tener una versión nueva de un programa que aún no ha sido incluida en los repositorios de nuestra distribución estable.
- Necesitamos varias versiones de un mismo software.
- Necesitamos llevar las aplicaciones en un USB, por ejemplo, para poder trabajar con ellos en cualquier otro equipo.
- Queremos usar determinados programas en entornos corporativos o un aula, pero no tenemos permisos para instalar nada.
Como sus desarrolladores dicen: «La experiencia de usuario única garantiza que incluso las personas menos expertas en tecnología puedan comenzar sin mayores problemas. AppImage es principalmente una forma de agrupar software centrada en el usuario.»
Descarga de Osu! en formato AppImage
Para conocer como funciona, vamos a dercargar Osu!, «un juego de ritmo simple con una curva de aprendizaje bien pensada para jugadores de todos los niveles», desde «sourceforge», en formato AppImage, «osu.AppImage» de 154,0MB. Y la guardo en la ruta «~/Juego».
Ejecución de una AppImage
La ejecución de un software empaquetado como AppImage es muy sencilla. Es similar a como se hace en otros sistemas, los descargas, los haces ejecutables y los ejecutas. Vamos a ver como hacerlo con la interfaz gráfica y con la terminal.
Con la GUI
Una vez descargado el software, con el navegador de ficheros, en mi caso «Nautilus» , buscamos la ubicación de la AppImage. Hacemos clic derecho en el icono y seleccionamos «Propiedades». Aquí cambiamos los permisos de la siguiente manera,
Hacemos clic en la casilla de verificación «Permitir ejecutar archivo como programa», en el caso que estemos utilizando un administrador de ficheros basado en «Nautilus» o «Archivos», como «Nemo» o «Caja». En el caso de estar utilizando «Dolphin» haz clic en la casilla de verificación «Es ejecutable».
Una vez guardados los cambios, al cerrar el cuadro de dialogo, haciendo doble clic sobre el Icono ejecutaremos el software.
Con la terminal
Si estás habituado a trabajar con la terminal, te resultará más fácil y rápido hacerlo con ella.
Abre una terminal en el directorio donde tienes la AppImage o te desplazas a el con «cd». En mi caso,
cd ~/Juego
Si es necesario, damos permiso de ejecución con la siguiente sintaxis «chmod +x my.AppImage». Puedes consultar más sobre permisos en «Permisos en ficheros y directorios en sistemas GNU/Linux». Como vemos en la siguiente captura, ya tiene suficientes permisos.
Y ya la podremos ejecutar lanzando el comando con la siguiente sintaxis «./my.AppImage». En mi caso,
./osu.AppImage
Crear un lanzador
Seguimos con la AppImage de Osu!, que he descargado de «Sourceforge». Como hemos visto lo podemos ejecutar, tanto desde el entorno gráfico como desde la terminal, pero nos tendremos que desplazar al directorio que lo contiene para lanzarlo.
Esto sucede porque la aplicación no nos aparecerá en el «dash». Para facilitar su ejecución tenemos que crear un lanzador o un acceso directo a la aplicación específica.
Una solución rápida es, cuando tienes el software en ejecución, te aparece un icono en el «Dock» o «launcher». Haciendo clic derecho sobre este icono y marcando la opción «mantener en el lanzador», ya lo tendremos ahí permanentemente. Pero si son muchas las aplicaciones con lanzador creado así, se te llenará el «dock» de iconos, dificultando su uso. Por ello te recomiendo mantener en el «dock» solo las aplicaciones que más utilices.
La solución es crear un lanzador que se nos muestre en el «dash». Vemos como hacerlo.
En Debian y derivados, los lanzadores de aplicaciones son ficheros, con la extensión «.desktop», que se guardan en el directorio «/usr/share/applications/», para que afecte a todos los usuarios o en «~/.local/share/applications/», para un solo usuario.
Para crear un lanzador para la aplicación «Osu!», para todos los usuarios, nos desplazamos al directorio «/usr/share/applications/».
cd /usr/share/applications/ ls -l
Vemos todos los ficheros con extensión «.desktop», todos los lanzadores de aplicaciones que tenemos en el «dash». Tendremos que crear un fichero para nuestra aplicación. Analizamos, primero, el contenido que puede tener el fichero.
Contenido del fichero de un lanzador
Este es el contenido mínimo que debe tener el fichero para crear un lanzador.
[Desktop Entry] Type=Application Name=nombre Exec=ruta_al_ejecutable Icon=ruta_al_icono
En estas directivas establecemos
Estas son imprescindibles, pero dispones de más directivas para personalizar tu lanzador.
Creación del fichero
Vamos a crear nuestro fichero. En mi caso lo hago con el editor «nano». Necesitaremos privilegios de «root»
sudo nano osu.desktop
Y añadimos el siguiente contenido
[Desktop Entry] Type=Application Name=Osu! Exec=/home/javier/Juego/osu.AppImage Icon=/usr/share/icons/OsuIconos/osu.icon
Tienes que poner la ruta absoluta, en este caso no te valdrá con hacer uso de «~/». Guardamos y salimos
Solo nos resta conceder los permisos de ejecución necesarios al fichero, si es que no los tiene, y cambiarle el propietario a usuario «root», si aún no lo es, con los siguientes comandos
sudo chmod +x osu.desktop sudo chown root:root osu.desktop
Hago un listado para comprobar los permisos del fichero «osu.desktop», filtrando con «grep»
ls -l osu.desktop | grep osu*
Y vemos que ya tiene permiso de ejecución.
Una vez creado nuestro lanzador ya debería aparecer en el «dash». Si no aparece revisa el contenido del fichero anterior. Y comprueba la configuración con
desktop-file-validate osu.desktop
Si esto está bien y sigue sin funcionar, puede ser que no se haya actualizado la base de datos. La actualizas con
sudo update-desktop-database
Ya hemos terminado con el lanzador o acceso directo a nuestra aplicación, y lo tendremos disponible en el «dash», desde donde lo podremos lanzar.
Si tienes algún comentario que hacer sobre este artículo, al pie del post tienes un formulario para hacerlo.
Si quieres contactar conmigo por cualquier otro asunto relacionado con el sitio, en la página de contacto, tienes un formulario más adecuado.
Y para suscribirte y recibir las novedades publicadas, tienes un enlace en pie de la página o desde aquí mismo.