La fragmentación o abundancia de alternativas en Linux siempre suele ser algo relevante, positivo o no, en la Comunidad Linuxera. Por ello, siempre estamos inmersos, tanto como creadores/consumidores de contenidos como usuarios profesionales o no, en las múltiples noticias, novedades y sucesos relacionados con las muchas Distribuciones GNU/Linux, Aplicaciones, Sistemas, Plataformas y más. Y por supuesto que también, en las muchas Guías rápidas y Completos tutoriales posibles para aprender o resolver problemas y necesidades.
Por ello, y pensando en ambas cosas, hoy les traemos una muy útil Guía rápida para lograr crear nuestras propias apps AppImage utilizando otra herramienta adicional llamada «AppImageTool». La cual, es un utilitario de software alternativo o complementario a Pkg2AppImage, que en una anterior publicación también enseñamos a utilizar para lograr el mismo objetivo. Ya que, cuando hablamos de aplicaciones universales y portables, entre Flatpak, Snap y AppImage, muchos solemos preferir a este último formato, y más si de forma fácil y rápida podemos crear nosotros mismos las aplicaciones y juegos portables necesarios, a partir de los archivos fuentes y binarios existentes de desarrollos ya existentes.
Pero, antes de iniciar la lectura de esta publicación sobre qué la útil y complementaria aplicación del proyecto AppImage llamada «AppImageTool», les recomendamos la anterior publicación relacionada con la app similar previamente mencionada y abordada:
AppImageTool: ¿Cómo construir nuestras propias apps AppImage?
¿Qué es AppImageTool?
Según sus propios desarrolladores del Proyecto AppImage en su sitio web oficial, la aplicación «AppImageTool» es descrita brevemente de la siguiente forma:
AppImageTool es una herramienta que le permite generar archivos AppImage. Una AppImage es un paquete autoejecutable que contiene una aplicación y todo lo que necesita para una ejecución exitosa, de forma tal de que, si no se encuentran en el sistema operativo donde serán ejecutadas, entonces no haya problemas. Esto puede incluir archivos de librerías que no suelen estar disponibles en los sistemas de destino, recursos como traducciones, iconos, fuentes y otros archivos auxiliares (dependencias).
En fin, AppImageTool hace que sea fácil tomar una AppDir (Estructura normalizada de una aplicación) al estilo de LinuxDeployQt, para convertirla en una aplicación AppImage.
Esta herramienta de implementación de Linux, toma una aplicación como entrada y la hace autónoma copiando los recursos que utiliza la aplicación (como bibliotecas, gráficos y complementos) en un paquete. El paquete resultante se puede distribuir como AppDir o como AppImage a los usuarios, o se puede colocar en paquetes de distribución cruzada. Sobre LinuxDeployQt en GitHub
Pasos para crear una aplicación AppImage
Para nuestra guía rápida de hoy, utilizaremos el juego Urban Terror 4 para aprender a convertir una aplicación con binarios ejecutables y toda su paquetería asociada en una aplicación universal y portátil con el formato AppImage mediante AppImageTool.
Y los pasos necesarios son los siguientes:
- Descargar la aplicación AppImageTool: Directamente de su sitio web oficial en GitHub. Y para ello, hemos descargado el ejecutable AppImage en su última versión estable disponible en la adecuada arquitectura de nuestro sistema operativo y ordenador, cuyo nombre es appimagetool-x86_64.AppImage. Y luego, de la forma acostumbrada, CLI o GUI, le hemos dado permiso de ejecución.
- Descargar la aplicación a convertir: En nuestro caso, como ya expresamos, descargamos la última versión disponible del juego Urban Terror 4, cuyo nombre es UrbanTerror434_full.zip. Y luego, procedemos a descomprimir el archivo para obtener la carpeta de nombre UrbanTerror43.
- Adecuación del directorio de la aplicación a convertir: Para el caso de Urban Terror 4, antes de ejecutar el proceso de conversión hemos borrado aquellos archivos que consideramos innecesarios, los cuales corresponden a los binarios incluidos para Windows, la arquitectura i386 y su modo Servidor. Es decir, solo dejamos el ejecutable para la arquitectura x86_64 llamado originalmente Quake3-UrT.x86_64, y que hemos renombrado simplemente como UrT4. Nota: Para cada aplicación puede ser necesario borrar distintos archivos o ninguno. O mover, crear o añadir algunos.
- Creación de archivos necesarios para la conversión: Para llevar a cabo de forma exitosa la conversión debemos crear y disponer de mínimo 3 archivos que corresponden a:
Archivos necesarios
Un archivo AppRun cuyo contenido es:
#!/bin/bash
cd "$(dirname "$0")" exec ./UrT4
Un archivo .desktop cuyo contenido es:
[Desktop Entry]
Type=Application
Exec=AppRun
Icon=UrT4
Name=Urban Terror 4
Terminal=false
StartupNotify=true
Comment=Juego FPS UrT4
Categories=Game;
Por último, un archivo de imagen correspondiente al icono de la aplicación y del futuro archivo AppImage. Que en nuestro caso práctico de hoy, llamaremos UrT4.png.
Y ya luego de que tengamos todo en orden y listo, procedemos a ejecutar nuestra orden de comando de conversión, tal como lo indican en el sitio web oficial: ./appimagetool-x86_64.AppImage AppDir. Sin embargo, para el caso de nuestra aplicación se hace necesario el agregar el prefijo siguiente: ARCH=x86_64. Por lo que, nuestra orden de comando final fue la siguiente:
ARCH=x86_64 ./appimagetool-x86_64.AppImage UrbanTerror43
Y si hemos realizado todo con cuidado y con éxito tendremos lista nuestra aplicación llamada Urban_Terror_4-x86_64.AppImage ubicado en la misma carpeta donde estemos trabajando la conversión, por ejemplo: Descargas. Tal como se muestra en los siguientes pantallazos:
Resumen
En resumen, «AppImageTool» junto a Pkg2AppImage, son sin duda alguna, 2 herramientas de software bien útiles y versátiles que podría usar cualquiera sobre su actual Distro GNU/Linux, para aprender a crear y disfrutar de sus propias aplicaciones portables en el formato de AppImage. Sin embargo, en el futuro, sería genial poder contar con una aplicación de escritorio, es decir, gráfica (con interfaz visual), que automatice y facilite aún más dicho proceso. Por ello, si ya has usado antes alguna de estas 2 u otras similares con el mismo fin, te invitamos vía comentario a contarnos tu experiencia con ellas, en beneficio de todos y la realización de una futura publicación sobre las posibles nuevas mencionadas.
Por último, recuerda visitar nuestra «página de inicio» en español. O, en cualquier otro idioma (con solo agregar al final de nuestra URL actual, 2 letras al final, por ejemplo: ar, de, en, fr, ja, pt y ru, entre muchas otras) para conocer más contenidos actuales. Además, te invitamos a unirte a nuestro canal oficial de Telegram para leer y compartir más noticias, guías y tutoriales de nuestra web. Y también, al siguiente Canal alternativo de Telegram para aprender más sobre el Linuxverso en general.