Uno de los únicos problemas que puede surgir con la gran diversidad de distros en GNU/Linux, es que cuando desarrollas una aplicación de escritorio pensada para ser distribuida en todas las distros, surgen problemas entre los paquetes o librerías necesarios para tu Software y los que tiene instalados la máquina del usuario.
Y es que como programador, desarrollar una aplicación de escritorio para GNU/Linux puede llegar a ser muy tedioso. Es muy difícil, por no decir imposible, saber qué paquetes necesarios para tu aplicación tendrá o no tendrá instalados el usuario, o si la versión de las librerías necesarias van a ser las correctas para tu Software. Flatpak es un framework que pretende lidiar con todas estos problemas que pueden ir surgiendo en el desarrollo de una aplicación. Así que en Ubunlog hoy queremos presentártelo y hablar un poco de él.
¿Cómo funciona Flatpak?
Para evitar todos estos problemas de dependencias entre librerías y paquetes necesarios para el Software, Flatpak funciona en diversas capas:
1.- Runtimes
Contienen las dependencias que va a usar la aplicación. Siempre son las mismas independientemente de la distro en la que se usa. De este modo, no tenemos que actualiar la apliación cuando la distro sufre cambios.
2.- Liberías empaquetadas.
La idea es empaquetar con la misma aplicación todas aquellas dependencias que no están en runtime. De este modo, cualquier distro tendrá acceso a la(s) misma(s) librería(s), independientemente de su versión.
3.- Sandboxes
Flatpak aisla la aplicación del SO así como de otras aplicaciones, lo cual proporciona seguridad para el usuario y un entorno predecible para los desarrolladores.En la siguiente imagen podemos ver un esquema de cómo funciona Flatpak y sus capas:
Instalando Flatpak en Ubuntu 16.04
Instalar Flatpak en Ubuntu 16.04 es muy fácil. Basta con que ejecutemos lo siguiente en la Terminal:
sudo add-apt-repository ppa:alexlarsson/flatpak
sudo apt update
sudo apt install flatpak
Para ver cómo instalar Flatpak en otras distros puedes echar un vistazo a su web oficial.
Pues bien, esperamos que si eres desarrollador de aplicaciones para Linux eches un vistazo a este framework que nos pondrá las cosas muy fáciles si queremos que nuestras apps sean lo más modulares posibles independientemente de la distro en la que se vayan a instalar.
Falta la imagen del esquema… aunque para los curiosos se encuentra en la página web de Flatpak.
¡Gracias por el aviso! Por alguna razón que desconozco la imagen no se adjuntó correctamente. Ya está añadida!