GNU/Linux >> Tutoriales Linux >  >> Fedora

Cómo instalar y usar complementos en Fedora

Desarrollado por Canonical, la compañía detrás de Ubuntu, y originalmente destinado a ser utilizado en este último, el administrador de paquetes Snappy es un software gratuito y de código abierto que se utiliza para instalar y administrar paquetes instantáneos. El propósito de los paquetes Snap, al igual que los flatpaks, es distribuir aplicaciones aisladas y autónomas (las aplicaciones se empaquetan junto con sus dependencias).

El administrador de paquetes Snappy y su infraestructura aterrizaron en distribuciones distintas de Ubuntu. En este tutorial vemos cómo instalarlo y usarlo en la última versión de Fedora.

En este tutorial aprenderás:

  • Cómo instalar el administrador de paquetes instantáneos
  • Cómo buscar paquetes en la tienda instantánea
  • Cómo instalar y actualizar paquetes instantáneos
  • Cómo enumerar los paquetes instantáneos instalados
  • Cómo crear y administrar instantáneas de un paquete
  • Cómo eliminar paquetes instantáneos

Requisitos de software y convenciones utilizadas

Instalación

Para usar el administrador de paquetes Snappy en Fedora, lo primero que debemos hacer es instalar el paquete que contiene el software. Por suerte para nosotros, es algo muy fácil de hacer, ya que está disponible en los repositorios oficiales de Fedora. Podemos realizar la instalación de forma gráfica o mediante el dnf administrador de paquetes de nuestro amado emulador de terminal. Aquí está el comando que queremos ejecutar:

$ sudo dnf install snapd

El snap-confine y snapd-selinux se instalan como dependencias de snapd:el primero contiene el software utilizado para aplicar el confinamiento a las aplicaciones snap, mientras que el último proporciona la política que permite que snapd se ejecute correctamente en SELinux. Como parte de la instalación, el snapd.socket se habilita usando systemd.

Buscando paquetes

La forma en que interactuamos con los paquetes instantáneos es usando el snap solicitud. Una de las acciones más básicas que debemos realizar es encontrar si una pieza específica de software está disponible en la tienda instantánea. Para realizar esta acción, podemos usar el comando instantáneo "buscar" o "buscar" (este último es un alias para el primero). Supongamos que queremos instalar el paquete de complemento "gimp". Para ver si la aplicación está disponible podemos ejecutar:

$ snap find gimp

Como puede ver, el comando no requiere privilegios administrativos. Devuelve el siguiente resultado:

Name                    Version  Publisher        Notes  Summary                                    
gimp                    2.10.28  snapcrafters     -      GNU Image Manipulation Program             
gutenprint-printer-app  1.0      openprinting✓    -      Gutenprint Printer Application             
photogimp               2.10.20  pedro.ermarinho  -      Patch para o GIMP                          
djpdf                   0.1.6    unrud            -      Create small, searchable PDFs from scanned documents                                                                                           
lazpaint                7.1.6    chronoscz        -      Image editor with raster and vector layers.

Se devuelve información sobre los paquetes disponibles que coinciden con nuestros criterios de búsqueda:

  • El nombre del paquete
  • La versión del paquete instantáneo
  • El editor instantáneo
  • Notas eventuales sobre el paquete
  • Una breve descripción del paquete

Instalación de paquetes instantáneos

Para instalar un paquete instantáneo, todo lo que tenemos que hacer es usar el comando “instalar” instantáneo. Solo como ejemplo, supongamos que queremos instalar el gimp aplicación que buscamos en el paso anterior. Este es el comando que ejecutaríamos:

$ sudo snap install gimp

De forma predeterminada, si no se especifica lo contrario, los paquetes se instalan desde el canal "estable". Una vez que ejecutamos el comando anterior, podemos seguir el progreso de la instalación leyendo el resultado de la terminal:

2022-03-29T14:25:15+02:00 INFO Waiting for automatic snapd restart...
gimp 2.10.28 from Snapcrafters installed

Las versiones recientes de las instantáneas admiten el modo de "confinamiento clásico". Cuando se instala un paquete instantáneo en este modo, en realidad no confinado, por lo que puede acceder a los recursos en el sistema host. Si queremos instalar un paquete en este modo, debemos ejecutar el comando "instalar" con el --classic opción.

El archivo relativo a los paquetes instantáneos y sus dependencias se implementan en el sistema utilizando SquashFS de solo lectura, en forma de dispositivos de bucle, que se montan en los directorios correspondientes en /var/lib/snapd . Podemos ver esto claramente echando un vistazo a la salida de lsblk comando:

$ lsblk
NAME                   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
loop0                    7:0    0  43.6M  1 loop /var/lib/snapd/snap/snapd/15177
loop1                    7:1    0  55.5M  1 loop /var/lib/snapd/snap/core18/2344
loop2                    7:2    0     4K  1 loop /var/lib/snapd/snap/bare/5
loop3                    7:3    0  65.2M  1 loop /var/lib/snapd/snap/gtk-common-themes/1519
loop4                    7:4    0 164.8M  1 loop /var/lib/snapd/snap/gnome-3-28-1804/161
loop5                    7:5    0 391.3M  1 loop /var/lib/snapd/snap/gimp/383

Existe un dispositivo de bloque de bucle para cada paquete instantáneo instalado. En el caso del complemento “gimp”, si comprobamos el contenido del /var/lib/snapd/snap/gimp/383 mountpoint (383 es ​​la revisión del paquete snap; se pueden instalar varias revisiones al mismo tiempo), podemos ver un árbol completo del sistema de archivos que aloja los archivos de la aplicación:

$ ls /var/lib/snapd/snap/gimp/383
bin data-dir etc lib meta sbin snap usr var

Para poder iniciar la aplicación tal como lo haríamos después de la instalación de un paquete nativo del sistema, el /var/lib/snapd/snap/bin el directorio debe agregarse a nuestro PATH . Esto debe hacerse automáticamente como parte de la instalación de snapd. Podemos comprobarlo, comprobando el valor de la variable:

$ echo $PATH
/home/egdoc/.local/bin:/home/egdoc/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/var/lib/snapd/snap/bin

Actualización de un paquete

Pueden coexistir varias revisiones de un paquete instantáneo al mismo tiempo. Vimos brevemente cómo la revisión actualmente instalada del paquete gimp snap es 383. La versión activa actual está vinculada a /var/lib/snapd/snap/<package>/current . En el caso de gimp:

$ ls -l /var/lib/snapd/snap/gimp
drwxr-xr-x. 11 root root 146 Nov 8 17:14 383
lrwxrwxrwx. 1 root root 3 Mar 29 14:27 current -> 383

Para verificar si hay disponible una nueva revisión de un paquete instantáneo y actualizarlo, podemos usar refresh dominio. En este caso, si intentamos actualizar el paquete gimp, se nos notifica que no hay actualizaciones disponibles:

$ sudo snap refresh gimp
snap "gimp" has no updates available

Si usamos el refresh comando sin especificar un nombre de paquete como argumento, la aplicación buscará actualizaciones para todos los paquetes instantáneos instalados en el sistema.

Lista de paquetes instantáneos instalados

Para obtener un informe sobre los paquetes instantáneos instalados actualmente, todo lo que tenemos que hacer es usar el comando "listar" de la utilidad instantánea. Veamos un ejemplo del comando en acción:

$ snap list
Name               Version                     Rev    Tracking       Publisher     Notes
bare               1.0                         5      latest/stable  canonical✓    base
core18             20220309                    2344   latest/stable  canonical✓    base
gimp               2.10.28                     383    latest/stable  snapcrafters  -
gnome-3-28-1804    3.28.0-19-g98f9e67.98f9e67  161    latest/stable  canonical✓    -
gtk-common-themes  0.1-59-g7bca6ae             1519   latest/stable  canonical✓    -
snapd              2.54.4                      15177  latest/stable  canonical✓    snapd

Instalamos explícitamente "gimp", por lo que todos los demás paquetes se instalaron como dependencias o como el "núcleo" de la infraestructura instantánea. Una marca después del nombre del editor del paquete significa que se ha verificado.

Creación y administración de instantáneas de paquetes

Una buena característica del ecosistema de paquetes instantáneos es la capacidad de crear instantáneas del sistema, el usuario y los datos de configuración asociados con un paquete. Las instantáneas se crean automáticamente cuando se elimina un paquete de instantáneas, pero también se pueden crear manualmente con save dominio. Para crear una instantánea del paquete "gimp", por ejemplo, ejecutaríamos:

$ sudo snap save gimp

Si no proporcionamos un nombre de paquete como argumento para el comando de guardar, se crean instantáneas para todo el paquete existente. Para obtener una lista de las instantáneas existentes en el sistema, podemos usar el saved comando:

$ sudo snap saved
Set  Snap             Age    Version                     Rev  Size    Notes
1    gimp             20.0m  2.10.28                     383   134kB  auto
3    gnome-3-28-1804  10.4m  3.28.0-19-g98f9e67.98f9e67  161    124B  -

En la salida del comando podemos ver información muy útil como la instantánea id y su edad . Para restaurar una instantánea usamos restore comando, y hacemos referencia a la instantánea que queremos restaurar por su id. Para restaurar la instantánea de gimp que vemos en la salida del ejemplo anterior, ejecutaríamos:

$ sudo snap restore 1
Restored snapshot #1.

Finalmente, para eliminar manualmente una instantánea existente, usamos el forget dominio. Esto es lo que ejecutaríamos para eliminar la instantánea de gimp:

$ sudo snap forget 1
Snapshot #1 forgotten.

Eliminar paquetes instantáneos

Intuitivamente, para eliminar un paquete de complemento instalado previamente, debemos usar el remove dominio. Por defecto, un paquete se elimina con todas sus revisiones instaladas. Si queremos eliminar una revisión específica de un paquete, debemos pasarla como argumento a --revision opción. Al especificar una revisión, para que se elimine, no debe ser la "activa", por lo que si intenta usar la opción cuando solo hay una versión de un paquete instantáneo, el comando fallará. Supongamos que queremos eliminar el paquete "gimp" que instalamos en este tutorial, por ejemplo, ejecutaríamos:

$ sudo snap remove gimp

O, en caso de que exista más de una revisión:

$ sudo snap remove gimp --revision 383

Las instantáneas del paquete instantáneo no se eliminan cuando eliminamos el paquete (en realidad, se crea una instantánea cuando se elimina el paquete). Para forzar su eliminación, podemos pasar el --purge opción para remove dominio. Para eliminar "gimp" con todas las instantáneas asociadas, por ejemplo, ejecutaríamos:

$ sudo snap remove --purge gimp

Conclusión

En este tutorial aprendimos a usar paquetes instantáneos en Fedora. El ecosistema de paquetes instantáneos fue desarrollado originalmente por Canonical para Ubuntu, pero luego también estuvo disponible en otras distribuciones. Aprendimos cómo buscar, instalar, actualizar y desinstalar paquetes instantáneos en Fedora y cómo administrar las instantáneas de los paquetes instantáneos. Aunque los paquetes instantáneos funcionan en Fedora, la tecnología predeterminada para las aplicaciones autónomas utilizadas en la distribución es flatpak:si desea obtener más información y aprender a usarla, puede consultar nuestro tutorial sobre el tema.


Fedora
  1. Cómo instalar y usar Snap Package Manager en Ubuntu 20.04

  2. Cómo instalar y usar Snap Package Manager en Alma Linux 8

  3. Cómo instalar y configurar Redis 6 en Fedora 34

  4. Cómo instalar y configurar Ansible en Fedora 35

  5. Cómo instalar Python 2 y Python 3 en Fedora 35

Cómo instalar Snap &Snap-Store (Snapcraft) en Fedora 35

Cómo instalar y usar Telnet en Fedora 35

Cómo instalar Snap en Fedora 35

Cómo instalar Go en Fedora 35

Cómo instalar y usar Snapcraft en Linux

Cómo instalar y usar Snapd en Debian 11

    Requisitos de software y convenciones de la línea de comandos de Linux
    Categoría Requisitos, convenciones o versión de software utilizada
    Sistema Independiente de la distribución
    Software snapd
    Otro Privilegios de raíz para administrar el software
    Convenciones #:requiere que los comandos de Linux dados se ejecuten con privilegios de root, ya sea directamente como usuario root o mediante el uso de sudo comando
    $:requiere que los comandos de Linux dados se ejecuten como un usuario normal sin privilegios