Header Ads

Snap

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 un 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:
sudo apt-get install snapd
A continuación algunos comandos básicos:
sudo snap find: Enumerar los paquetes disponibles
sudo snap install < package >: Instalar un paquete (e.g. sudo snap install wormhole)
sudo snap list: Ver todos los paquetes snap instalados
sudo snap changes: Ver una lista de acciones registradas
sudo snap refresh < package >: Actualizar un paquete a su última versión
sudo snap remove < package >: Desinstalar un paquete (e.g.: sudo snap remove wormhole)
El siguiente video muestra cómo hacerlo:
Otra manera más cómoda de trabajar con paquetes snap es con la interfaz SnapWeb, sin embargo, antes de entrar en materia, consideramos prudente mencionar a Shell In A Box, otra interfaz amigable para correr comandos en el navegador web; ideal para servidores o equipos sin escritorio ni acceso físico a la consola de comandos. 
sudo apt-get install shellinabox
Su acceso por el navegador https://localhost:4200/
El problema con estas interfaces radica en utilizan los mismos puertos (4200 y 4201), por tanto, antes de instalar SnapWeb, en caso de que utilice shellinabox, edite su archivo de configuración:
sudo gedit /etc/default/shellinabox
Y cambie el puerto por default 4200 por otro (preferentemente entre 4202 y 4299), guarde los cambios y reinicie la aplicación:
# e.g. change port 4200 to 4242
SHELLINABOX_PORT=4242
sudo invoke-rc.d shellinabox restart
# o
sudo /etc/init.d/shellinabox restart
# o
sudo systemctl restart shellinabox.service
Un tutorial más completo de shellinabox lo podemos encontrar en systeminside
Instalando SnapWeb
Superado este obstáculo, instalamos SnapWeb
sudo snap install snapweb
sudo 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)
sudo 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:
sudo 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.

No hay comentarios

Nota: solo los miembros de este blog pueden publicar comentarios.

Con la tecnología de Blogger.