Header Ads

Snap Web

Mucho se ha hablado de los paquetes Snap en Linux, (desarrollado por Canonical/Ubuntu). Que van a reemplazar los paquetes.deb (herencia de Debian), que reemplazará al archifamoso APT (comando apt-get o apt) y muchas otras cosas más (MuyLinux nos explica detalladamente el asunto).
Es posible que esto sea cierto. Su implementación es una realidad; de hecho, actualmente está soportado por muchas versiones de Linux; incluso están cocinando una versión alterna de Ubuntu llamada Ubuntu-Core con snap, sin embargo, consideramos que el reemplazo a corto plazo está por verse, ya que todo depende de la celeridad con que las aplicaciones que actualmente usamos en Linux migren al canal "stable" de snap.
Su principio es similar al de las .apk de Android. Una aplicación se instala con todas sus dependencias (tal y como se muestra en la imagen del encabezado), lo que es una gran ventaja.
¿Cómo se usa Snap?
Si su sistema no lo tiene instalado:
apt-get install snapd
A continuación algunos comandos básicos:
snap find: Enumerar los paquetes disponibles
snap install < package >: Instalar un paquete (e.g. snap install wormhole)
snap list: Ver todos los paquetes snap instalados
snap changes: Ver una lista de acciones registradas
snap refresh < package >: Actualizar un paquete a su última versión
snap remove < package >: Desinstalar un paquete (e.g.: snap remove wormhole)
El siguiente video muestra cómo hacerlo:
Instalando SnapWeb
Superado este obstáculo, instalamos SnapWeb
snap install snapweb
systemctl start snap.snapweb.snapweb.service
Verificamos los servicios inicien (bug 1610026)
systemctl list-unit-files | grep snap
snap-core-2312.mount                       enabled 
snap-snapweb-207.mount                     enabled 
snap.snapweb.snapweb.service               enabled 
snapd.autoimport.service                   enabled 
snapd.refresh.service                      static  
snapd.service                              enabled 
snapd.system-shutdown.service              enabled 
snapd.socket                               enabled 
snapd.refresh.timer                        enabled
# Y
systemctl | grep snap.snapweb.snapweb.service
snap.snapweb.snapweb.service   loaded active running   Service for snap application snapweb.snapweb
Y las unidades aparezcan montadas (snap-core y snapweb). Ejemplo:
mount | grep snap
/var/lib/snapd/snaps/core_2312.snap on /snap/core/2312 type squashfs (ro,nodev,relatime)
tmpfs on /run/snapd/ns type tmpfs (rw,nosuid,noexec,relatime,size=1624848k,mode=755)
nsfs on /run/snapd/ns/core.mnt type nsfs (rw)
/var/lib/snapd/snaps/snapweb_207.snap on /snap/snapweb/207 type squashfs (ro,nodev,relatime)
nsfs on /run/snapd/ns/snapweb.mnt type nsfs (rw)
Se pueden desmontar cuando no se utilicen (2312 es la versión actual)
umount /snap/core/2312
Finalmente accedemos por el navegador al https://localhost:4201/, generamos el token y lo pegamos en la web, tal y como aparece en la figura a continuación:
snapweb.generate-token
Y ya tenemos acceso a las apps snap
Por el momento hay pocas apps. Otro canal podemos encontrarlo en uappexplorer.com
En fin; Snap es una solución muy "portable" que permite una instalación y migración de paquetes mucho más sencilla que sus antecesores, y si una app tiene problemas de seguridad o estabilidad, no necesariamente implicaría que comprometa al resto del sistema, al menos en teoría, aunque también existe una alternativa llamada Flatpak, mucho más compatible con el ecosistema Linux y ya tiene su repositorio listo. La mesa está servida.

Actualización 2022
El canal uappexplorer.com ha sido reemplazado por snapcraft.io y open-store.io que son los canales actualmente recomendados para descargar e instalar aplicaciones snaps.

Lectura relacionada: La utopía de la convergencia en Linux
Con la tecnología de Blogger.