Fedora Silverblue 40: guía de instalación y configuración
Con el lanzamiento de Fedora 40, voy a proceder a la renovación de la guía de instalación y configuración de Silverblue, el sistema operativo inmutable para escritorio que se centra en implementar mecanismos y medidas que aporten resiliencia frente a los errores. Aquí entran en juego factores como las imágenes del sistema generadas con OSTree y rpm-ostree, el establecimiento de parte del sistema de ficheros en modo de solo lectura y el uso intensivo de Flatpak, que en este sistema hace el papel de mecanismo que separa las aplicaciones del sistema operativo.
Fedora Silverblue es, con permiso de SteamOS 3, el sistema operativo que ha llevado la inmutabilidad a la escena mainstream de Linux. En esta guía solo voy a repasar los aspectos básicos de la instalación, ya que Silverblue está fuertemente orientado al uso del particionado automático. Esto es así debido al uso por defecto de Btrfs y la forma en que están configurados los subvolúmenes, que terminan haciendo que el particionado manual se vuelva un poco engorroso. Sin embargo, OSTree y rpm-ostree deberían funcionar sin problemas sobre EXT4, por si alguien no quiere desprenderse del sistema de ficheros más tradicional de Linux.
Instalación de Fedora Silverblue 40
La instalación de Fedora Silverblue es muy parecida a la de Workstation, pero hay unas pocas diferencias que serían mejor tener en cuenta. Para empezar, el sistema que nos ocupa no cuenta con sesión en vivo, así que nada más arrancar el medio de instalación nos encontramos de bruces con la posibilidad de iniciar Anaconda. Cuando GRUB aparezca, hay pulsar la tecla intro sobre “Install Fedora 40”.
1. Selecciona el idioma
Tras indicar que se quiere instalar Fedora Silverblue (y qué remedio cuando no hay sesión en vivo), al usuario le aparecerá la opción de idioma de Anaconda. Como el país de origen de MuyLinux es España, he seleccionado el español de ese país.
Y al igual que en Fedora Workstation, tras la selección del idioma se llega a la pantalla principal de Anaconda, donde es posible configurar la distribución de teclado, el idioma (otra vez), la fecha y la hora, además del destino de la instalación (el o los discos duros o SSD que contendrán Fedora Silverblue).
2. Cambiando la distribución del teclado
Si el usuario lo ve conveniente, puede cambiar la distribución del teclado accediendo al apartado de “Teclado” de Anaconda. Por lo demás, nos encontramos con un paso que debería ser opcional.
Añadir distribuciones de teclado es sencillo. Para ello solo se tiene que hacer clic en el botón de más (+) que aparece en la interfaz gráfica, buscar, seleccionar la distribución, añadirla con el botón “Agregar” y luego colocarla en primer lugar con el botón de subir (^). Para aplicar los cambios se pulsa sobre el botón “Hecho” (situado en la parte superior izquierda).
3. Soporte de idiomas
Este apartado permite añadir más idiomas a la instalación del sistema. Este paso es en un principio opcional (depende de las necesidades y preferencias del usuario) y su manejo es tan simple como seleccionar un idioma en la lista de la izquierda para luego marcar las variantes que se quieren añadir (o quitar) en la lista de la derecha. Una vez seleccionados los idiomas se pulsa sobre el botón “Hecho”.
4. Configurando la hora del sistema a través NTP
En la configuración de “Fecha y hora” hay que seleccionar la Región y la capital o zona geográfica concreta en la que se ubica el usuario, además de seleccionar fecha y hora automática (Automatic date & time) para que NTP se encargue de establecer la fecha y la hora correctas. Tras hacer todo eso, hay que pulsar sobre el botón “Hecho”.
5. Particionado automático
Y llegamos al particionado. Silverblue es un sistema operativo que está fuertemente orientado a usar el particionado automático, así que aquí procedo a pulsar sobre la opción “Automática” y después a hacer clic en “Hecho” para confirmar.
Opcionalmente el usuario puede emplear el cifrado de disco con “Cifrar mis datos”, pero es importante tener en cuenta que, al menos de momento, la distribución de teclado se queda fija en el inglés estadounidense en el momento de introducir la contraseña cuando se hace el proceso de descifrado, así que hay que tener cuidado con la frase que se establezca.
6. Proceder a instalar
Después de realizar todos los pasos, los cuales pueden ser todos prescindibles menos el particionado dependiendo de lo que haya establecido Anaconda en su pantalla inicial, se pulsa sobre “Comenzar la instalación”. Si el proceso termina de forma exitosa, debería aparecer el botón “Reinicio del sistema”.
Bienvenida a Fedora Silverblue 40
Al igual que en la edición Workstation, Fedora Silverblue 40 muestra la pantalla de bienvenida del sistema que permite configurar los aspectos básicos de la privacidad; la activación de los repositorios de terceros para Google Chrome, el driver de NVIDIA, Steam y PyCharm; además del primer usuario.
Tras la pantalla de bienvenida, se preguntará al usuario sobre la privacidad en torno a los servicios de ubicación. Silverblue todavía no pone a disposición la posibilidad de informar de los problemas automáticamente.
Los repositorios de terceros, al igual que en la edición Workstation, suministran de forma indirecta Google Chrome, el driver de NVIDIA, Steam y PyCharm. El navegador web procede de los propios repositorios de Google, Steam y el driver de NVIDIA de una activación parcial de RPM Fusion y PyCharm es suministrado a través de Copr, un proyecto orientado a facilitar la construcción y el mantenimiento de repositorios de terceros en Fedora y que se parece a los PPA de Ubuntu. Yo por lo general no activo esto, ya que prefiero habilitar los repositorios individualmente desde GNOME Software.
Como último paso importante está la creación del primer usuario, que tendrá permisos de administrador mediante sudo. Sobra decir que la creación de una contraseña fuerte es muy importante, sobre todo si se ha instalado Fedora Silverblue 40 en un portátil que puede acabar fuera de casa, contexto en el que también es muy recomendable aplicar un cifrado de disco (recuerdo el problema de que el paso de la contraseña solo es capaz de usar la distribución de teclado de inglés de Estados Unidos).
Después aparece el tour de bienvenida, que obviamente es prescindible para los usuarios más experimentados o familiarizados con el entorno de escritorio y la distribución.
Actualizando el sistema antes de iniciar la configuración
La primera cosa que hay que hacer tras cerrar el tour de bienvenida es abrir GNOME Software. Si no hemos activado los repositorios de terceros en los pasos anteriores, se nos sugerirá otra vez su habilitación. Como ya he dicho, prefiero habilitar individualmente, así que aquí pulso sobre Ignorar.
Luego toca dirigirse a la sección de actualizaciones de GNOME Software para actualizar el sistema operativo. El proceso por lo general se hace de forma automática tanto para los paquetes Flatpak como en lo que corresponde al sistema con rpm-ostree y OSTree, así que lo más probable es que solo se tenga que reiniciar después de que lo último mencionado se haya completado.
Configurando los repositorios
Con la sesión de usuario iniciada de nuevo, ahora sí voy a proceder a activar los repositorios adicionales. Tras hacer la ruta de menú hamburguesa (el menú principal de GNOME Software) > “Repositorios de software”, he activado Flathub, que es el principal repositorio de Flatpak, y la habilitación parcial de RPM Fusion que permite obtener el cliente de Steam en formato RPM y las reglas de udev para controladores (mandos de videojuegos) de Steam. Ambas cosas requieren de introducir la contraseña del usuario.
Por ahí también está la habilitación parcial de RPM Fusion para obtener el driver oficial y privativo de NVIDIA. Como hace años que no uso una gráfica de esa marca y ni pienso volver a usar una mientras su soporte no se ajuste a los estándares del sistema, voy a dejar los pasos descritos en la documentación de RPM Fusion para su instalación:
sudo rpm-ostree install akmod-nvidia xorg-x11-drv-nvidia xorg-x11-drv-nvidia-cuda
sudo rpm-ostree kargs --append=rd.driver.blacklist=nouveau --append=modprobe.blacklist=nouveau --append=nvidia-drm.modeset=1
Tras realizar los pasos para instalar el driver de NVIDIA, hay que reiniciar para que los cambios surtan efecto. Como curiosidad, el segundo paso expone cómo se añaden argumentos del kernel en Fedora Silverblue. Si el usuario se dedica a manipular el típico fichero de GRUB, no obtendrá ningún resultado.
Reemplanzando Firefox RPM por la versión de Flathub
Este paso no es obligatorio, pero es algo que siempre hago en Silverblue con el fin de que el sistema sea más ortodoxo con el concepto que maneja, con especial mención en lo que respecta a separar las aplicaciones del sistema operativo.
Para evitar quedarnos sin navegador web, en primer lugar voy a instalar la compilación de Firefox alojada en Flathub, que puede ser encontrada con GNOME Software tras buscar la aplicación y hacer clic sobre la entrada que está en inglés, ya que la que está en castellano no da acceso a la versión del navegador que interesa, la cual es capaz de soportar sin muchos problemas formatos de multimedia privativos y patentados.
Una vez se haya accedido a la página donde está la versión de Firefox que interesa tener, hay que asegurarse de que proceda de Flathub para después pulsar sobre el botón Instalar.
Tras instalar la versión de Firefox alojada en Flathub, es muy recomendable instalar el paquete ffmpeg-full
en el mismo formato y procedente del mismo repositorio. Este paquete puede acabar instalado como una dependencia de otra aplicación, pero como lo de las aplicaciones es ya una cuestión de cada uno, no viene mal indicar su instalación manual, que se hace introduciendo el siguiente comando:
flatpak install org.freedesktop.Platform.ffmpeg-full
El usuario verá en la terminal diversas versiones de ffmpeg-full
que están disponibles. Aquí recomiendo instalar las dos últimas debido a que Firefox no tiende a estar muy puesto al día en este frente, así que habría que hacer el proceso dos veces.
Por último queda anular la versión RPM de Firefox, y digo anular porque esto no hace una eliminación real del paquete, sino que más bien lo “oculta”, por decirlo de alguna forma. Como consecuencia, la versión RPM de Firefox suministrada por Fedora seguirá actualizándose de manera normal a través de GNOME Software, pero el usuario no verá su entrada en el lanzador del escritorio.
rpm-ostree override remove firefox-langpacks firefox
Y como es habitual en este sistema operativo cuando se manipula el sistema base, toca reiniciar para que la versión RPM de Firefox “desaparezca”.
Una de las consecuencias de sustituir la versión RPM de Firefox por la de Flathub es que la integración para instalar extensiones de GNOME no funciona. Sin embargo, eso puede ser subsanado con esta aplicación.
Instalando Steam de manera ortodoxa en Fedora Silverblue 40
Con el fin de ser lo más respetuoso posible con el concepto que maneja el sistema, Steam será instalado en formato Flatpak procedente de Flathub, aunque las reglas de udev para mandos de videojuegos todavía tienen que ser instaladas en formato tradicional para integrar esos periféricos con la aplicación de Valve.
Como ya he dicho, en primer lugar hay que instalar las reglas de udev para controladores de Steam, cosa que requiere previamente de activar el repositorio que habilita parcialmente RPM Fusion para obtener las mencionadas reglas y el paquete de Steam en formato RPM. Las reglas de udev se instalan de la siguiente manera:
rpm-ostree install steam-devices
Una vez instalado el paquete, toca reiniciar. En este caso no importa que estemos ante un sistema operativo mutable o inmutable, ya que es recomendable reiniciar para que estas reglas funcionen correctamente.
Lo siguiente es obtener Steam y ProtonUp-Qt desde Flathub, cosa que se puede hacer desde GNOME Software o descargando los correspondientes instaladores desde la web de Flathub e iniciándolos con GNOME Software. ProtonUp-Qt, además de servir versiones de Proton GloriousEggroll, también proporciona Luxtorpeda, una capa de compatibilidad que da soporte nativo para Linux para un puñado de videojuegos antiguos, principalmente procedentes de Id Software.
Otras aplicaciones para videojuegos que se pueden instalar, obviamente en formato Flatpak, son Heroic Games Launcher y RetroArch.
Fijando una imagen del sistema
¿Qué ocurre si hay un fallo grave en el sistema que puede acabar arrastrándose durante varios días? Aquí el usuario tiene un mecanismo llamado rollback (retroceso), que se puede aplicar tanto de forma temporal como permanente, pero en este caso me limitaré a cubrir la forma temporal porque es la que tiene más sentido ante una incidencia ocasional y temporal.
Con el fin de mostrarlo todo, voy a empezar con ejecutar rpm-ostree status
en una consola para mostrar las imágenes del sistema disponibles.
La imagen en ejecución es la que tiene el punto delante y es la 0
porque es la primera. La segunda es la imagen anterior del sistema, antes de aplicar las últimas actualizaciones, y por ocupar el segundo lugar es la 1
. Si se quiere fijar en este caso la penúltima imagen del sistema para conservar una versión funcional de este, hay que ejecutar el siguiente comando:
sudo ostree admin pin 1
Tras fijar la penúltima imagen, esta debería aparecer así tras volver a ejecutar el comando rpm-ostree status
:
OSTree y rpm-ostree son en combinación un monstruo que daría para una extensa enciclopedia, así que voy a limitarme a enseñar cómo hacer un rollback temporal. Esto se hace accediendo al menú de GRUB, cosa que requiere de pulsar la tecla escape en el momento correcto durante el arranque del ordenador si Fedora Silverblue es el único sistema presente, y eligiendo la imagen que se quiere iniciar.
Si el fallo ha sido corregido, no tiene sentido mantener la imagen del sistema fijada, así que esta puede ser “soltada” de la siguiente manera:
sudo ostree admin pin --unpin 1
Sin embargo, si se ha ido actualizando con normalidad, es posible que la imagen fijada haya acabado desplazada para ocupar la posición 2
o 3
, por lo que “soltarla”, dependiendo del caso, se haría así:
sudo ostree admin pin --unpin 2
o
sudo ostree admin pin --unpin 3
Y sí, todo lo expuesto aquí se puede aplicar con la última imagen, que ocupa la posición 0
. Fijar la imagen en ejecución, que puede ocupar la posición 0
o 1
dependiendo de si se han instalado actualizaciones o software adicional en formato RPM sobre la raíz, puede venir bien como medida de precaución antes de actualizar a una nueva versión mayor del sistema, proceso que en los escritorios atómicos de Fedora se hace con un rebase.
Herramientas gráficas para la configuración del cortafuegos y la básica de SELinux (opcional)
Es posible que el usuario quiera tener las herramientas gráficas para configurar el cortafuegos y cambiar el modo de funcionamiento de SELinux para establecerlo en permisivo. Como estamos hablando de herramientas orientadas a manipular un servicio y un componente del sistema operativo, lo suyo es instalarlas en capa (layered), sobre el sistema raíz para que se entienda:
rpm-ostree install firewall-config policycoreutils-gui
Y como toca con este sistema operativo, hay que reiniciar tras instalar.
Un punto a tener en cuenta en lo que respecta a instalar, anular y reiniciar
La configuración de Fedora Silverblue puede parecer un tanto aparatosa debido a los reinicios, pero OSTree y rpm-ostree son lo suficientemente “inteligentes” como para detectar cuando una imagen no ha sido iniciada. En consecuencia, el usuario puede ir acumulando en la sesión actual operaciones de instalación en capa (raíz) y anulaciones para luego realizar un único reinicio.
Hay un argumento de rpm-ostree, --apply-live
, que permite instalar paquetes en caliente, o sea, sobre la imagen en ejecución. Sin embargo, recomiendo utilizarlo entre poco y nunca debido a que el usuario corre el riesgo de perder posibilidades de hacer rollback y recuperar el sistema en caso de que algo salga mal.
Silverblue y demás miembros de la familia de escritorios atómicos de Fedora son sistemas hechos para ser usados de una manera determinada. ¿Es posible usarlos como si fueran sistemas mutables “tradicionales” y apoyándolo todo en RPM sobre la raíz? Poder, se puede, pero la consecuencia es que el uso y el mantenimiento del sistema operativo se vuelven mucho más tediosos. Si uno va a terminar usando un escritorio atómico de Fedora como si fuera un sistema “tradicional”, lo suyo es emplear su equivalente mutable.
Conclusión
Y estos son todos los pasos para configurar Fedora Silverblue de manera básica. A partir de aquí entramos en el uso que le da cada uno a su computadora, algo que es imposible de abarcar en un tutorial de este tipo.
Una vez que se le coge el gusto, uno de los principales fuertes de Fedora Silverblue es que su mantenimiento es bastante desatendido debido a que el sistema se actualiza de manera automática. Esta agresiva política es posible gracias a que Flatpak separa las aplicaciones del sistema y que por defecto existe una imagen de respaldo del sistema por si las cosas salen mal, la cual además se puede fijar para evitar que se pierda.
La entrada Fedora Silverblue 40: guía de instalación y configuración es original de MuyLinux