Tutoriales

Cómo instalar y usar Flatpak en Linux

En este tutorial, veremos qué es Flatpak, cómo instalar Flatpak en Linux y luego cómo usar la interfaz de usuario de la línea de comandos de Flatpak para instalar aplicaciones.

Introducción a Flatpak

Hay tantas distribuciones de Linux y aplicaciones de empaquetado para todas estas distribuciones de Linux que es una tarea difícil y que requiere mucho tiempo. Si bien existen muchos convertidores de paquetes, todos tienen problemas de funcionalidad y compatibilidad limitados.

Para resolver este problema, un formato de paquete de aplicación llamado Quebrar fue presentado por Canonical. Los snaps se desarrollaron originalmente para el sistema operativo Ubuntu, pero ahora están siendo adoptados por las principales distribuciones de Linux como Arch, Gentoo, Fedora, openSUSE, etc.

Un complemento es un paquete binario único que se incluye con todas las bibliotecas y dependencias necesarias. Puede instalarlo en cualquier distribución de Linux, independientemente de la versión y la arquitectura. ¡No es necesario que desarrolle una aplicación separada para cada distribución!

Similar a Snap, hay otra herramienta para formatear paquetes de aplicaciones llamada Flatpak. Flatpak es un sistema para crear, instalar y ejecutar aplicaciones y tiempos de ejecución en varias distribuciones de Linux.

Ahora puede crear una sola aplicación Flatpak e instalarla en diferentes versiones de Linux. No tiene que preocuparse por las bibliotecas y dependencias, todo está empaquetado en una sola aplicación.

Otra característica notable es que podemos instalar varias versiones de la misma aplicación en el sistema Linux al mismo tiempo. Por ejemplo, es posible instalar las versiones 2.1, 2.2 y 2.3 del reproductor VLC en el mismo sistema. Como desarrollador, puede probar diferentes versiones de una aplicación al mismo tiempo.

Flatpak fue desarrollado originalmente por Alex Larsson y posteriormente con el respaldo de Red Hat, Endless Computers y Collabora. Ahora es mantenido activamente por una comunidad independiente formada por contribuyentes, voluntarios y organizaciones de apoyo. El marco Flatpak está escrito en C. y lanzado bajo LGPL Licencia.

Condiciones

Cada aplicación Flatpak depende de un tiempo de ejecución para funcionar correctamente en un sistema host. Un tiempo de ejecución no es más que un conjunto de dependencias básicas (bibliotecas) requeridas por una aplicación.

Cuando instalamos una aplicación con el comando flatpak, se instala automáticamente un entorno de ejecución. Los tiempos de ejecución son independientes de la distribución, por lo que pueden funcionar en cualquier distribución de Linux. Varias aplicaciones pueden usar un solo tiempo de ejecución.

Actualmente hay tres términos principales disponibles: Freedesktop, GNOMO y DÓNDE. Todos estos están alojados en Buje plano Repositorio.

Bibliotecas empaquetadas

Los desarrolladores incluyen las bibliotecas que no están disponibles en un tiempo de ejecución. Las bibliotecas también pueden ser versiones de bibliotecas distintas de las que residen en un tiempo de ejecución y / o versiones parcheadas de bibliotecas.

Areneros

Una aplicación Flaptpak se crea y ejecuta en un entorno aislado llamado “caja de arena”. En otras palabras, las aplicaciones Flatpak están aisladas del resto del sistema operativo host y otras aplicaciones.

Cada sandbox contiene la aplicación y su tiempo de ejecución. De forma predeterminada, una aplicación Flatpak solo puede acceder al contenido de su caja de arena. El acceso a los archivos del usuario, la red, los gráficos y los dispositivos debe ser otorgado explícitamente por el usuario.

Repositorios

Todas las aplicaciones Flatpak y sus tiempos de ejecución se almacenan en una ubicación central llamada “Repositorios”. Buje plano es el repositorio oficial de todas las aplicaciones Flatpak. Podemos acceder e instalar las aplicaciones y los tiempos de ejecución a través de la interfaz de línea de comandos de flatpak.

Instalar Flatpak en Linux

Flatpak está disponible en los repositorios estándar de distribuciones populares de Linux como Arch Linux, Debian, Fedora, Gentoo, Red Hat, Linux Mint, openSUSE, Solus, Mageia y distribuciones de Ubuntu.

Cómo instalar Flatpak en Arch Linux y sus variantes como EndeavorOS y Manjaro Linux, Correr:

$ sudo pacman -S flatpak

Flatpak se encuentra en los repositorios estándar de. disponible Debian Buster y versiones más nuevas. Para instalar Flatpak en Debian, haga lo siguiente:

$ sudo apt install flatpak

Si está utilizando GNOME DE en Debian, instale el complemento Flatpak para el software GNOME con el siguiente comando:

$ sudo apt install gnome-software-plugin-flatpak

En FedoraFlatpak está instalado de forma predeterminada. Todo lo que tiene que hacer es habilitar Flathub, como se describe en la siguiente sección.

En caso de que no esté instalado por algún motivo, haga lo siguiente:

$ sudo dnf install flatpak

En RHEL 7, Correr:

$ sudo yum install flatpak

En CentOS 7Flatpak está instalado de forma predeterminada. ¡Así que no se requiere configuración!

De Linux Mint 18.3, flatpak está instalado de forma predeterminada. Por lo que no se requiere configuración.

En openSUSE Tumbleweed, Flatpak se puede instalar con Zypper:

$ sudo zypper install flatpak

En Ubuntu 18.10 (Cosmic Cuttlefish) y las versiones más recientes de Ubuntu instalan flatpak con este comando:

$ sudo apt install flatpak

Para versiones anteriores de Ubuntu, agregue el siguiente repositorio e instale Flatpak como se muestra a continuación.

$ sudo add-apt-repository ppa:alexlarsson/flatpak
$ sudo apt update
$ sudo apt install flatpak

El complemento Flatpak para la aplicación de software GNOME le permite instalar aplicaciones sin la línea de comandos. Para instalar este complemento, haga lo siguiente:

$ sudo apt install gnome-software-plugin-flatpak

En Sólo, instale Flatpak con el comando:

$ sudo eopkg install flatpak xdg-desktop-portal-gtk

En Mageia 6 y versiones más recientes puede instalar Flatpak con DNF:

$ sudo dnf install flatpak    

O instalar con urpmi, Como a continuación:

$ sudo urpmi flatpak

Pop! _OS 20/04 instaló Flatpak y configuró Flathub por defecto. Si está utilizando Pop! _OS 19.10 o versiones anteriores, haga lo siguiente:

$ sudo apt install flatpak

SO elemental 5.1 y las versiones más nuevas vienen con soporte Flatpak por defecto.

Para obtener información sobre otras distribuciones de Linux, consulte la instalación oficial atajo.

Una guía para principiantes de Flatpak

Hay muchas aplicaciones populares como Gimp, Kdenlive, Steam, Spotify y Visual Studio Code, etc. disponibles como flatpaks. Para instalar una aplicación Flatpak, primero debemos agregar repositorios Flatpak (o controles remotos).

1. Agrega repositorios remotos

Como ya se mencionó, las aplicaciones y los tiempos de ejecución se almacenan en un repositorio o de forma remota. El repositorio oficial de Flatpak es Buje plano.

Para habilitar el repositorio Flathub en Linux, simplemente ejecute este comando:

$ sudo flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo

Hay muchos otros repositorios Flatpak no oficiales por ahí. Haga una búsqueda rápida en la web para encontrarlos.

2. Lista de controles remotos

Para enumerar todos los repositorios remotos configurados, haga lo siguiente:

$ flatpak remotes

Salida de muestra:

Name    Options
flathub system

Como puede ver, el comando anterior enumerará los controles remotos que ha agregado a su sistema. También enumera si el control remoto se agregó por usuario o en todo el sistema. En mi caso, agregué el repositorio Flathub de todo el sistema.

3. Instale aplicaciones Flatpak

Esta sección explica cómo instalar aplicaciones Flatpak.

Para instalar una aplicación Flatpak, por ejemplo GNOME Boxes, haga lo siguiente:

$ flatpak install flathub org.gnome.Boxes

El comando anterior instala la aplicación en todo el sistema.

Si no desea instalar aplicaciones en todo el sistema, también puede instalar aplicaciones Flatpak por usuario como se describe a continuación.

$ flatpak install --user <name-of-app>

Todas las aplicaciones instaladas se guardan en $HOME/.var/app/ Localización.

$ ls $HOME/.var/app/
com.github.calo001.fondo com.github.tchx84.Flatseal org.gnome.Boxes

4. Ejecute aplicaciones Flatpak

Puede iniciar las aplicaciones instaladas en cualquier momento desde el iniciador de aplicaciones. Desde la línea de comandos puede ejecutarlo, por ejemplo, cajas de GNOME, con el comando:

$ flatpak run org.gnome.Boxes

Flatpak agrega los elementos del menú para todas las aplicaciones Flatpak. Entonces puede iniciar esto directamente desde el menú o desde el lanzador de aplicaciones.

5. Busque aplicaciones Flatpak

Para encontrar una aplicación:

$ flatpak search gimp

Salida de muestra:

Name                  Description                                                                                      Application ID               Version Branch Remotes
GNU Image Manipulati… Create images and edit photographs                                                               org.gimp.GIMP                2.10.20 stable flathub
GIMP User Manual      GIMP User Manual                                                                                 org.gimp.GIMP.Manual         2.10    2.10   flathub
Resynthesizer         Set of GIMP plug-ins that heal (in-paint), synthesize texture, theme an image, and more          …p.GIMP.Plugin.Resynthesizer 2.0.3   2-3.36 flathub
GimpLensfun           GimpLensfun is a Gimp plugin to correct lens distortion using the lensfun library and database.  org.gimp.GIMP.Plugin.Lensfun 0.2.4   2-3.36 flathub
Fourier               A simple GIMP plug-in to do fourier transform on your image.                                     org.gimp.GIMP.Plugin.Fourier 0.4.3   2-3.36 flathub
BIMP                  Batch Image Manipulation Program, a GIMP plugin to apply a set of manipulations to an entire gr… org.gimp.GIMP.Plugin.BIMP    2.4     2-3.36 flathub
LiquidRescale         LiquidRescale plugin to resize pictures non uniformly while preserving their features, i.e. avo… …p.GIMP.Plugin.LiquidRescale 0.7.2   2-3.36 flathub
G'MIC                 GREYC's Magic for Image Computing                                                                org.gimp.GIMP.Plugin.GMic    2.9.2   2-3.36 flathub
FocusBlur             Focus Blur plug-in crete a blurring effect similar to Depth of Field.                            ….gimp.GIMP.Plugin.FocusBlur 3.2.6   2-3.36 flathub
Glimpse               Create images and edit photographs                                                               org.glimpse_editor.Glimpse   0.2.0   stable flathub
Scans to PDF          Create small, searchable PDFs from scanned documents                                             com.github.unrud.djpdf       0.1.2   stable flathub

Este comando devolverá todas las aplicaciones que coincidan con la cadena “gimp” de todos los controles remotos.

6. Enumere las aplicaciones Flatpak instaladas localmente y los tiempos de ejecución que se ejecutan

Para ver todas las aplicaciones Flatpak instaladas y los tiempos de ejecución en su sistema, ejecute:

$ flatpak list

Salida de muestra:

Name                           Application ID                  Version Branch Installation
Fondo                          com.github.calo001.fondo        1.3.8   stable system
Flatseal                       com.github.tchx84.Flatseal      1.5.2   stable system
default                        …reedesktop.Platform.GL.default         19.08  system
Intel                          …eedesktop.Platform.VAAPI.Intel         19.08  system
openh264                       ….freedesktop.Platform.openh264 2.1.0   2.0    system
GNOME Boxes                    org.gnome.Boxes                 3.36.6  stable system
GNOME Application Platform ve… org.gnome.Platform                      3.36   system
Ambiance Gtk theme             org.gtk.Gtk3theme.Ambiance              3.22   system
Yaru-light Gtk Theme           org.gtk.Gtk3theme.Yaru-light            3.22   system

Si desea ver la lista de aplicaciones instaladas y tiempos de ejecución con tamaño instalado, usar -d Bandera.

$ flatpak list -d

Salida de muestra:

… … … Version Branch Arch   Origin  Installation Ref                                               Active commit Latest commit Installed size …
… … … 1.3.9   stable x86_64 flathub system       com.github.calo001.fondo/x86_64/stable            4755529773f0  -              89.3 MB       …
… … … 1.6.2   stable x86_64 flathub system       com.github.tchx84.Flatseal/x86_64/stable          4e1efc03269e  -               2.9 MB       …
…  …         19.08  x86_64 flathub system       org.freedesktop.Platform.GL.default/x86_64/19.08  f68c8e930d04  -             255.7 MB       …
…  …         19.08  x86_64 flathub system       org.freedesktop.Platform.VAAPI.Intel/x86_64/19.08 19fe8e74d641  -              37.0 MB       …
… … … 2.1.0   2.0    x86_64 flathub system       org.freedesktop.Platform.openh264/x86_64/2.0      73f998362a6f  -             778.2 kB       …
… … … 3.36.6  stable x86_64 flathub system       org.gnome.Boxes/x86_64/stable                     98c619ed7873  -             706.9 MB       …
… … …         3.36   x86_64 flathub system       org.gnome.Platform/x86_64/3.36                    d79ff93caf2d  -             934.6 MB       …
… … …         3.22   x86_64 flathub system       org.gtk.Gtk3theme.Ambiance/x86_64/3.22            73fed99df212  -              16.3 MB       …
… … …         3.22   x86_64 flathub system       org.gtk.Gtk3theme.Yaru-light/x86_64/3.22          2573259417d8  -             718.3 kB       …

Enumere solo los tiempos de ejecución con el comando:

$ flatpak list --runtime

Salida de muestra:

Name                           Application ID                  Version Branch Installation
Locale                         com.github.calo001.fondo.Locale         stable system
default                        …reedesktop.Platform.GL.default         19.08  system
Intel                          …eedesktop.Platform.VAAPI.Intel         19.08  system
openh264                       ….freedesktop.Platform.openh264 2.1.0   2.0    system
Locale                         org.gnome.Boxes.Locale                  stable system
GNOME Application Platform ve… org.gnome.Platform                      3.36   system
Ambiance Gtk theme             org.gtk.Gtk3theme.Ambiance              3.22   system
Yaru-light Gtk Theme           org.gtk.Gtk3theme.Yaru-light            3.22   system

Para mostrar solo las aplicaciones y no los tiempos de ejecución, use este comando en su lugar.

$ flatpak list --app

Salida de muestra:

Name             Application ID                  Version      Branch      Installation
Fondo            com.github.calo001.fondo        1.3.8        stable      system
Flatseal         com.github.tchx84.Flatseal      1.5.2        stable      system
GNOME Boxes      org.gnome.Boxes                 3.36.6       stable      system

7. Enumere las aplicaciones remotas y los tiempos de ejecución.

También puede ver la lista de aplicaciones y tiempos de ejecución disponibles desde los repositorios remotos.

Para enumerar aplicaciones y tiempos de ejecución de todos los controles remotos con el comando:

$ flatpak remote-ls

Enumere solo los tiempos de ejecución:

$ flatpak remote-ls --runtime

Enumere solo las aplicaciones:

$ flatpak remote-ls --app

Por ejemplo, enumere aplicaciones y tiempos de ejecución de un repositorio específico Buje plano, Correr:

$ flatpak remote-ls flathub

Para enumerar solo las aplicaciones de un repositorio remoto, haga lo siguiente:

$ flatpak remote-ls flathub --app

8. Actualiza las aplicaciones Flatpak

Para actualizar todas sus aplicaciones Flatpak, haga lo siguiente:

$ flatpak update

Para actualizar una aplicación específica hacemos lo siguiente:

$ flatpak update org.gnome.Boxes

9. Ver detalles de una aplicación Flatpak

Para ver los detalles de una aplicación instalada, haga lo siguiente:

$ flatpak info org.gnome.Boxes

Salida de muestra:

GNOME Boxes - Simple remote and virtual machines

          ID: org.gnome.Boxes
         Ref: app/org.gnome.Boxes/x86_64/stable
        Arch: x86_64
      Branch: stable
     Version: 3.36.6
     License: LGPL-2.1+
      Origin: flathub
  Collection: org.flathub.Stable
Installation: system
   Installed: 706.9 MB
     Runtime: org.gnome.Platform/x86_64/3.36
         Sdk: org.gnome.Sdk/x86_64/3.36

      Commit: 98c619ed78736e85433bcbecd5c4392ad30d4890a71ddc909f5b4c51dfcde340
      Parent: 72ec972e0ce7fdf640f478d406a8acad5f90ebd1f8c0ac330baa7ed3dd5ccd70
     Subject: Build vte from git master (a8cf05d9)
        Date: 2020-09-02 10:02:20 +0000

10. Desinstale las aplicaciones Flatpak

Para eliminar una aplicación Flatpak, haga lo siguiente:

$ sudo flatpak uninstall org.gnome.Boxes

11. Eliminar repositorios remotos

Para quitar un control remoto, por ejemplo Flathub:

$ sudo flatpak remote-delete flathub

Aquí, Buje plano es el nombre del mando a distancia.

12. Eliminar tiempos de ejecución no utilizados

Una vez que haya eliminado todas las aplicaciones que dependen de un tiempo de ejecución en particular, el tiempo de ejecución en sí no se elimina automáticamente.

Para eliminar los tiempos de ejecución y las extensiones que no utilizan las aplicaciones instaladas, haga lo siguiente:

$ flatpak uninstall --unused

13. Eliminar la caché de flatpak

Cómo eliminar el caché de Flatpak sobrante en el tmp Colocar, correr:

$ sudo bash -c "! pgrep -x flatpak && rm -r /var/tmp/flatpak-cache-*"

Si utiliza systemd Como administrador del sistema estándar, puede automatizar la tarea de limpiar la caché residual de Flatpak como se describe a continuación.

Crea un archivo de servicio llamado clear_flatpak_cache.service en el /lib/systemd/system/ Directorio con el siguiente contenido:

[Unit]
Description=Flatpak cache cleaner

[Service]
ExecStart=bash -c "! pgrep -x flatpak && rm -r /var/tmp/flatpak-cache-*"

[Install]
WantedBy=multi-user.target

Inicie y active este servicio al arrancar:

$ sudo systemctl enable --now clear_flatpak_cache

A partir de ahora, los archivos de caché de Flatpak sobrantes se eliminarán al inicio.

14. Reparar la instalación de Flatpak

Podemos reparar una instalación de Flatpak recortando y reinstalando objetos no válidos.

Para hacer esto, haga lo siguiente:

$ flatpak repair

También puede realizar reparaciones por usuario y por sistema con --user y --system Banderas.

Reparación de la instalación por usuario:

$ flatpak repair --user

Reparación por instalación del sistema:

$ flatpak repair --system

15. Ver el historial de Flatpak

Es posible que haya instalado, actualizado o eliminado algunas aplicaciones. Todas las transacciones de flatpak son registradas por flatpak.

Puede consultar estos registros para averiguar qué cambios se han realizado en su instalación de Flatpak a lo largo del tiempo.

$ flatpak history

16. Visualice el área de ayuda de Flatpak

Para obtener ayuda de Flatpak, haga lo siguiente:

$ flatpak --help

Este comando muestra la lista de todas las opciones y subcomandos de Flatpak disponibles con una breve descripción.

Conclusión

Este tutorial de Flatpak le dio una breve introducción a Flatpak y las tecnologías subyacentes utilizadas en Flatpak, como tiempos de ejecución, controles remotos, bibliotecas empaquetadas y sandboxes, etc. Y luego también explicó cómo instalar y usar Flatpak en distribuciones de Linux.

Recursos:

Publicaciones relacionadas

Deja una respuesta

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

Botón volver arriba