Conceptos de Flatpak
ID de la aplicación
Cada aplicación necesita de un identificador único de aplicación (ID), basado en un dominio de nombre reservado. Por ejemplo, org.gnome.Maps
. Todos los recursos se exportan por la aplicación que debe prefijarse por este identificador. Este incluye el fichero desktop, el fichero de appdata para la aplicación, y multitud de iconos que estén referenciados por el fichero desktop.
Appdata
El fichero appdata para un Flatpak se utiliza para mostrar información acerca de la prioridad de la aplicación en la instalación. Mira en Normas de los ficheros de AppData de empaquetado de Fedora.
Tiempos de ejecución y combinaciones de librerías
Cuando se ejecuta un Flatpak, los ficheros de la aplicación vienen desde dos lugares:
-
The Flatpak runtime, mounted at
/usr
. This contains libraries and data files shared by all Fedora Flatpaks. There are runtimes for each Fedora release. -
The Flatpak application, mounted at
/app
. This contains the application code itself, but also contains any libraries that are bundled with the application. The application and libraries must be rebuilt with this prefix - this is done by rebuilding them for flatpaks.
RPM builds
Packaging flatpaks in Fedora makes use of RPM builds. The application and bundled libraries are rebuilt in Fedora’s build system (Koji) with a special build target - this gives a couple of advantages:
-
The same RPM spec file used to create the regular RPM build is also used to create the Flatpak RPM build.
-
The Flatpak RPM build target has a different buildroot configuration with macros that result in RPMs being built with a prefix of
/app
.
Note that Flatpak RPM builds will not work outside the Flatpak context, since they are rebuilt with a prefix of /app
with the same name as system libraries - you cannot use dnf install
to install them.
Imágenes OCI
Para Fedora, los tiempos de ejecución y las aplicaciones Flatpak están construidas como Imágenes OCI y distribuidas por medio de https://registry.fedoraproject.org. Esto permite que Flatpaks sea manejado de un modo muy similar a los contenedores del lado servidor. (Flatpaks también se distribuye comúnmente por medio de ostree.)
Want to help? Learn how to contribute to Fedora Docs ›