Pkg2appimage: ¿Cómo construir nuestros propios archivos AppImage?
Suele ser común, para muchos usuarios de Sistemas Operativos libres y abiertos, sobre todo en GNU/Linux, en sus muchas variantes en formas de Distribuciones (Distros), el desear instalar una aplicación externa en particular, y no poder lograrlo, ya que no es compatible con nuestra Distro GNU/Linux o con el número de versión de esta.
Hace poco, me paso exactamente esto mismo, cuando quise ayudar a instalar a un colega, la aplicación Packet Tracer 7.x.x. sobre su Distro Debian 10, usando mi Distro MX Linux 19.1. Y después de investigar y probar, instalando paquetes externos de otras Distros (Ubuntu/Debian) y realizando “desactualizaciones” (Downgrade) de paquetes y redireccionamientos de librerías usando la variable $LD_LIBRARY_PATH y creando enlaces simbólicos, todo fue inútil, hasta que utilice la herramienta Pkg2appimage.
Es bueno, primeramente destacar que el formato de archivo o la tecnología AppImage pertenece a lo que se conoce como “Aplicaciones Universales para GNU/Linux”. Entre los formatos incluidos bajo este nombre, además de AppImage, se encuentran Flatpak y Snap. Aunque, algunos suelen incluir la tecnología de paquetes conocida como OrbitalApps.
¿Qué es AppImage?
Por ende, AppImage es un formato para distribuir software portátil sobre GNU/Linux sin necesidad de permisos de superusuario para instalar la aplicación. De manera tal, de permitir y facilitar la distribución de software binario, que sea independiente de las Distros GNU/Linux. Lo cual es muy útil, tanto para desarrolladores como usuarios.
“Descargue una aplicación, hágala ejecutable y corra. No es necesario instalarla. No se alteran las bibliotecas del sistema ni las preferencias del sistema. También puede ejecutarse en una caja de arena (sandbox) como Firejail. Distribuya su aplicación Linux de escritorio en el formato AppImage y gane usuarios que ejecuten todas las distribuciones comunes de Linux. Empaquete una vez y corra en todas partes. Llega a los usuarios en todas las principales distribuciones de escritorio”. https://appimage.org/
Pkg2appimage: Herramienta para crear aplicaciones AppImage
Según los Desarrolladores de la tecnología AppImage en su sitio web oficial, está hace uso oficial de la herramienta AppImageKit para construir desde cero aplicaciones bajo el formato .AppImage. Mientras, que para construir (convertir) aplicaciones AppImage desde otras ya creadas bajo otros formatos, utiliza la herramienta Pkg2appimage.
En mi caso en particular, ya que deseaba construir un .AppImage de la aplicación Packet Tracer 7.x.x, procedí a utilizar el procedimiento descrito en el Repositorio de GitHub de Konradmb sobre Pkg2appimage y Packet Tracer.
Uso de Pkg2appimage
Y tal como dice el autor, procedí ejecutando las siguientes pasos con sus respectivas órdenes de comando:
A.- Paso 1
Clonar repositorio de archivo .yml para Packet Tracer
git clone https://github.com/konradmb/PacketTracer-AppImage.git
cd PacketTracer-AppImage/
B.- Paso 2
Descargar herramienta Pkg2appimage y hacerla ejecutable
wget https://github.com/AppImage/pkg2appimage/raw/master/pkg2appimage chmod +x pkg2appimage
C.- Paso 3
Actualizar contenido de archivo .yml con nueva ruta de descarga de archivo Packet Tracer, ya que la ruta actual de descarga no contiene el archivo. Para dicho fin, se puede utilizar el editor de consola nano de la siguiente manera:
nano PacketTracer.yml
Luego se debe comentar (deshabilitar con #) la línea desactualizada e introducir la correcta, una linea más arriba de la siguiente manera:
- wget -c https://dllb2.pling.com/api/files/download/j/eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpZCI6IjE1NjY3MjEzNDAiLCJ1IjpudWxsLCJsdCI6ImRvd25sb2FkIiwicyI6Ijc5ZDUxNWZlZmRjZTExZDAxY2NmNGQ4OWU5YmJhNzJhOWE3OTc5MzdkN2U1NWUxY2Y1MDAwYWJiNTA1ODQyN2Y3ZGRhODNjOTA0ZjQxMzU0ZTUzNzU0YThkODE0NWRlZWYwMmUyNWEyMDdhMTM3ZjdmZTgxNTY0MjIxNGE0YTRmIiwidCI6MTU4ODQ2MTE1Miwic3RmcCI6bnVsbCwic3RpcCI6bnVsbH0.qpUCNIAk2kRMkXamvP-mYn03caCLa743Pgt7BoggSGQ/packet_tracer_7.2.1_for_linux_64_bit.tar.gz # wget -c https://www.netacad.com/portal/sites/default/files/resources/PacketTracer/packet_tracer_7.2.1_for_linux_64_bit.tar.gz
D.- Paso 4
Construir el paquete .AppImage del Packet Tracer indicado en el archivo .yml
./pkg2appimage PacketTracer.yml
E.- Paso 5
Ejecutar el paquete .AppImage del Packet Tracer construido. El mismo, en caso de haberse ejecutado todo correctamente, debe encontrarse en la ruta:
"/home/$USER/PacketTracer-AppImage/out/"
Y al ser ejecutado, usted podrá visualizar su nueva aplicación AppImage sin dificultad alguna, tal como se muestra a continuación:
Equipo con MX Linux 19.1 (Basado en Debian 10 – Buster)
Equipo con GNU/Linux Debian 10 (Buster)
Luego de este tutorial y algunas acciones de ensayo y error, espero muchos puedan construir sus propias aplicaciones .AppImage usando Pkg2appimage.
Conclusión
Esperamos que esta “pequeña y útil publicación” sobre «Pkg2appimage»
, una herramienta pensada para crear archivos de instalación de aplicaciones bajo el formato AppImage utilizando archivos binarios (tar.gz, .deb o .ppa) existentes y un archivo de descripción .yml para lograr la conversión; sea de mucho interés y utilidad, para toda la «Comunidad de Software Libre y Código Abierto»
y de gran contribución a la difusión del maravilloso, gigantesco y creciente ecosistema de aplicaciones de «GNU/Linux»
.
Y para mayor información, no dudes siempre en visitar cualquier Biblioteca en línea como OpenLibra y JedIT para leer libros (PDFs) sobre este tema u otras áreas del conocimiento. Por ahora, si te ha gustado esta «publicación»
, no dejes de compartirla con otros, en tus sitios web, canales, grupos o comunidades favoritas de redes sociales, preferiblemente libres y abiertas como Mastodon, o seguras y privadas como Telegram.
O simplemente, visita nuestra página de inicio en DesdeLinux o únete al Canal oficial de Telegram de DesdeLinux para leer y votar por esta u otras interesantes publicaciones sobre «Software Libre»
, «Código Abierto»
, «GNU/Linux»
y demás temas relacionados con la «Informática y la Computación»
, y la «Actualidad tecnológica»
.