¿Soy actualmente usuario de Linux? Técnicamente sí, pero viendo cómo conciben algunos lo que entendemos como un sistema operativo GNU/Linux, la respuesta sería no.
En el año 2016 tomé una decisión que para muchos va en contra de la propia naturaleza de GNU/Linux: renunciar a la personalización. La razón principal para dar ese paso fue que la personalización raras veces me aportaba algún beneficio real, solo en caso de que algo no funcionara correctamente o directamente ni lo hacía. Si cambiaba el tema del escritorio, no era raro encontrarme con aplicaciones cuyas interfaces acababan rotas. Por otro lado, pero siguiendo con lo mismo, me di cuenta de que cambiaba el tema cada dos días debido a que acababa cargado o me dolían los ojos, y por eso desde hace años me pregunto cómo puede la gente trabajar con ciertos temas con colores y adornos muy vivos, porque yo no podría aguantarlos durante más de dos horas. Debido a lo que acabo de exponer, soy un gran defensor de Adwaita.
Sé que la personalización en Linux va mucho más allá del acabado estético del escritorio y las extensiones o plugins que se le puedan poner o quitar, pero el tema de modificar las partes internas del sistema, con la salvedad del directorio /etc
para hacer que algo funcione o lo haga correctamente, es otra cosa que he renunciado a hacer. Si quiero un entorno distinto, para eso tengo los contenedores de Podman y Distrobox y las máquinas virtuales. Sinceramente, y salvo para reparar algo, no creo que modificar el sistema operativo traiga beneficios, ni el escritorio ni los componentes internos.
Como consecuencia de que he rechazado la personalización, he tendido a utilizar los sistemas operativos como vienen en lo máximo posible, haciendo modificaciones mínimas para respetar en la medida de lo que puedo las decisiones tomadas por los desarrolladores y mantenedores de una distribución. Lejos de frenarse en algún momento, esto ha ido a más, hasta el extremo de que me considero un usuario anti-tinkering desde hace bastante tiempo.
Con la visión que tengo sobre la personalización en torno a GNU/Linux, mi salto a los sistemas operativos inmutables en el año 2021 no debería sorprender a casi nadie. Más allá del hecho de que parte del sistema de ficheros está en modo de solo lectura, la mayor peculiaridad de sistemas como Fedora Silverblue y Aeon Desktop es que su flujo de uso va sobre raíles, o sea, que están orientados para ser utilizados de una manera determinada en lugar de dejar al usuario definir cómo quiere usar el sistema operativo. Para mí esto no supone ningún problema, ya que, como bien dijo Jose en 2020, soy más de adaptarme al entorno que de adaptar el entorno.
Yendo más allá, mi vuelta a Fedora Silverblue hace mes y medio me ha hecho cuestionarme si a estas alturas soy realmente un usuario de GNU/Linux o si me he convertido en un usuario de Android-like, sobre todo viendo que Silverblue es lo más parecido a Android dentro de GNU/Linux. Si uno utiliza este sistema como un escritorio básico, comprobará que el flujo de uso es más parecido a Android que a un escritorio Linux mutable y “tradicional”, con un sistema base que se actualiza mediante rpm-ostree (en un futuro se supone que bootc y DNF5, pero ese es otro tema) y OSTree y con unas aplicaciones que van por otro lado a través de Flatpak al menos en un principio. En mi móvil, un POCO X3 Pro con LineageOS, la rutina que seguía para el mantenimiento y la puesta al día tanto del sistema operativo como de las aplicaciones era básicamente la misma, ya que me he quedado sin soporte hace poco.
No voy a negar que mi opinión de Android ha mejorado con el paso de los años, obviamente debido al uso de sistemas GNU/Linux inmutables en general y por Silverblue en particular. Conceptos como la separación de las aplicaciones del sistema se han convertido en algo muy importante para mí, llegando al punto de que en la actualidad me resulta imposible volver a un sistema mutable “tradicional” debido al caos de dependencias que suele conllevar. La última vez que intenté configurar Fedora Workstation en una máquina virtual simulando un entorno real me quedé totalmente horrorizado, con dependencias que iban para allá y para acá y con paquetes que eran downgradeados en algunos casos. Este baile, en caso de manipular componentes esenciales del sistema operativo, puede desembocar en la rotura de este y en la imposibilidad de iniciarlo.
Otro punto que considero importante y que he importando de Android a Linux es el hecho de que las aplicaciones no deberían tener acceso directo al sistema de ficheros ni a otros recursos de la computadora, incluida la carpeta personal del usuario. La paquetería “tradicional” ha demostrado una superioridad clara en términos de eficiencia, sobre todo en el uso de la memoria y del espacio en disco, pero arrastra el inconveniente de tener/conceder demasiados privilegios, tanto que la única barrera que podría haber sería si el lugar a donde está intentando acceder la aplicación requiere de permisos de root.
Como consecuencia de la falta de restricciones en la paquetería tradicional, nos encontramos con unas carpetas personales cuyo nivel de protección puede ser ínfimo, porque lo que ejecuta el usuario tiene en muchos casos acceso sin restricciones sobre todo lo que sea propiedad de dicho usuario. Hay que contar que algunas aplicaciones como los navegadores web suelen implementar su propio aislamiento, pero no voy a olvidar que la última vez que se me coló un troyano en Windows fue a través del cliente de Steam.
La tendencia de la paquetería “tradicional” de pedir permisos de root para instalar cosas y la ausencia de un mecanismo de actualizaciones atómicas que garantice la integridad del sistema operativo son factores adicionales que juegan en contra de los sistemas Linux de “toda la vida”, ya que, tras introducir la contraseña de root, el usuario está vendido a lo que haga el paquete, y si no hay un mecanismo de actualizaciones atómicas, es probable que el sistema operativo acabe roto en caso de que algo salga mal, en especial si el proceso de actualización se queda a medias.
La ausencia de estandarización de mecanismos de actualizaciones atómicas y de otros que impidan la desinstalación accidental de paquetes sensibles terminan convirtiendo al escritorio GNU/Linux en un peligro para el propio usuario, incluso en caso de que en un principio no haya hecho nada mal. Aquí no viene mal recordar lo que le ocurrió a Linus Sebastian, básicamente la cara más conocida de Linus Tech Tips, cuando intentó instalar Steam desde los repositorios de Pop!_OS. El resultado fue un conflicto de dependencias que terminó con la desinstalación de todo el escritorio, algo que para un usuario común significa que el sistema operativo está roto. Soy consciente de que Linus Tech Tips es un canal que cayó en desgracia hace tiempo, pero eso no quita Sebastian pusiera en evidencia uno de los mayores fallos de diseño que ha arrastrado el escritorio Linux durante su trayectoria.
Espero que, con el paso del tiempo, Flatpak se vaya volviendo más restrictivo, hasta el extremo de al menos rozar el nivel de Android en la actualidad. Sé que esto sonará a algo molesto para muchos, pero la gestión de los permisos como se ha hecho tradicionalmente en los sistemas Unix y tipo Unix se queda muy corta para la computación de escritorio moderna. El uso de cámaras, micrófonos, la ubicación del usuario y otros periféricos que pueden manejar datos sensibles es un asunto que debe ser gestionado como corresponde, y la autopista en la que llega a convertirse la paquetería “tradicional” en este sentido no es una buen solución.
Además de androidizar el flujo de uso de mis ordenadores, he descubierto que el ecosistema de Toolbx ha sido abierto, por lo que ahora es posible crear contenedores basados en Arch Linux y Ubuntu fácilmente y sin tener que recurrir a un containerfile. Esto deja a Toolbx más cerca de Distrobox y con la ventaja de ofrecer una mejor integración con el sistema, o al menos en su momento nunca fui capaz de ejecutar fatsort desde un contenedor de Distrobox creado a nivel de root. Utilizar contenedores me permite tener una gran variedad de entornos sin comprometer el sistema operativo anfitrión y sin gastar tantos recursos como en una máquina virtual, así que he terminado por desplazar todo lo que no sean servicios esenciales del anfitrión y compiladores a contenedores de Podman y Toolbx.
Creo firmemente que el futuro del escritorio Linux, al menos de los sistemas que ofrecen un escritorio precocinado, pasa por la inmutabilidad, las actualizaciones atómicas y el flujo de uso de Android, sobre todo porque el modelo de este último resulta bastante más coherente y seguro (en especial en lo que respecta a la integridad) para el usuario. El futuro está ahí y poco a poco cada vez son más los que señalan en esa dirección. En lo personal, yo ya no estoy dispuesto a abandonar el flujo de uso de Android y por eso me considero hoy en día un usuario de Android-like y no de Linux tal y como se ha entendido tradicionalmente con sus sistemas mutables.
Imagen de portada generada con inteligencia artificial.
La entrada Por qué he dejado de usar Linux como lo haces tú es original de MuyLinux