Una de las novedades más importantes introducidas con la llegada de Ubuntu 16.04 LTS han sido los nuevos paquetes Snap, una nueva forma de compilar y distribuir aplicaciones mucho más segura y sencilla de utilizar ya que, además de instalarse en espacios aislados del sistema operativo para evitar incompatibilidades con otras aplicaciones, el propio paquete incluye todas las dependencias, acabando de raíz con uno de los principales problemas de Linux a la hora de instalar aplicaciones.
Tradicionalmente, las aplicaciones de Debian y de otras distribuciones similares se empaquetan en paquetes .deb. Estos paquetes incluyen, además de la propia aplicación, otra serie de elementos necesarios, como bibliotecas, otras aplicaciones secundarias, scripts y ficheros de ayuda, entre otros. Para que todo funcione correctamente es necesario satisfacer las dependencias de todos los elementos incluidos en el paquete, sin embargo, en muchas ocasiones ocurre que, si instalamos una versión concreta de las dependencias de una aplicación, otra aplicación deje de funcionar al no ser compatible con dicha dependencia, y así sucesivamente.
Los paquetes Snap funcionan de forma muy similar a los contenedores de Docker, es decir, crean un espacio aislado donde se copia todo (archivos, scripts, biblioteca, dependencias, etc) y, al ejecutarlo, todo se ejecuta desde allí de manera que, además de estar aislado del resto de procesos, ninguna de las configuraciones pueda afectar a ninguna otra aplicación instalada.
Hace unos días, Canonical anunciaba que snapd, la herramienta utilizada para instalar las aplicaciones Snap en Ubuntu, ha sido portada a otras distribuciones Linux mucho más allá de los sistemas de Canonical, como Debian, Arch, Fedora y Gentoo, entre otras. Esto significa que, probablemente, en poco tiempo podamos empezar este sistema de empaquetado también en las distribuciones mencionadas, simplificando mucho el uso de estas y ahorrando innumerables problemas.
La comunidad está a favor de los paquetes Snap
La comunidad recibió con brazos abiertos los paquetes Snap de Canonical ya que era una solución necesaria pedida a gritos. Desde su llegada, tanto Canonical como la comunidad ha trabajado sin parar en depurar todo el ecosistema y mejorarlo con el fin de intentar estandarizarlo lo antes posible.
Además de todas las ventajas mencionadas anteriormente, las distribuciones que adopten este nuevo sistema de empaquetado empezarán a funcionar de forma similar a un sistema rolling release ya que, en vez de tener que esperar desde el lanzamiento de una actualización de un programa hasta que esta aparece en los repositorios ya compilada para cada distribución, los paquetes Snap son universales, es decir, una misma aplicación se instala por igual en todas las distribuciones y, además, en todas las arquitecturas de procesador.
Por el momento pocos desarrolladores han empezado a distribuir sus aplicaciones en ese formato, entre otros, Mozilla, The Document Foundation y Krita, sin embargo, poco a poco más desarrolladores se van animando a hacerlo. Y quien sabe, es posible que este sea el principio del fin de herramientas como apt, yum y los paquetes deb y rtm, entre otros.
Cualquier usuario de las distribuciones anteriormente mencionadas que quiera empezar a instalar estas nuevas aplicaciones en ellas pueden hacerlo instalando manualmente snapd desde el siguiente enlace. Sin duda un gran movimiento tanto por parte de Canonical como de la comunidad que, seguramente, de mucho de qué hablar en un futuro no muy lejano.
¿Qué opinas de los paquetes Snap? ¿Crees que su llegada a otras distribuciones es una buena idea?
Quizá te interese:
- Cómo funcionan las nuevas aplicaciones Snap de Ubuntu
- Qué son las aplicaciones Snap y por qué son tan importantes para Ubuntu