GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Una introducción para principiantes a las instantáneas del formato de paquete universal de Linux

Introducción

¿Qué son las instantáneas y por qué deberías usarlas? El ecosistema Linux ha sufrido un viejo problema desde los albores del concepto de "distribución", y ese
problema es la fragmentación. Uno de los mayores problemas que causan esta fragmentación son los diferentes formatos de paquetes; No puedo ejecutar mis .debs en mi sistema Fedora o mis .rpms en mi
máquina Ubuntu. Sí, tenemos alien, que debería permitir la transición entre los dos formatos, pero hay dos problemas con este enfoque:hay otros formatos de paquete
además de rpm y deb y, además, alien no siempre funciona como se esperaba. . Entonces, el problema sigue ahí, o debería decir, estaba ahí. Ingrese a snap, el formato de paquete universal de Linux
que busca ofrecer a los usuarios y desarrolladores un formato de paquete único y facilidad a la hora de crear nuevos paquetes con las aplicaciones y bibliotecas
que se necesitan, asegurando que dichos paquetes se pueden compartir fácilmente entre distribuciones. Dell, Samsung y Linux Foundation se citan como contribuyentes, mientras que entre las
distribuciones admitidas se encuentran Fedora, Ubuntu, Arch u OpenSUSE.

Este artículo detallará cómo usar las instantáneas como un usuario simple, así como instrucciones para desarrolladores/empaquetadores
sobre cómo crear instantáneas para que las usen otros. El sistema operativo que usaremos es Ubuntu 16.04, pero las instrucciones a continuación no deberían ser difíciles de adaptar a otras distribuciones.

Snaps como un usuario simple

Esta parte le dará un recorrido por Snap desde la perspectiva del usuario:cómo instalar las herramientas necesarias y cómo usarlas para el uso básico del día a día
. Primero, debe instalar Snapcraft, un paquete que proporciona Snap, la herramienta de referencia para las operaciones diarias antes mencionadas:

 $ sudo apt install snapcraft

Eso es todo. Ahora, antes de continuar, hablemos de algunos detalles:primero, las aplicaciones que se ofrecen como instantáneas son contenedores aislados, lo que ayuda mucho en términos de consumo de recursos, así como en cuestiones de seguridad. Encontrará todo instalado por complemento en /snap/ , que a su vez tiene su propia jerarquía:/snap/bin , /snap/lib y así. En segundo lugar,
obtiene actualizaciones automáticamente. En tercer lugar, piense en las instantáneas como un complemento de los paquetes de Linux existentes, no como reemplazos (bueno, no ahora, de todos modos).

Y finalmente, las instantáneas se integran fácilmente
con el software instalado, haciendo uso de las bibliotecas existentes a través de las interfaces.
Como dijimos en el pasado, no hay sustituto para el manual. Entonces, si bien le daremos un recorrido, si desea profundizar más, deberá leer un poco por su cuenta. Así que
comencemos con las operaciones instantáneas básicas:si desea buscar un paquete, hágalo

 $ snap find hello

Aquí, 'hola' es la cadena de ejemplo que estamos buscando. Yendo más allá con la misma cadena, instalemos algo:

 $ sudo snap install hello

Puede ver las instantáneas instaladas con 'lista':

 $ snap list

Actualice con actualización, ya sea todo lo que haya instalado o solo ciertas instantáneas:

 $ sudo snap refresh
OR
 $ sudo snap refresh hello

Lo que es algo nuevo (sí, puede revertir con yum por ejemplo, y no solo, pero eso no siempre funciona como se desea) es el comando 'revertir':

$ sudo snap revert hello

Usando snap como desarrollador

Configuración

En primer lugar, veamos qué necesita para comenzar a crear instantáneas. La herramienta del oficio se
llama snapd, y en Ubuntu y Debian es tan simple como

$ sudo apt install snapd snapcraft

mientras que en Fedora puedes hacer

 $ sudo dnf copr enable zyga/snapcore
 $ sudo dnf install snapd
 $ sudo systemctl enable --now snapd.service
 $ sudo setenforce 0
 $ sudo $editor /etc/selinux/config #set SELINUX=permissive and reboot to make SELINUX settings permanent

y eso es. Sin embargo, hay una trampa. Si bien estas herramientas funcionan con la mayoría de las principales distribuciones de Linux, Snapcraft, la herramienta que vamos a
instalar y usar para aprender a crear instantáneas, está disponible en los repositorios de Ubuntu y AUR, hasta donde sabemos. El resto de
los usuarios de Linux solo tendrán que clonar el repositorio git (https://github.com/snapcore/snapcraft) y construirlo.

Hacer el recorrido y crear un complemento

Antes de continuar, tenga en cuenta que sus instantáneas (o las existentes) serán y son mucho más grandes que los paquetes de repositorio correspondientes. ¿Por qué? Porque también contienen todas las dependencias necesarias para que los programas funcionen, por lo que
son autosuficientes, en cierto modo. Una vez que haya instalado Snapcraft, se recomienda realizar el recorrido:

 $ snapcraft tour

Este comando inicializará algunos directorios y subdirectorios (por defecto en ./snapcraft-tour ) y obtendrá código fuente
muestras, instrucciones y pasos numerados que lo guiarán a través de los conceptos básicos. Por ejemplo, el primer paso es, ¿cómo si no?,
hola mundo. Tipo

 $ cd snapcraft-tour/00-SNAPCRAFT/01-easy-start

y solo verá el archivo .yaml allí, que básicamente es el archivo que describe el complemento. Échale un vistazo, verás
que define el nombre, qué buscar, de dónde, qué aplicación resultará, etc. Luego, solo ejecuta

 $ snapcraft

dentro del directorio anterior y hará todo lo necesario y le dará un chasquido. Dicho complemento se puede instalar, siempre que todavía esté
en el directorio que mencionamos anteriormente, con

 $ sudo snap install ./hello*.snap

Tómese un tiempo para jugar con el archivo .yaml; hacer una copia para esto siempre es una buena idea; vea qué sucede si cambia algunas
variables allí y descubra cómo sus cambios influyen en la creación del complemento. Recuerda que siempre puedes distribuir tu complemento a
tus amigos o crear un repositorio para él. Una última nota:la sección 'fuente' en el .yaml tiene una URL como valor, pero también puede
tener un valor local, p. ./src/my_dep/ .

Últimas palabras

Apenas hemos arañado la superficie con los complementos, eso sí, ¡pero hay mucho que aprender y cosas geniales que hacer con los complementos! El interminable problema de tener software solo empaquetado como, por ejemplo, RPM y dar a los usuarios dolores de cabeza cuando es necesario en Debian, por
por ejemplo, parece haber terminado. Como siempre, te animamos a que juegues con las instantáneas, crea algunas y ¡no te olvides de compartirlas! ¡Diviértete!


Ubuntu
  1. Una introducción al uso de tcpdump en la línea de comandos de Linux

  2. Introducción a los comandos chgrp y newgrp de Linux

  3. Introducción al comando chmod de Linux

  4. Introducción al comando chown de Linux

  5. Introducción al comando de alternativas en Linux

Cylon-deb:el programa de mantenimiento de Debian Linux

Cómo enumerar el contenido de un paquete en Linux

Cómo administrar Snaps en Linux - Parte 2

Snap vs Flatpak vs AppImage:Conozca las diferencias | Cual es mejor

Cómo instalar Snap Package Manager en Rocky Linux 8

Cómo instalar Snap Package Manager en distribuciones de Linux