¿Las aplicaciones de Flatpak parecen fuera de lugar? Aquí se explica cómo aplicar temas GTK en aplicaciones Flatpak

Una de las razones por las que algunos usuarios evitan instalar aplicaciones Flatpak es que la mayoría de las aplicaciones Flatpak no cambian su apariencia según el tema del sistema actual. Esto hace que las aplicaciones se vean fuera de lugar en su hermosa configuración.

Las aplicaciones de Flatpak no coinciden con el tema del sistema

La forma oficial de aplicar temas GTK a las aplicaciones Flatpak es mediante instalando el tema deseado como flatpak. Sin embargo, solo hay unos pocos temas GTK que se pueden instalar como Flatpak.

Esto significa que si encontró un hermoso tema GTK, sus aplicaciones Flatpak seguirán usando su apariencia predeterminada. ¡Pero espera! Hay una solución.

En este tutorial, les presentaré una forma de hacer que las aplicaciones flatpak sean conscientes de los temas GTK externos.

Aplicación de temas GTK a aplicaciones Flatpak (nivel intermedio)

Antes de continuar, comprendamos por qué las aplicaciones flatpak tienen este comportamiento.

Las aplicaciones de Flatpak se ejecutan dentro de un “contenedor”, por lo que no tienen acceso al sistema de archivos del host, la red o los dispositivos físicos sin establecer explícitamente el permiso adecuado, y eso es lo que vamos a hacer.

Como dije antes, esta es una solución alternativa, no una solución perfecta. No espere que cambie los temas de las aplicaciones de Flatpak automáticamente cuando cambie el tema del sistema. Sin embargo, puede cambiarlo para todas las aplicaciones de Flatpak con un solo comando.

Veamos cómo lograrlo. Tenga en cuenta que este tutorial requiere que esté un poco familiarizado con la línea de comandos de Linux y que pueda orientarse en la terminal.

Paso 1: Dar acceso a las aplicaciones Flatpak a la ubicación de los temas GTK

Los temas GTK se encuentran en /usr/share/themes para todos los usuarios y en ~/.themes para un usuario específico.

Para dar permiso a todos los paquetes flatpak para acceder a ~/.themes ejecute el siguiente comando:

sudo flatpak override --filesystem=$HOME/.themes

Tenga en cuenta que no puede dar acceso a /usr/share/themes porque según documentación flatpak están en la lista negra.

Alternativamente, también puede hacer esto en la base por aplicación. Debe especificar el ID de la aplicación para el que va a cambiar el tema.

sudo flatpak override org.gnome.Calculator --filesystem=$HOME/.themes

Paso 2: Dile a las aplicaciones de Flatpak qué tema usar

Dar acceso a ~/.themes no es suficiente porque este directorio puede contener varios temas. Para decirle a flatpak qué tema GTK usar, primero obtenga el nombre del tema deseado y luego aplique el siguiente comando:

sudo flatpak override --env=GTK_THEME=my-theme 

Como puede ver en la captura de pantalla a continuación, hay dos temas disponibles, Ant-Bloody y Orchis-dark. Copie y pegue el nombre exacto del tema en el comando anterior:

Establecer temas GTK para todas las aplicaciones de Flatpak

Alternativamente, para una aplicación individual, ejecute:

sudo flatpak override org.gnome.Calculator --env=GTK_THEME=my-theme 

y reemplace my-theme con el nombre de la carpeta del tema que desea aplicar (y debe estar ubicado en ~/.themes).

Paso 3: Pruebe el cambio de tema ejecutando una aplicación Flatpak

Si la aplicación ya se estaba ejecutando, deberá close y empezar de nuevo. Verá que la aplicación recién iniciada utiliza el tema que había especificado anteriormente.

Aquí hay una captura de pantalla de la calculadora GNOME y el generador GNOME (versión Flatpak) antes de los pasos anteriores:

Aplicaciones Flatpak con el tema Adwaita predeterminado

Y después de los pasos anteriores (Con tema Canta GTK):

Aplicaciones Flatpak con tema Canta Dark

Eso es mejor, ¿verdad? Ahora, podría dejarlos aquí, pero sería apropiado mencionar los pasos para revertir los cambios.

Revertir los cambios

Puede restablecer los cambios restableciendo todas las anulaciones a la vez. Tenga en cuenta que esto restablecerá cualquier anulación anterior que haya establecido explícitamente.

sudo flatpak override --reset

Alternativamente, también puede restablecer los permisos a nivel de paquete:

sudo flatpak override --reset org.example.app

Si anteriormente anuló el GTK_THEME o el sistema de archivos para un paquete Flatpak específico utilizando el restablecimiento de “anulación de flatpak”, lo ayudará a configurarlo nuevamente.

Información adicional

Las aplicaciones GTK normales cargan el tema GTK especificado por gsettings, puede ejecutar el siguiente comando para obtener los temas GTK aplicados actualmente:

gsettings get org.gnome.desktop.interface gtk-theme

Y para configurar el tema GTK, ejecute:

gsettings set org.gnome.desktop.interface gtk-theme my-theme

Para hacer lo anterior con Flatpak, debe ingresar una sesión de shell dentro del contenedor de la aplicación deseada ejecutando:

flatpak run --command=bash org.gnome.Calculator 

Y dentro de esta sesión, ejecute el comando anterior:

gsettings set org.gnome.desktop.interface gtk-theme my-theme

Pero eso no funcionó conmigo, así que recurrí a usar la variable de entorno GTK_THEME, que se supone que se usa con fines de depuración. Si lograste hacer que gsettings funcionara, cuéntamelo en los comentarios.

Sé que no es una solución automatizada, pero al menos te da la opción de cambiar los temas de las aplicaciones de Flatpak con un par de comandos. De esta manera, puede hacer que la aplicación Flatpak se integre con el resto del sistema.

espero que esto te ayude. Si tiene algún problema, menciónelo en los comentarios.

Información del autor: Este artículo ha sido contribuido por el lector de It’s FOSS Hamza Algohary y editado por Abhishek Prakash. Hamza es estudiante de ingeniería informática y entusiasta de Linux y del código abierto. También desarrolla aplicaciones para escritorio Linux. Puedes encontrar su trabajo en su perfil de GitHub.


Related Posts