El gestor de paquetes APT ha sido parcheado para impedir la desinstalación de componentes esenciales
La semana pasada fue un tanto amarga para System76. Aparte de su conflicto con GNOME, la compañía tuvo que ver cómo su sistema operativo, Pop!_OS, era puesto en evidencia en el canal de YouTube Linus Tech Tips después de que un intento de instalar Steam se llevara por delante el entorno de escritorio.
Linus Sebastian, el protagonista del canal Linus Tech Tips, intentó usar o poner a prueba Linux como sistema operativo de escritorio. Para ello, primero optó por Pop!_OS, una de las distribuciones más amigables con los usuarios y las gráficas de NVIDIA. Todo parecía ir aparentemente bien hasta que se puso a instalar Steam desde la tienda de software del sistema. A pesar del aviso que le saltó, Linus decidió tirar para adelante con la instalación de la aplicación, lo que tuvo como consecuencia la desinstalación del entorno de escritorio. Tras reiniciar, como es obvio, ya no había interfaz gráfica.
Lo que le pasó al protagonista del popular canal de YouTube, que cuenta con más de 14 millones de suscriptores, es que le impactó un bug detectado al menos hace dos meses en Pop!_OS, pero que no fue corregido hasta después de ser expuesto por Linus Tech Tips. La gran cantidad de seguidores con los que cuenta el canal hizo que el hecho se volviera viral, suponiendo un duro golpe para el escritorio Linux.
Para que este desaguisado no vuelva a ocurrir, System76 tomó la decisión de adoptar en su implementación de APT medidas (1 y 2) que impidan la desinstalación de componentes esenciales del sistema operativo. Después la compañía decidió entablar conversaciones con Debian para implementar al menos algo parecido en la rama principal de APT, cosa que ha sido aprobada (1 y 2) para la versión 2.3.12 del gestor de paquetes.
A partir de APT 2.3.12, el gestor de paquetes ya no debería de resolver automáticamente cuando un proceso intenta desinstalar componentes esenciales o protegidos, forzando de esta manera al usuario a tener que resolver el problema de dependencias manualmente a través de la adición de un argumento. Retomando el caso que nos ocupa, la instalación de Steam debería de ser denegada en un principio para proteger el sistema operativo. Quizá queda por ver hasta qué punto han sido flexibles los desarrolladores de APT con la implementación de esta medida.
Hechos como este llevan a uno a preguntarse si el escritorio Linux no necesita una vuelta de tuerca, una vuelta de tuerca que ha quedado plasmada de forma clara en Fedora Silverblue, sistema en el que cosas como esta son imposibles que ocurran por diseño gracias a la inmutabilidad y a que delega la instalación de las aplicaciones principalmente en el formato Flatpak.