The abundance of Linux distributions and the speed at which they evolve has traditionally made it extremely challenging to distribute binaries of applications. [Flatpak](http://flatpak.org) is a system for distributing and running desktop applications that allows a single binary to be built once and run on a wide variety of different Linux distributions. Applications are bundled with dependencies to avoid problems like a distribution upgrade causing an application to stop working.

Flatpak internally uses many of the same technologies as used in popular server-side container frameworks and supports distribution of applications as Open Container Initiative (OCI) bundles, but is designed for desktop applications installed and run by end users rather than server-side applications deployed by system administrators. Flatpak provides sandboxing, so that an application from an untrusted source can be run without giving the application unlimited access to the user's system. Flatpak uses an innovative system where, in most cases, the permission for the application to access some resource is given implicitly through user interaction rather than by presenting the user with a list of permission choices.

One further difference between Flatpak and server-side container frameworks is that Flatpak separates the application from the "runtime" - a
layer of base libraries and services that can be shared between multiple applications. The runtime can be updated without needing to rebuild or update the application.

This talk will give attendees an overview of the advantages of Flatpak and its technical underpinnings. It will also discuss how Flatpaks are built by developers, how Flatpaks fit into the distribution model, and specifically how they are being used in the Fedora distribution. [380]

Comments

Comments are closed.