Cómo empaquetar un programa a Flatpak

Esta página te explicaremos como empaquetar aplicaciones en Flatpak. Forma parte de la wiki sobre Desarrolladores, para crear de aplicaciones y componentes de Deepin.

Qué es Flatpak

Es una tecnología de empaquetamiento de aplicaciones para ser instaladas inmediatamente en entornos de escritorio Linux. Los archivos son almacendos en contenedores listos para ejecutar, actualizar y gestionar recursos del sistema de forma independiente.

Además se emplea el concepto de librerías compartidas. Las librerías son almacenadas en el equipo y solo añadirán las faltantes cuando otras aplicaciones requieran. Una librería puede usarse en 1 o más aplicaciones, ahorrando espacio en disco.

Los desarrolladores pueden distribuir las aplicaciones Flatpak para cualquier distribución Linux, siendo indispensable tener un entorno de ejecución para integrar las interfaces de usuario o el guardado de archivos al sistema operativo.

Pasos para crear aplicaciones Flatpak

  1. Tener el instalado el paquete Flatpak
  2. Tener un entorno de ejecución
  3. Estructura el paquete (más en la sección «Qué contiene el paquete»)
    • El nombre completo del paquete lleva este estilo com.distribuidor.app
  4. Exporta a los repositorios (por ejemplo, flatpak build-export repo hello)
    • Soporta firma GPG para dar el visto bueno del desarrollador
  5. Instala el paquete y ejecútalo

Qué contiene el paquete

En general los paquetes llevan también:

  • AppData: La información de la aplicación, descripción y capturas de pantalla.
  • Iconos: Adaptadas para cualquier pantalla, como los monitores de alta definición.
  • D-Bus: Para comunicar al monitor e interactuar con el teclado y ratón.
    • PulseAudio para sonido.
    • X11 y Wayland para la visualización.
  • Archivos del paquete. Como el ejecutable «Hola mundo»

Estructura de un archivo

mkdir hello
mkdir hello/files
mkdir hello/files/bin
mkdir hello/export

Metadatos del paquete:
[Application]
name=org.test.Hello
runtime=org.gnome.Platform/x86_64/3.22
command=hello.sh

Código del hola mundo:
!/bin/sh

echo "Hello world, from a sandbox"

Cómo instalar y ejecutar desde la terminal

Por ejemplo si quiero instalar Hello de tutorial-repo:
flatpak --user remote-add --no-gpg-verify tutorial-repo repo
flatpak --user install tutorial-repo org.test.Hello
flatpak run org.test.Hello

Lectura adicional

Otros datos:

¿Te pareció útil este artículo?