Flatseal: controla los permisos de tus apps Flatpak

Si utilizas con regularidad aplicaciones Flatpak seguramente ya sepas que muchas de estas aplicaciones vienen por seguridad limitadas para que no tengan acceso más allá de donde realmente les haga falta. De este modo, si una aplicación todo lo que va a hacer es mostrar una página web dentro de algún tipo de ventana Electron, no habría por qué darle permisos para acceder a la carpeta personal (como mucho a la carpeta de descargas) o a los dispositivos de hardware como webcams o micrófonos.

Sin embargo, en algunas ocasiones nos podemos encontrar con aplicaciones que tienen más o menos permisos de lo que consideramos aceptable. ¿Por qué una aplicación de reloj debería tener acceso a internet? O por el lado contrario, si una aplicación de telecomunicaciones no tiene acceso por defecto a la webcam y al micrófono, difícilmente vamos a poder iniciar videollamadas.

Para este tipo de situaciones existen herramientas como Flatseal. Se trata de una aplicación gráfica que todo lo que hace es permitir hacer mediante clics lo que de otro modo tendríamos que hacer desde una terminal con la ayuda del comando flatpak override. Permite modificar los permisos que se le entregan a las aplicaciones instaladas desde Flatpak para así, o agregarle permisos para que puedan acceder a directorios adicionales que no se vieron venir si están provocando problemas de ejecución, o restringir todavía más los permisos de una aplicación si no confiamos del todo en ella.

Hay que tener en cuenta que, si bien algunas distribuciones se preocupan más del software que portan sus gestores de paquetes, Flatpak se ha convertido en el lugar del que descargar clientes gráficos de aplicaciones no tan libres y donde se desconoce del todo su funcionamiento. No estoy diciendo con esto que las aplicaciones de Flatpak sean inseguras, pero en algunos casos no se pierde nada por restringir a una aplicación cloud, como Discord, para que no tenga acceso a nada más que la carpeta de descargas, o para que no pueda ver la lista de procesos en ejecución, por si acaso están compartiendo esa información con terceras personas.

Captura de pantalla de Flatseal ajustando permisos
Flatseal mostrando una ventana de permisos.

La forma de utilizar Flatseal es sencilla. Después de instalarla desde Flathub, la ejecutas. Encontrarás en el panel de la izquierda una lista de las aplicaciones que tienes instaladas en tu equipo. También habrá una opción global arriba que te permitirá ajustar los permisos de todas las aplicaciones.

Una vez tengas marcada una aplicación, el panel de la derecha puede usarse para revocar permisos proporcionados por defecto cuando la aplicación se instala, o para proporcionarle permisos extra. Admisiblemente, no todos los permisos son fáciles de comprender. Esta es la razón por la que Flatseal tiene en su página de GitHub una documentación en forma de manual que te enseña para qué vale cada cosa y qué consecuencias puede tener encender o apagar una opción.

Tienes que tener en cuenta, para acabar, que no todas las aplicaciones van a reaccionar igual de bien a que se le prive de un permiso que da por sentado. Por ejemplo, es posible que algunas aplicaciones empiecen a fallar de formas feas si no tienen permiso para abrir la carpeta de descargas y esperan que puedan. En caso de que una aplicación deje de comportarse como lo normal, siempre puedes utilizar el botón Restablecer que hay en Flatseal para volver a dejarlo todo como estaba.

9 cosas que hacer tras instalar Fedora 37

Fedora 37 ha salido. Y si lo acabas de instalar en tu ordenador y te estás preguntando qué puedes hacer ahora, en este post te cuento 9 cosas con las que puedes ir abriendo boca.

Fedora 37 ya ha salido y, si usas el spin oficial, una vez hayas instalado o actualizado, tendrás acceso a la última versión de muchos paquetes de software disponibles para tu ordenador, desde herramientas para el día a día como navegadores y editores de textos, hasta entornos de ejecución y desarrollo pensados para profesionales de IT.

Si bien Fedora y GNOME se ocupan de traer unos defaults sensibles y agradables que normalmente no es necesario modificar, existen algunas cosas que conviene hacer una vez se instala el sistema que pueden serte de utilidad para mejorar la experiencia de uso de la máquina.

Lo esencial que debes hacer según instales

Activa el repositorio de RPMFusion

RPMFusion es un repositorio que contiene paquetes extra que por cuestiones de licencia o por su carácter propietario, no pueden ser incorporadas en el repositorio principal de Fedora.

Para activar RPMFusion deberás ejecutar los siguientes comandos en una terminal:

# Para activar el repositorio Free
sudo dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm

# Para activar el repositorio non-free
sudo dnf install https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm

Puedes ejecutar el primer comando o los dos. Con el segundo, se activa el repositorio non-free, para incluir también código abiertamente privativo. De cualquier modo, este paso será necesario si quieres obtener software gratuito pero no libre fácil, como Acrobat Reader (si es que queda alguien usando eso), o los controladores oficiales de NVIDIA.

Activa Flathub

Flatpak es un formato de aplicaciones portables que permite distribuir e instalar fácilmente aplicaciones en distribuciones GNU/Linux independientemente del gestor de paquetes. Muchos programas de software de escritorio ahora están disponibles en formato Flatpak porque permiten distribuir fácilmente y sin riesgos de compatibilidad entre versiones o distribuciones programas de todo tipo.

Fedora trae Flatpak preinstalado. Sin embargo, los repositorios de Flathub no siempre vienen activos por defecto. Si tratas de buscar aplicaciones de Flatpak en GNOME Software pero no las encuentras, es posible que tengas que tengas que activar antes su repositorio, ya que Flathub es el principal repositorio de software de Flatpak.

Lo puedes activar de dos formas. La primera es simplemente descargando el archivo .flatrepo y abriéndolo con GNOME Software. Lo puedes obtener haciendo clic en el siguiente enlace: https://flathub.org/repo/flathub.flatpakrepo. La segunda forma es mediante la terminal, ejecutando el siguiente comando:

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

Comprueba que estás al día

La ISO de Fedora 37 se publica cuando se lanza la versión. Desde entonces, cualquier corrección de errores al software que se preinstala con la ISO (por ejemplo, GNOME) se publica a través del gestor de paquetes. Pero no siempre se genera una nueva ISO para descargar, lo que significa que es muy posible que el software que traiga tu ISO tenga parches disponibles en el gestor de paquetes.

Por lo tanto, una de las primeras cosas que tienes que hacer es visitar la aplicación GNOME Software y actualizar los paquetes de tu distribución. Si has elegido un spin de Fedora, como el de KDE, el proceso cambiará. En este caso, por ejemplo, podrías usar KDE Discover.

Si no, siempre te quedará lanzar una terminal y ejecutar sudo dnf upgrade. Después de hacer esto, deberás reiniciar tu ordenador. Esto es así porque muchas actualizaciones atacan a componentes esenciales del ordenador, tales como el kernel, el cargador de arranque o algunos drivers del sistema, por lo que hasta que no se reinicie, no se puede asegurar que se está usando la versión actualizada.

Gestor de actualizaciones de GNOME Software
Actualizaciones de software pendientes de ser instaladas en Fedora

Instala software imprescindible

El navegador Brave

Mozilla Firefox viene preinstalado por defecto y es un navegador excelente para el día a día. Sin embargo, algunas personas preferirán usar Brave por su interfaz, sus extensiones o porque ya lo usen en otros dispositivos.

Brave es compatible con Fedora. De acuerdo con las instrucciones de su página web oficial, todo lo que tienes que hacer es abrir una terminal de tu ordenador y ejecutar los siguientes comandos:

sudo dnf install dnf-plugins-core
sudo dnf config-manager --add-repo https://brave-browser-rpm-release.s3.brave.com/x86_64/
sudo rpm --import https://brave-browser-rpm-release.s3.brave.com/brave-core.asc
sudo dnf install brave-browser 

Como siempre, es altamente recomendable que prestes atención a lo que estás enviando a la terminal en vez de copiar y pegar a ciegas. Una vez ejecutes estos comandos, tendrás en tu ordenador Brave. Lo encontrarás abriendo el menú Actividades y buscando Brave. Una vez abierto, lo puedes fijar como aplicación favorita para mostrarla siempre en la bandeja de aplicaciones.

VLC y otros plugins para reproducir vídeo

Si en Fedora visitas sitios como twitch.tv, es posible que te encuentres un error al reproducir vídeo por falta de codecs. Por seguridad, Fedora no empaqueta cierto tipo de plugins necesarios para poder reproducir vídeo, debido a que no siempre están claras las licencias de uso de ese software.

Sin embargo, buena parte de ese software es portado por los repositorios de RPMFusion, por lo que si has agregado los repositorios de RPMFusion, todo lo que tienes que hacer es instalar los plugins para agregarle el soporte para ese tipo de formatos multimedia a Fedora: H264, H265, etc.

Mi recomendación aquí es simplemente instalar VLC Player. Se encuentra en los repositorios de RPMFusion también. «Pero Dani -me dirás-, yo no pretendo usar VLC, todo lo que consumo está en la nube». No hace falta que lo abras, pero como VLC tiene como dependencia a casi cualquier códec de vídeo existente, si instalas VLC desde RPM te asegurarás de que ya no te falta de nada. No suelo abrir VLC, pero hasta que no lo instalo, hay livestreams en plataformas como YouTube o Twitch que no cargan.

GNOME Extensions

GNOME de por si trata de ofrecer unos defaults sensibles que tratan de complacer a la mayoría. Pero sabemos de sobra que la mayoría no siempre es el todo. Por eso GNOME es extensible y mediante plugins soporta personalizar su comportamiento.

Hoy en día, la forma más simple de instalar extensiones es mediante la aplicación Extensiones, que proporciona una mejor usabilidad que la manera tradicional (visitar extensions.gnome.org desde GNOME Web o desde un navegador que tenga instalado el plugin oficial de GNOME para la integración con el escritorio).

Puedes descargar Extensions desde Flathub o desde los repositorios centrales instalando dnf install gnome-extensions-app. Y, por supuesto, también lo puedes instalar desde GNOME Software.

Personaliza tu ordenador

Muestra el botón minimizar y el botón maximizar en las ventanas

Por defecto, GNOME sólo muestra el botón Cerrar en la parte superior de una ventana. Este minimalismo lo compensa con un par de atajos: para minimizar una ventana puedes usar Super+H; y para maximizarla y restaurarla puedes hacer doble clic sobre el área de título o arrastrar una ventana a la parte superior de la pantalla.

Si instalas la aplicación Retoques de GNOME (o GNOME Tweaks), fácil de encontrar desde la aplicación GNOME Software, podrás cambiar esto desde la propia aplicación, yendo a la sección «Barra de título de las ventanas» y activando las opciones Maximizar y Minimizar.

Retoques de GNOME es una aplicación sensacional que también te permite hacer más cosas, como cambiar el tema y la tipografía por defecto de las ventanas, lo que te permite personalizar tu ordenador y dejarlo más a tu gusto.

Captura de pantalla de Retoques de GNOME mostrando las opciones de ventana.
Retoques de GNOME activando los botones minimizar y maximizar de una ventana

Muestra las aplicaciones en tu dock

Cuando se despliega el menú Actividades, en la parte de abajo aparece un dock o bandeja con los accesos rápidos a las aplicaciones abiertas y favoritas. Ese menú sólo está visible por defecto mientras el menú Actividades esté desplegado, pero esto tiene solución.

Si instalas la aplicación GNOME Extensions, puedes buscar una extensión llamada Dash to Dock. Esta es una de las aplicaciones más veteranas de GNOME debido a que lleva teniendo soporte desde que GNOME 3 decidió mostrar las aplicaciones abiertas sólo en el menú Actividades.

Descarga Dash to Dock y configúralo a tu gusto para dejar el Dock en la posición que prefieras. Puedes configurarlo al estilo Ubuntu, al estilo macOS o al estilo menú inicio de Windows. Por ejemplo, puedes hacer que se mueva a la izquierda y se quede en forma vertical para hacer más hueco para las ventanas que tengas abiertas, como los navegadores web.

Cambia automáticamente tema claro y tema oscuro

Hoy en día en GNOME es posible cambiar entre tema claro y tema oscuro desde las opciones de Apariencia. Esto te permite hacer que tus ventanas se vean de colores claros o de colores oscuros según tu preferencia.

Con la extensión Night Theme Switcher, puedes llevar esto más allá y hacer que el tema oscuro se active automáticamente a partir de ciertas horas del día. Con eso puedes tener el tema claro mientras estás trabajando, y el tema oscuro mientras te relajas mirando YouTube por la noche, por ejemplo.

La extensión también te permite cambiar el fondo de pantalla automáticamente, entre otras muchas opciones disponibles, como modificar la forma en la que funciona el filtro de luz naranja de la pantalla que GNOME trae desde hace bastantes versiones.

Cómo configurar Flatpak en Debian 11 Bullseye

Flatpak es un formato neutro para la distribución de aplicaciones gráficas en GNU/Linux, y en este artículo te explico cómo puedes instalar el soporte para Flatpak en Debian 11.

Flatpak es un formato de distribución de aplicaciones que se ha vuelto bastante popular en los últimos años porque permite fácilmente distribuir versiones consistentes, estables y seguras de aplicaciones en una gran variedad de distribuciones GNU/Linux.

De este modo, los desarrolladores que fabrican las aplicaciones tienen una forma unificada de distribuir de forma segura aplicaciones para que las últimas versiones del software que desarrollan pueda ser utilizado por los usuarios finales, independientemente de la política de actualizaciones que tenga la distribución que se esté usando.

Otra de las ventajas de Flatpak es el hecho de que las aplicaciones pueden correr bajo una política de seguridad especial, que impida a las aplicaciones tener acceso a más directorios del ordenador de lo que sea estrictamente necesario para hacer funcionar la aplicación, o aislar completamente al proceso para que no pueda ver la lista real de procesos que se están ejecutando en el sistema.

Debido a que en Flatpak se proporciona una forma clara de instalar las dependencias, también ahorra los problemas derivados de que un paquete dependa de una biblioteca que no está disponible en el ordenador. Por ejemplo, es posible usar paquetes que usan la versión más reciente de Qt o de GTK+, incluso si tu Debian te instaló una versión más vieja.

Instalar Flatpak en Debian 11

Flatpak está disponible en los repositorios centrales de Debian, por lo que es muy fácil de activar esta función, si instalas el paquete flatpak. Esto lo puedes hacer desde un gestor de paquetes visual (como Synaptic o GNOME Software), o bien desde la línea de comandos usando el siguiente comando

sudo apt install flatpak

Configurar Flathub

Las aplicaciones en Flatpak se organizan en repositorios. El principal repositorio de Flatpak es Flathub, donde encontrarás un catálogo de software libre y no libre que puedes instalar fácilmente en tu ordenador si estás usando Flatpak.

Ten en cuenta que existen más repositorios de Flatpak por ahí. Por ejemplo, tanto GNOME como KDE tienen su propio repositorio Flatpak adicional, donde publican sus propias aplicaciones, para que las puedas instalar independientemente del ciclo de vida de los paquetes de tu sistema operativo.

En una terminal, utiliza el siguiente comando para agregar el repositorio de Flathub a tu ordenador:

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

Instalar aplicaciones Flatpak desde la línea de comandos

Ahora que hemos metido Flathub como repositorio en nuestra máquina, podemos instalar paquetes de Flathub. En el siguiente ejemplo, me voy a fijar en Plots, una aplicación que sirve para dibujar gráficas, y que está disponible en Flathub.

Si visitamos la página de Flathub, encontramos instrucciones que nos guían en el proceso de instalación de una aplicación.

Instrucciones para la instalación de un programa
Instrucciones para instalar aplicaciones en Flathub

Si copio y pego el primer comando (flatpak install...), el sistema me hará varias preguntas para confirmar si estoy de acuerdo con los cambios que va a hacer en mi ordenador. Principalmente, me listará los paquetes que va a instalar, que no tiene por qué ser únicamente la aplicación, sino también algunos runtimes como GTK+, GNOME Platform, KDE Platform…

Todo lo que tengo que hacer es confirmar los cambios si estamos de acuerdo respondiendole afirmativamente a las preguntas que nos hará. Una vez se hayan descargado e instalado los distintos paquetes (que puede tardar sobre todo si es la primera vez por aquello de que hay que instalar bastantes entornos de ejecución), podremos lanzar la aplicación usando el comando flatpak run que también podemos copiar y pegar, o bien desde el menú de aplicaciones si lo tenemos bien configurado.

Captura de pantalla de Plots
Plots ejecutándose desde Flatpak

Instalar aplicaciones de forma gráfica

Si no te gusta la terminal, es posible también usar herramientas gráficas. Flatpak se integra con KDE Discover, así que si utilizas KDE, es muy posible que ya puedas buscar e instalar aplicaciones desde Discover.

Sin embargo, si estás usando GNOME, deberás instalar también un plugin para que se puedan listar desde GNOME Software. Este paquete se llama gnome-software-plugin-flatpak y lo puedes instalar usando APT o un cliente gráfico como Synaptic.

A partir de este momento, podremos listar e instalar aplicaciones de forma gráfica usando GNOME Software:

GNOME Software mostrando la instalación de un programa
Veloren es un videojuego que se distribuye mediante Flatpak

Cómo probar ya las nuevas Web Extensions de GNOME Web con Nightly

Con la ayuda de Flatpak podemos activar el repositorio de GNOME Nightly y así probar la versión no estable más reciente de GNOME Web, por si no quieres esperar a GNOME 43 este otoño.

La próxima versión de GNOME Web dispondrá de soporte para WebExtensions, el formato interoperable de extensiones web que hoy en día utilizan los navegadores principales (Firefox, Chrome, Microsoft Edge…). Esto abre una nueva era en las capacidades de GNOME Web, ya que a partir de entonces podrás utilizar en GNOME Web extensiones populares como uBlock, Bitwarden o Decentraleyes. Si no te apetece esperar a la inminente llegada en otoño de GNOME 43, siempre puedes probarlo ya desde la versión Nightly, que es el sistema de distribución de GNOME para versiones inestables de su software.

Con versión inestable no me refiero necesariamente a que vaya a fallar o a dar problemas, pero tampoco quiero dar a entender que son versiones que vayan a funcionar bien todo el tiempo. En realidad nunca se sabe cómo puede funcionar una versión nightly, y esta percepción puede cambiar cada día, ya que se actualizan constantemente. Una parte muy importante cuando se fabrica software es la etapa de validación y pruebas, midiendo que el software se comporte como cabe esperar sin errores ni incompatibilidades. El software que está disponible en la rama Nightly de GNOME acaba de ser desarrollado, pero su etapa de pruebas todavía no se ha completado, por lo que podría dar problemas que todavía no hayan sido detectados ni reparados. Deberías probarlo solamente bajo tu propio riesgo y sin hacer actividades importantes en este navegador si lo no ves robusto en este momento.

GNOME Nightly se distribuye en formato Flatpak. Es lo más conveniente para poder instalar de forma aislada todos los entornos de ejecución de la próxima versión de GNOME, de una forma que no sea global para evitar comprometer el resto del equipo. Instalar paquetes de GNOME Nightly desde Flatpak no va a perjudicar en absoluto ningún otro paquete que tengas descargado, ni ningún otro Flatpak que hayas instalado. De hecho, podrás instalar en paralelo la versión Nightly y la versión normal.

Para poder activar GNOME Nightly, tal como dicen sus instrucciones de instalación, tendrás que activar el repositorio remoto en primer lugar. Para ello, primero te tienes que asegurar de haber instalado Flatpak. Según tu distribución es posible que ya lo tengas instalado, pero a lo mejor tienes que configurarlo antes. Hace poco te contaba en YouTube cómo instalar Flatpak en Debian 11. En mi caso, voy a hacer esta prueba sobre Fedora 36, de modo que ya tengo Flatpak preinstalado, solo me hace falta ejecutar el comando:

flatpak remote-add --if-not-exists gnome-nightly https://nightly.gnome.org/gnome-nightly.flatpakrepo

Si no dice nada más, es que hemos terminado de instalar el repositorio. Esto lo puedes confirmar ejecutando flatpak remotes y confirmando que puedes ver una entrada para gnome-nightly. De ser así, ya puedes instalar GNOME Web Nightly usando el comando:

flatpak install gnome-nightly org.gnome.Epiphany.Devel

Al hacer esto, te mostrará todo el camino de instalación que debe tomar, y te hará una serie de preguntas a las que deberás responder afirmativamente según el idioma en el que te haga la pregunta, respondiendo Y o respondiendo S. El nombre con el que encontrarás GNOME Web Nightly en tu menú Aplicaciones una vez instalado es Web (Epiphany Technology Preview).

Captura de pantalla
Flatpak pidiendo confirmación antes de instalar GNOME Web Nightly (nombre en clave Epiphany).

Debido a que el soporte para Web Extensions apenas acaba de aterrizar, la forma de utilizarlas todavía no es lo mejor del mundo. Todavía no hay nada para instalar visualmente extensiones a partir de una lista. Quiero imaginar que en un futuro no muy distante, las extensiones se podrán obtener desde GNOME Software o desde algún tipo de panel en las opciones de GNOME Web. Por el momento, habrá que activar a mano el soporte para Web Extensions invocando un comando en la terminal, ejecutando los siguientes tres comandos:

flatpak run --command=gsettings org.gnome.Epiphany.Devel set org.gnome.Epiphany.web:/org/gnome/epiphany/web/ enable-webextensions true

mkdir -p ~/.var/app/org.gnome.Epiphany.Devel/config/epiphany/web_extensions/

mkdir -p ~/.var/app/org.gnome.Epiphany.Devel/data/epiphany/web_extensions/

El soporte estará limitado a las extensiones compatibles en formato manifest.json o en formato XPI. Se pueden descargar extensiones desde el web de Firefox Add-Ons, porque desde un navegador web que no sea Firefox, mostrará un enlace llamado Descargar archivo que será el que permita descargar la extensión en formato XPI. A partir de ahí, se pueden organizar e instalar extensiones nuevas en GNOME Web desde el menú lateral, entrando en la sección Extensiones.

Una extensión siendo instalada en GNOME Web Nightly.