Flatpak

Flatpak

Flatpak (se pronuncia como «flapac») es una tecnología de empaquetamiento de aplicaciones. Esa tecnología soluciona el problema principal para mantener actualizados los programas y sus librerías. Funciona en varios entornos de escritorio Linux. Además, los archivos son almacendos en contenedores listos para ejecutar, actualizar y gestionar recursos del sistema de forma independiente.

Flatpak nació en 2014 y forma parte del desarrollo de freedesktop.org. Además tiene una tienda llamada Flathub donde distribuye el software.

Diferencias de Flatpak a deb

  • Las aplicaciones actúan de forma independiente.
  • El contenido se actualiza a la versión más reciente posible.
  • Opción para instalar versiones anteriores. Sin generar problemas de dependencias.
  • Basta con un simple intérprete para la interfaz de usuario.
  • Limitación: Llegaría a pesar un poco más que el paquete deb.

Formas de implementar Flatpak en Deepin

Existen varias formas de usar la tecnología Flatpak en Deepin.

Instalación manual

  1. Primero instala el software flatpak.
  2. Añada el repositorio:
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
  1. Después instale los temas de Deepin para su integración:
flatpak install flathub org.gtk.Gtk3theme.deepin
flatpak install flathub org.gtk.Gtk3theme.deepin-dark
  1. Ahora puedes tener el catálogo para que instales algún programa que necesites. Para terminar, intenta instalar una tienda de aplicaciones para reemplazar con la terminal (cuyo procedimiento se ejemplifica en el paso 3). También puedes recurrir a la ayuda de Bauh.
  2. Opcionalmente, puedes añadir el repositorio KDE para obtener aplicaciones de esa suite, lo que es una alternativa en caso que las apps no cubran todas las necesidades (ya que el repositorio original Flathub no suele tener aplicaciones en desarrollo).
flatpak remote-add --if-not-exists kde https://distribute.kde.org/kdeapps.flatpakrepo
  1. Por último, y también opcional, para hacerlo más accesible para los usuarios que no dominan la interfaz y recurrir como alternativa a las características descritas en esta página, puedes instalar Warehouse. Solo basta ejecutar este comando.
flatpak install flathub io.github.flattool.Warehouse

Fuente: Sitio web, Snapshots KDE

Añadir repositorio «user»

Adicionalmente y para no cargar el espacio de la partición root, y así poder conservar al reinstalar el sistema, exista la posibilidad de usar el repositorio «user». Los datos del programa solo se conservan en la carpeta Home del usuario.

flatpak remote-add --if-not-exists --user flathub https://flathub.org/repo/flathub.flatpakrepo

Posteriormente, cuando se instala una aplicación se añade un paso adicional con dos opciones: para el sistema o para el usuario.

Opciones de Flatpak, user y system

Fuente: Repositorio de Github

Instalar todos los paquetes

Bajo tu propio riesgo, puedes instalar una suite de varias aplicaciones para tu PC. Este requerirá 100 GB de espacio libre disponible pero cubre herramientas de ofimática, ciencia, juegos, geografía, economía, diseño gráfico y accesibilidad. Además, incluye Bottles para potenciar el intérprete Wine (y ejecutar apps para Windows). Puedes consultar cada id de la aplicación e ir descartando lo que no necesitas. A continuación, el siguiente código:

flatpak install flathub app.drey.Elastic app.organicmaps.desktop ch.openboard.OpenBoard ch.theologeek.Manuskript com.bitwarden.desktop com.calibre_ebook.calibre com.cuperino.qprompt com.feaneron.Boatswain com.github.debauchee.barrier com.github.hluk.copyq com.github.huluti.Curtail com.github.k4zmu2a.spacecadetpinball com.github.marinm.songrec com.github.paolostivanin.OTPClient com.github.qarmin.czkawka com.github.tchx84.Flatseal com.github.wwmm.easyeffects com.github.xournalpp.xournalpp com.gitlab.davem.ClamTk com.neatdecisions.Detwinner com.play0ad.zeroad com.rafaelmardojai.Blanket com.sweethome3d.Sweethome3d com.usebottles.bottles de.haeckerfelix.Shortwave dev.bsnes.bsnes dev.lasheen.qr fr.free.Homebank fr.handbrake.ghb info.febvre.Komikku io.crow_translate.CrowTranslate io.freetubeapp.FreeTube io.gdevelop.ide io.github.Bavarder.Bavarder io.github.OpenToonz io.github.Qalculate.qalculate-qt io.github.antimicrox.antimicrox io.sourceforge.pysolfc.PySolFC io.webtorrent.WebTorrent me.hyliu.fluentreader me.sanchezrodriguez.passes net.ankiweb.Anki net.mkiol.SpeechNote net.sf.nootka net.sourceforge.Hugin net.sourceforge.Klavaro org.DolphinEmu.dolphin-emu org.ardour.Ardour org.bleachbit.BleachBit org.blender.Blender org.freecadweb.FreeCAD org.freeciv.gtk322 org.freeplane.App org.geogebra.GeoGebra org.gimp.GIMP org.gnome.DejaDup org.gnome.Mahjongg org.gnome.Mines org.gnome.OCRFeeder org.gnome.glabels-3 org.gnu.pspp org.gpodder.gpodder org.gtkhash.gtkhash org.inkscape.Inkscape org.jamovi.jamovi org.kde.filelight org.kde.itinerary org.kde.kdenlive org.kde.kexi-stable org.kde.kleopatra org.kde.kmplot org.kde.knights org.kde.krita org.kde.marble org.kde.minuet org.kde.subtitlecomposer org.keepassxc.KeePassXC org.kiwix.desktop org.libreoffice.LibreOffice org.mamedev.MAME org.mixxx.Mixxx org.mozilla.Thunderbird org.musescore.MuseScore org.openstreetmap.josm org.openttd.OpenTTD org.qbittorrent.qBittorrent org.stellarium.Stellarium org.telegram.desktop org.thonny.Thonny org.wesnoth.Wesnoth org.zotero.Zotero page.codeberg.Imaginer.Imaginer page.codeberg.JakobDev.jdFlatpakSnapshot tv.kodi.Kodi
flatpak install kde org.kde.kdeconnect

Paquete híbrido Deb

Nota: Esta sección se conserva con fines históricos

  • Fue una propuesta para que el software sea actualizable en un clic. Ideal para todos.
  • Vino incluido en las aplicaciones originales de Deepin (versión 15.11).
  • Ahora ya no está disponible en la versión 20 (parte de ellos estuvieron en Deepin Store para facilitar la gestión).

Detalles adicionales

Estos detalles extras pueden ser útiles para encontrar y solucionar eventualidades:

Datos

La información como el perfil de usuario se almacena en ~/.var/app/ (no confundir con el directorio var, porque no se almacena allí). Se puede respaldar las aplicaciones a excepcion de la subcarpeta en /*/cache/ (el asterisco es la id del programa instalado). Como referencia, la carpeta donde está las tarjetas y los avances de Anki se ubica en ~/.var/app/net.ankiweb.Anki/data.

Otros datos relacionados al funcionamiento de los ejecutables, por ejemplo, se almacenan en ~/.local/share/flatpak/. Este suele recurrirse si se instala una aplicación solo para el usuario (en lugar del sistema).

Carpeta Flatpak
Ejecutables y datos del sistema en la carpeta Flatpak desde /.local/share.
Aviso importante para quienes desean reemplazar aplis en este nuevo formato

Si vas a reemplazar de una aplicación instalada de Deepin Store con la forma tradicional (.deb) a otra instalada de Flathub (su repositorio) en una nueva instanacia, ya sea para conseguir la versión más reciente, considera realizar esta migración primero para no perder tus datos.
Si no estás dispuesto a ello, puedes recurrir al comando flatpak --filesystem=$HOME run nombredelaapp, en que nombredelaapp viene a ser la identificación para el programa.

Caché

La caché corresponde a los archivos temporales que conserva para ejecutar. Si deseas refrescar en aplicaciones más recientes, intenta este comando:

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

Tienda de aplicaciones

Souk es una tienda de aplicaciones que facilita la instalación de software de Flathub. Ideal para instalar aplicaciones en un clic.

Sistema de permisos

Además, los programas instalados se sujetan al control de determinados permisos. Gráficamente se utiliza Flatseal para ajustarlos.

En caso de que sea necesario, puedes reiniciar los permisos de cada aplicación con:

flatpak permission-reset [id de la aplicación]

Dependencias

Cuando se instala las aplicaciones, se mostrará las librerías que se incluirán durante su proceso. Esto suele mostrar el intérprete (runtime), los archivos de idioma y otra característica necesaria. Si hay una versión previamente incluida, se omitirá automáticamente. Las librerías no son paquetes deb y por tanto, deberás desinstalar por separado por la terminal o un gestor gráfico.

Dependencias de Flatpak

Caso Nvidia

Debido a que las aplicaciones están aisladas en su propio entorno, su integración con tarjetas de vídeo depende de sus controladores instalados via Flatpak. El caso de Nvidia, si has descargado juegos, procura instalar una versión similar al controlador privativo instalado nativamente. No debes confundir con la guía para instalar en el propio sistema, pues este aplica para todo lo instalado por Flatpak.

  • Desde la terminal, revisa las versiones disponibles con flatpak remote-ls flathub | grep nvidia
  • Para proceder con la instalación ejecuta el comando flatpak install flathub org.freedesktop.Platform.{GL,GL32}.nvidia-MAJORVERSION-MINORVERSION (reemplaza los valores MAJORVERSION y MINORVERSION según el caso). Este comando aplicará a las versiones de 32 y 64 bits.
  • Al ser un proceso que instala componentes del sistema, se realizará con permisos de administrador. Así que recomendamos respaldar el equipo.
  • Verifica si el driver de Nvidia en Flatpak coincide con la instalada en el sistema con flatpak --gl-drivers.
  • Para cualquier consulta, revisa el repositorio del paquete en Github. Ten en cuenta que solo alberga el código fuente de la instalación y no el controlador en sí.

Fuente: AskUbuntu, LinuxSpring, TingPing

Caso Wine

Para los intérpretes de aplicaciones de Windows, Wine ofrece también su propio software para esa plataforma.

Fuente: Foro de Wine

Lista de aplicaciones instaladas

Para conocer que software se instaló, ejecuta el comando flatpak list.

En caso que deseas hacer un listado para compartir las aplicaciones a instalar en poco tiempo, ejecuta flatpak list --app --columns=application. Puedes podrás añadir como prefijo flatpak install flathub...

Más allá de ejecutarlo, puedes aprovechar en convertir en un archivo de texto sin saltos de reglón. Solo consta de flatpak list --app --columns=application | xargs echo -n > installed_flatpaks.txt

Fuente: Aporte de Github

Desinstalar aplicaciones sin uso

Existe un método para desinstalar aplicaciones que no están en uso para ahorrar memoria como:

flatpak uninstall --unused

Reparar datos daños de instalación

En caso que las instalaciones estén incompletas, lo que podrían no ejecutar las aplicaciones correctamente, puedes ejecutar el comando repair:

flatpak repair

Migrar y exportar datos de aplicación

Es posible migrar aplicación deb a Flatpak o Snap sin perder ajustes guardados. Además que puedes importar o exportar los datos de la aplicación para clonar en otros programas Flatpak, incluso en otras computadoras, por medio de Package Transporter.

Lectura adicional

¿Recomendarías este artículo?

Anterior

M3U

Siguiente

GRUB