Wayland: ¿Por qué el futuro de Linux tardó tanto?

Fuentes: Wayland set the Linux Desktop back by 10 years

Este artículo es una post-mortem técnica sobre el desarrollo de Wayland, un protocolo de servidor de visualización diseñado para reemplazar a X11 en Linux. Wayland se propuso ser una solución más simple y eficiente, con un código base inicial de apenas 3000 líneas, pero tras 17 años de desarrollo, su adopción se ha estancado en un 40-60%, lo que sugiere problemas fundamentales. El autor argumenta que Wayland ha desviado recursos y tiempo de desarrollo, y que su implementación ha resultado en inconvenientes para los usuarios.

¿Cómo funciona y qué implica? En un sistema Linux, aplicaciones, entornos de escritorio (KDE, GNOME), compositores (KWin, Sway) y servidores de visualización (X11, Wayland) trabajan en conjunto para mostrar la interfaz gráfica. X11, el servidor de visualización tradicional, es un proyecto antiguo con una gran cantidad de funcionalidades acumuladas, lo que dificulta su mantenimiento. Wayland busca simplificar este proceso, reemplazando el servidor de visualización y algunas partes del compositor y el entorno de escritorio. Sin embargo, esta simplificación ha tenido consecuencias inesperadas.

Problemas y limitaciones: El autor señala varios problemas con Wayland. Uno de ellos es la restricción de seguridad, que impide que aplicaciones interactúen entre sí de maneras que los usuarios consideran normales (por ejemplo, OBS no puede grabar la pantalla, la copia y pegado es problemático). También hay problemas de rendimiento; a pesar de las afirmaciones de mayor eficiencia, Wayland a menudo funciona más lento que X11, especialmente con tarjetas gráficas NVIDIA. Además, la falta de estándares nativos para funciones comunes como la compatibilidad con drag and drop y el screen sharing obliga a los desarrolladores a crear soluciones alternativas, lo que genera fragmentación y una experiencia de usuario inconsistente. Finalmente, el hecho de que Wayland siga en desarrollo activo después de 17 años es un indicativo de que los problemas no se han resuelto completamente.

Alternativas y consideraciones: PipeWire, un sistema de gestión de audio, sirve como ejemplo de un proyecto exitoso que reemplazó a sus alternativas en un tiempo mucho menor (8 años). La complejidad de Wayland y sus limitaciones sugieren que, en lugar de una solución universal, podría ser más adecuado para casos de uso específicos o para usuarios avanzados que estén dispuestos a lidiar con sus peculiaridades. La dependencia de Wayland de compositores y extensiones específicas también significa que la experiencia del usuario puede variar significativamente según la distribución de Linux y el entorno de escritorio que se utilice.