Logo de snapcraft

Instalación y gestión de paquetes Snap

 
 

En este artículo veremos como instalar y gestionar paquetes Snap. Utilizaremos un sistema Debian para las pruebas, pero que sepáis que Snap funciona en casi todas las distribuciones.

Índice General

  1. Introducción
  2. Instalación
  3. Utilizando snap
  4. Entorno gráfico
  5. Tiendas Snap
  6. Errores conocidos

 

  1. Introducción (Volver al índice General)
    Los paquetes snap pertenecen a lo que se conoce como sistema de paquetes autocontenidos, que viene a ser algo así como que contienen la mayor parte de las librerías que necesitan para su funcionamiento, es decir, contienen todas las dependencias que necesitan para funcionar. snapd, se diferencia de los enfoques tradicionales de administración de paquetes de Linux, como APT o YUM, que requieren paquetes específicamente adaptados para cada distribución de Linux.

    Son rápidos de instalar y se actualizan de forma automática. Funcionan en casi cualquier distribución y dispositivo. Desde servidores, equipos de sobremesa, dispositivos móviles, Internet de las cosas, etc. La única condición necesaria, es que snapd este ejecutándose.

    En este artículo veremos como instalarlo y veremos algunos comandos básicos para la gestión de los paquetes.

  2.  

  3. Instalación (Volver al índice General)
    Para poder utilizar los paquetes snap en nuestro sistema, lo primero que tenemos que hacer es instalar el demonio snapd.

    snapd nos permitirá instalar, configurar, actualizar y eliminar paquetes snap (paquetes ‘universales’), que funcionan en muchos sistemas Linux diferentes, permitiendo la distribución segura de las últimas aplicaciones y utilidades para la nube, servidores, escritorios e Internet de las cosas (IoT).

    snapd, es un servicio que se ejecuta en segundo plano y que se encarga de los paquetes snap instalados en nuestro sistema.

    Para instalarlo en Debian haremos lo siguiente:

    1. Refrescamos los repositorios con el siguiente comando:
      $ sudo apt update
    2. Actualizamos los paquetes disponibles si los hay con el siguiente comando:
      $ sudo apt upgrade
    3. Finalmente, instalamos el paquete snapd con el siguiente comando:
      $ sudo apt install -y snapd
  4.  

  5. Utilizando snap (Volver al índice General)
    Una vez instalado snapd, ha llegado el momento de sacarle partido. Veamos las opciones básicas más utilizadas con snap.
     

    • Buscar un paquete a instalar (Volver al índice General)
      Para buscar un paquete en la snap store (tienda de snap), ejecutaremos el siguiente comando:

      $ snap find nombre_paquete

      Por ejemplo, si queremos ver si está disponible el paquete Firefox, ejecutaremos el siguiente comando:

      1
      2
      3
      4
      5
      6
      7
      
      $ snap find firefox
      Name                 Version  Developer       Notes  Summary
      firefox              85.0-1   mozilla         -      Mozilla Firefox web browserkeepassxc            2.6.3    keepassxreboot  -      Modern, secure, and cross-platform password manager compatible with KeePass
      red-app              5.0      keshavnrj       -      Best Youtube Experience you will be ever served on Desktop !
      orange-app           5.0      keshavnrj       -      SoundCloud Player / Downloader for Linux Desktop
      downloadaccelerator  1.0      messey-bilal    -      A free tool to download files.

      En la línea 3 se observa que está disponible la versión 85.0-1 de firefox.

    •  

    • Obtener información detallada de un paquete (Volver al índice General)
      El siguiente comando nos dará información ampliada sobre un paquete en cuestión:

      $ snap info nombre_paquete

      Por ejemplo, veamos parte de lo que nos muestra sobre el paquete firefox:

      $ snap info firefox
      name:      firefox
      summary:   Mozilla Firefox web browser
      publisher: Mozilla✓
      store-url: https://snapcraft.io/firefox
      license:   unset
      description: |
        **The new Firefox**
       
        Meet Firefox Quantum. Fast for good.
       
        Features:
       
        * A powerful, new engine that’s built for rapidfire performance.
        * Better, faster page loading that uses less computer memory.
        * Gorgeous design and smart features for intelligent browsing.
      ...
      ...
      ...
        Firefox is made by Mozilla, the non-profit champions of a healthy internet. Mozilla also tackles
        issues like privacy, misinformation and trolling by investing in fellowships, campaigns and new
        technologies designed to make the internet healthier.
      commands:
        - firefox
      snap-id:      3wdHCAVyZEmYsCMFDE9qt92UV8rC8Wdk
      tracking:     latest/stable
      refresh-date: today at 13:53 CET
      channels:
        latest/stable:    85.0-1      2021-01-28 (483) 151MB -
        latest/candidate: 85.0-1      2021-01-25 (483) 151MB -
        latest/beta:      86.0b3-1    2021-01-28 (487) 152MB -
        latest/edge:      ↑                                  
        esr/stable:       78.7.0esr-2 2021-01-25 (484) 148MB -
        esr/candidate:    ↑                                  
        esr/beta:         ↑                                  
        esr/edge:         ↑                                  
      installed:          85.0-1                 (483) 151MB -
    •  

    • Instalar un paquete (Volver al índice General)
      Para instalar un paquete, ejecutaremos el siguiente comando:

      $ sudo snap install nombre_paquete

      Por ejemplo, para instalar firefox ejecutaríamos el siguiente comando:

      $ sudo snap install firefox

      Nota: Los paquetes snap se instalan en la carpeta snap en el directorio raíz (/snap). Los ejecutables que lanzan las aplicaciones instaladas tendrán un enlace a la carpeta /snap/bin. Por ejemplo, tendríamos un ejecutable de firefox en /snap/bin/firefox. Este dato es importante saberlo por si nos interesa crear enlaces al ejecutable.

    •  

    • Desinstalar un paquete (Volver al índice General)
      Si lo que queremos es desinstalar un paquete, ejecutaremos el siguiente comando:

      $ sudo snap remove nombre_paquete

      Por ejemplo, para desinstalar el paquete firefox previamente instalado, ejecutaríamos el siguiente comando:

      $ sudo snap remove firefox
    •  

    • Revertir el último cambio (Volver al índice General)
      Si no nos gustó la última actualización de un paquete, o por cualquier motivo necesitamos devolver un paquete snap a su estado antes de la última actualización, podemos hacerlo ejecutando el siguiente comando:

      $ sudo snap revert nombre_paquete
    •  

    • Listar paquetes snap instalados en nuestro sistema (Volver al índice General)
      Si nos falla la memoria y queremos saber que paquetes hemos instalado en nuestro sistema por medio de snap, podremos saberlo ejecutando el siguiente comando:

      $ snap list
      Name               Version          Rev    Tracking       Publisher   Notes
      core               16-2.48.2        10583  stable         canonical✓  core,devmode
      core18             20201210         1944   latest/stable  canonical✓  base
      firefox            85.0-1           483    latest/stable  mozilla✓    -
      gnome-3-34-1804    0+git.3556cb3    66     latest/stable  canonical✓  -
      gtk-common-themes  0.1-50-gf7627e4  1514   latest/stable  canonical✓  -
    •  

    • Actualizar snap (Volver al índice General)
      Para actualizar snap manualmente podemos usar el siguiente comando:

      $ sudo snap refresh

      Los paquetes snap se actualizan automáticamente de acuerdo a la configuración snap refresh.timer. Para ver el último y siguiente tiempo de actualización podemos usar el siguiente comando:

      1
      2
      3
      4
      
      $ sudo snap refresh --time
      timer: 00:00~24:00/4last: today at 18:00 CET
      next: tomorrow at 03:55 CET

      La línea 2 nos indica que entre las 0h y las 24h se actualizará 4 veces.
      La línea 3 nos indica el tiempo de la última actualización.
      La línea 4 nos indica el tiempo de la próxima actualización.

      Para establecer un tiempo de actualización diferente, por ejemplo dos veces al día, podemos usar el siguiente comando:

      $ sudo snap set core refresh.timer=0:00~24:00/2

      Entre las 0h y las 24h se actualizará 2 veces.

    •  

    • La ayuda de snap (Volver al índice General)
      Para obtener ayuda sobre la herramienta podemos optar por alguna de las siguientes opciones:

      • Ayuda de la herramienta
        $ snap --help
        The snap command lets you install, configure, refresh and remove snaps.
        Snaps are packages that work across many different Linux distributions,
        enabling secure delivery and operation of the latest apps and utilities.
         
        Usage: snap <command> [<options>...]
         
        Commonly used commands can be classified as follows:
         
                 Basics: find, info, install, remove, list
                ...more: refresh, revert, switch, disable, enable, create-cohort
                History: changes, tasks, abort, watch
                Daemons: services, start, stop, restart, logs
            Permissions: connections, interface, connect, disconnect
          Configuration: get, set, unset, wait
            App Aliases: alias, aliases, unalias, prefer
                Account: login, logout, whoami
              Snapshots: saved, save, check-snapshot, restore, forget
                 Device: model, reboot, recovery
              ... Other: warnings, okay, known, ack, version
            Development: download, pack, run, try
         
        For more information about a command, run 'snap help <command>'.
        For a short summary of all commands, run 'snap help --all'.
      • Obtener un sumario corto de todos los comandos
        $ snap help --all
      • Obtener más información acerca de un comando
        $ snap help <comando>
      • Página man de snap
        $ man snap
  6.  

  7. Entorno gráfico (Volver al índice General)
    Si os interesa instalar un entorno gráfico para la instalación de paquete snap, tras la instalación del paquetes snapd, podemos instalar la tienda de snap con el siguiente comando:

    $ sudo apt install snap-store

    Si entre los paquetes de vuestra distribución no se encuentra el paquete snap-store, podéis instalarlo desde el propio snapd con el siguiente comando:

    $ sudo snap install snap-store

    Una vez abierta, veremos algo similar a esto:

    Paquetes Snap: Pantalla de bienvenida de Snap
    Haz clic en la imagen para aumentarla
    Ahora, desde la tienda de Snap, ya podemos instalar las aplicaciones que necesitemos.
  8.  

  9. Tiendas Snap (Volver al índice General)
    Os dejamos aquí un par de enlaces a tiendas snap:

    • Snap Store: Como bien dice su página web, «busque miles de snaps utilizadas por millones de personas en 41 distribuciones de Linux». Snap Store ofrece un lugar para cargar snaps y para que los usuarios naveguen e instalen el software que deseen.
    • OpenStore: OpenStore es la tienda de aplicaciones oficial de Ubuntu Touch. Es un proyecto de código abierto dirigido por un equipo de voluntarios con la ayuda de la comunidad. Puede descubrir e instalar nuevas aplicaciones en su dispositivo Ubuntu Touch. También puede cargar y administrar sus propias aplicaciones para su publicación. OpenStore fomenta que las aplicaciones publicadas en él sean de código abierto, pero también acepta aplicaciones propietarias.
  10.  

  11. Errores conocidos (Volver al índice General)
    Si os aparece un error con la frase «cannot find required base "core18"», en ZeppelinuX hemos publicado el artículo snap: cannot find required base "core18" en el que se explica como solucionarlo.

 

Espero que este artículo os haya sido de utilidad. Si pensáis que podéis colaborar para mejorar este artículo, que hay algo erróneo en él o simplemente deseáis comentarlo, por favor, dejad vuestra opinión más abajo.
 
Seguir J. Carlos:

Técnico Informático - Desarrollo Web - Administración de Redes

Técnico Informático. Desarrollo Web. Administración de redes.

Últimas publicaciones de

8 comentarios

  1. Anibal

    Saludos. Al ejecutar el comando: $ sudo apt install -y snapd , el sistema responde con el mensaje: orden no encontrada

    • J. Carlos

      Hola Anibal,
      He probado el comando y funciona correctamente, al menos en Debian. Si te aparece el mensaje de «orden no encontrada», será porque lo estás ejecutando sin privilegios de root o porque tu sistema operativo no está basado en Debian.

      Un Saludo

  2. jawwad

    hola tengo un problema, que al abrir la aplicacion no me salen los iconos ni nada

    • J. Carlos

      Hola Jawwad,

      Los ejecutables de los paquetes snap están en la carpeta /snap/bin/. Para ejecutarlos desde la consola o terminal, tienes dos opciones:
      1. Escribir la ruta absoluta o situarte en dicho directorio y escribir el nombre del paquete.
      por ejemplo:

      $ /snap/bin/firefox

      2. O bien, añadir la final del archivo .bashrc o .zshrc, la siguiente línea:

      PATH=$PATH:/snap/bin

      . De esta forma no tendrá que escribir la ruta absoluta o ubicarte en el directorio /snap/bin.

      Además, sabiendo la ruta a los paquetes puedes crear tú mismo los accesos directos o enlaces a las aplicaciones para tu Escritorio o menú de aplicaciones. En este caso, la forma de hacerlos dependerá del Escritorio gráfico que utilices.

      Espero que te haya servido la explicación.
      Un saludo.

  3. Daniel

    cuando intento por ejemplo «sudo snap install core» la terminal me contesta «error: cannot communicate with server: Post «http://localhost/v2/snaps/core»: dial unix /run/snapd.socket: connect: no such file or directory» no encuentro como solucionarlo

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.