Hace unos días que recogíamos la noticia de que Flatpak y Snap se posicionan como la referencia para distribuir aplicaciones en el escritorio Linux, hablando siempre por aplicaciones de terceros, más allá del grueso con el que se nutren los repositorios de cada distribución. Pero no es así porque lo digamos nosotros, claro, sino porque tal es el consenso al que parecen haber llegado algunos de los principales actores del escritorio Linux, incluyendo proyectos como GNOME, KDE, elementary o compañías como Canonical y, por ende, Ubuntu.
En ese artículo, sin embargo, también se plasmaban quejas ante lo que es una nueva guerra de formatos en la que ninguna parte va a ceder. Dicho de otra manera, ¿para qué hacen falta dos soluciones prácticamente iguales cuando eligiendo una sola bastaría y, mejor aún, simplificaría la situación para los desarrolladores independientes? Lo cierto es que aunque para el usuario final e incluso para los desarrolladores su uso es prácticamente el mismo, no lo es tanto para los responsables de las distribuciones.
Un ejemplo de esto lo tuvimos con la primera oposición seria que le surgió a Snap, con Fedora y Linux Mint plantándose frente a lo que consideran condiciones no admisibles. Sin entrar en muchos detalles, el conflicto con Fedora lo cerró Canonical comprometiéndose a mantener el soporte de Snap en GNOME Software, mientras que con Linux Mint la cosa pinta peor, y es que el motivo del descontento es diferente, con Chromium como protagonista del mismo. En resumen, dicen en Canonical que mantener las distintas versiones del navegador para las distintas versiones de Ubuntu es demasiado esfuerzo y será Snap o nada. Y, claro, esto supone pasar sí o sí por su tienda de aplicaciones.
El «caso Chromium» ejemplifica la principal diferencia entre Snap y Flatpak: distribución centralizada contra distribución libre, por más que Flathub se haya convertido en el medio de referencia para descargar paquetes Flatpak. No es la única. En el apartado técnico son más las diferencias entre ambos formatos y sobre ello publicaban hace un par de días un artículo en el blog de Ubuntu… que ha desaparecido, no está claro por qué. De hecho, la comparativa era bastante honesta e incluía una tabla que resumía de manera concisa qué aposta uno y otro formato.
Pero como quien escribe se guardó el artículo, ahí va la tabla comparativa entre Flatpak y Snap:
¿Qué formato es mejor, de acuerdo a estos datos? A grandes rasgos, Snap tiene ventajas se mire por donde se mire: está disponible para más distribuciones (el estado de esa disponibilidad es otro cantar), soporta más arquitecturas, además de para aplicaciones gráficas de escritorio sirve para servidores y dispositivos conectados (para eso se creó en un principio), tiene muchas más aplicaciones en tienda y soporta actualizaciones automáticas. Por el contrario, Flatpak ofrece la posibilidad de que cualquier interesado monte su propia tienda, cabe repetir, lo cual no es un dato menor.
Por supuesto, en la comparativa completa se habla de otros aspectos, como los formatos de fondo en los que se basan ambos contenedores y que en cuestiones como la rapidez en el inicio de las aplicaciones otorga una clara ventaja a Flatpak; las tecnologías que usan para el aislamiento de las aplicaciones, punto crucial en materia de seguridad; o cómo gestionan las dependencias, otro punto igualmente crucial que Snap parece manejar con más idea, pues si lo importante de Flatpak y Snap es precisamente olvidarse de estas complicaciones, Snap preinstala bibliotecas base que aligeran el tamaño de los archivos descargados y Flatpak lo hace todo en el mismo paquete, generando descargas inmensas y consumiendo el espacio de almacenamiento de manera alarmante.
En definitiva, cada cual tiene lo suyo y ninguna de las partes va a dar su brazo a torcer, por lo que la fragmentación continúa. ¿Podría plantearse quizás Canonical ceder algo de control y trasladar el desarrollo de Snap y la gestión de la tienda a una fundación en la que participasen las compañías y organizaciones interesadas, teniendo además constancia de que técnicamente Snap podría abstraerse a instancias independientes, para así tratar de impulsarla como la solución que contentase a todos? ¿Lo aceptarían el resto? Nunca lo sabremos.