domingo, 19 de febrero de 2017

Las instalaciones que vienen: snap y flatpak (I)

En abril del año pasado escribía yo una entrada de este blog, que titulé 'Qvo Vadis Canonical' donde, entre otras disquisiciones, hablaba de los paquetes SNAP. Decía yo, entonces, que Canonical estaba ‘cocinando’ un nuevo sistema de instalación, ‘al estilo Windows’, que tenía sus ventajas y sus inconvenientes… y que a mi no me acababa de gustar el tema.

Pero resulta que, con el tiempo, parece que cunde la idea, y ahora también se empieza a hablar de los paquetes FLATPAK, esta vez desarrollados desde RedHat… y como tecnología de libre acceso a cualquier distribución de Linux.
Y a ello ha respondido Canonical ‘universalizándose’, y ya ofrece poder usar también sus paquetes Snap en otras distribuciones.

Esto puede hacer sospechar que, desgraciadamente, se avecina otro 'frente tecnológico', del estilo del que hubo, en su dia, con las instalaciones basadas en paquetes ‘deb’ (con dpkg/apt, de Debian) y las basadas en paquetes ‘rpm’ (Redhat Package Manager)... y que al final nos van a seguir liando a los usuarios comunes.

Pero como la cosa está todavía bastante verde, dejemos que se desarrollen los acontecimientos. Aunque conviene no perder de vista el asunto, para estar bien informado, y 'al loro' del 'Estado del Arte'. Así que...

¿Que es esto de los paquetes Snap, o los Flatpak?
Pues, simplemente, son unos paquetes cuya característica principal es que contienen todos los archivos necesarios para instalar (y hacer funcionar) un determinado programa informático… de forma universal, sin necesidad de depender de un gestor de paquetes (aptitude, pacman, yum...), y sin tener que condicionarse al juego de las ‘dependencias’ y de las necesidades de coincidir la versión de un paquete, o librería, con la que contiene la distribución linux donde se instala… porque su contenedor ‘ya aporta’ todo lo que se necesite usar.

Dicho así, parece una cosa estupenda ¿no? Es, más o menos, como se instala en Windows. Aunque el concepto rompe con el principio clásico, de Linux, de ‘un único archivo para cada paquete específico’, porque aquí cada programa descargaría e instalaría todo lo que necesitase, independientemente de que estuviese repetido, o no. 
(y es lo que yo siempre matizo de que mientras Windows instala ‘programas’, Linux instala ‘aplicaciones’, o sea, un aplicativo que interrelaciones paquetes nuevos con paquetes ya existentes… que es lo que hace que las descargas sean menores (y que se ocupe menos espacio en el disco duro, una distro funciona perfectamente, con sus aplicaciones básicas, en menos de 4 GB de disco duro)

Y esta posibilidad de poder funcionar los programas usando, incluso, distintas versiones de una misma librería, lo consiguen funcionando en un (o una) 'sandbox', concepto que también interesa conocer: 
La sandbox (caja de arena) es la forma en que se instalan esos paquetes. Porque se instalan en una ‘caja de seguridad’, o ‘burbuja aislada’, para funcionar ‘en un entorno propio’. 
El concepto es viejo, y fácil de entender: una máquina virtual, funcionando con VirtualBox, funciona en una sandbox. Y, por ejemplo, si quiero eliminarla, me basta borrarla, porque no afecta para nada al sistema. 
En este punto, hay que decir dos cosas: una, que las sandbox parece ser que tienen, actualmente, algunas lagunas de seguridad, por las limitaciones del actual sistema gráfico X11 (el X Windows System), y solo se resolverían cuando las distros funcionen con los nuevos protocolos Wayland, o servidores gráficos Mir, actualmente en los últimas fases de desarrollo (bueno, esto ya es chino para mi, así que es lo que he leido por ahí, claro).
Y la otra, que al parecer el concepto de diseño de Flatpak es más eficiente que el de Snap, en el sentido de que 'las aplicaciones y librerías estarán deduplicadas con ahorro, por tanto, de espacio en disco, y también está más optimizado el tamaño de las descargas de las actualizaciones'. 

Por lo tanto, lo dicho: hay que tomárselo con calma, ver en qué quedan estas cosas, y por supuesto decidir si interesa usar estos nuevos sistemas de instalación (parece ser que la pretensión de Ubuntu, con sus Snaps, es que se usen cada vez más) o somos más partidarios del sistema clásico de instalar 'a lo Linux', y esto no es más que un recurso que se podría usar de forma anecdótica, para determinados programas que, a lo mejor, no están en los repositorios oficiales de mi distro.

De momento, la primera pregunta es... ¿y donde ver qué snaps, o flatpak, se ofrecen? 
Pues, para los usuarios de Ubuntu, parece ser que Canonical se los ofrecerá directamente (algo así como Ubuntu Snappy, como no uso Ubuntu la verdad es que no me he preocupado) pero también, en principio, existirán una especie de App Stores desde donde los podrás descargar. Por ejemplo, para los Snaps he encontrado esta
Y, por otro lado, para los Flatpak (cuyo desarrollo está más retrasado) encontré esta otra

Pero tanto unos como otros creadores han desarrollado alguna aplicación para facilitar la descarga y la instalación de estos paquetes snap, o flatpak. Pero como esto se está alargando, lo veré en una próxima entrada.

No hay comentarios:

Publicar un comentario