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.
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.
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.
Refrescamos los repositorios con el siguiente comando:
$ sudo apt update
$ sudo apt update
Actualizamos los paquetes disponibles si los hay con el siguiente comando:
$ sudo apt upgrade
$ sudo apt upgrade
Finalmente, instalamos el paquete snapd con el siguiente comando:
$ sudo apt install-y snapd
$ sudo apt install -y snapd
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
$ 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 browser
keepassxc 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.
$ snap find firefox
Name Version Developer Notes Summary
firefox 85.0-1 mozilla - Mozilla Firefox web browser
keepassxc 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
$ 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-12021-01-28(483) 151MB -
latest/candidate: 85.0-12021-01-25(483) 151MB -
latest/beta: 86.0b3-12021-01-28(487) 152MB -
latest/edge: ↑
esr/stable: 78.7.0esr-22021-01-25(484) 148MB -
esr/candidate: ↑
esr/beta: ↑
esr/edge: ↑
installed: 85.0-1(483) 151MB -
$ 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
$ sudo snap install nombre_paquete
Por ejemplo, para instalar firefox ejecutaríamos el siguiente comando:
$ sudo snap install firefox
$ 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
$ sudo snap remove nombre_paquete
Por ejemplo, para desinstalar el paquete firefox previamente instalado, ejecutaríamos el siguiente comando:
$ sudo snap remove firefox
$ 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
$ 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 202012101944 latest/stable canonical✓ base
firefox 85.0-1483 latest/stable mozilla✓ -
gnome-3-34-18040+git.3556cb3 66 latest/stable canonical✓ -
gtk-common-themes 0.1-50-gf7627e4 1514 latest/stable canonical✓ -
$ 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✓ -
Los paquetes snap se actualizan automáticamente de acuerdo a la configuración snaprefresh.timer. Para ver el último y siguiente tiempo de actualización podemos usar el siguiente comando:
1
2
3
4
$ sudo snap refresh --timetimer: 00:00~24:00/4
last: today at 18:00 CET
next: tomorrow at 03:55 CET
$ sudo snap refresh --time
timer: 00:00~24:00/4
last: 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
$ 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'.
$ 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
$ snap help --all
Obtener más información acerca de un comando
$ snap help<comando>
$ snap help <comando>
Página man de snap
$ man snap
$ man snap
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
$ 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
$ sudo snap install snap-store
Una vez abierta, veremos algo similar a esto: Haz clic en la imagen para aumentarla
Ahora, desde la tienda de Snap, ya podemos instalar las aplicaciones que necesitemos.
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.
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.
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.
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
$ /snap/bin/firefox
2. O bien, añadir la final del archivo .bashrc o .zshrc, la siguiente línea:
PATH=$PATH:/snap/bin
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.
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
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
Manuel Verdugo
No me ha funcionado más que el comando apt install -y snapd
J. Carlos
Hola Manuel,
Podrías ser más explicito. ¿Qué tipo de fallos has tenido? Quizá pueda ayudarte.
Un saludo
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:
2. O bien, añadir la final del archivo .bashrc o .zshrc, la siguiente línea:
. 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.
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
J. Carlos
Hola Daniel,
Inténtalo ejecutando la orden $ sudo snap install core18
Un saludo