Collabora expone el estado del soporte de Wayland para Wine
Collabora está trabajando desde hace meses en el desarrollo de un driver que permita a Wine funcionar de forma nativa en Wayland, una meta que probablemente no se consiga viendo el escepticismo de Alexandre Julliard.
Wayland es un protocolo gráfico que promete acabar de raíz con problemas irresolubles de Xorg como la seguridad y el tearing, además de aportar una simplificación de la pila gráfica que ya está repercutiendo en un menor consumo energético. Sin embargo, arrastra el inconveniente de ser difícil de implementar, un obstáculo que es la segunda vez que se intenta sortear por parte de Wine.
Sí, habéis leído bien. La iniciativa de Collabora es el segundo intento para dotar a Wine de soporte nativo de Wayland. Alexandre Julliard, líder de Wine y persona que ocupa un puesto importante en CodeWeavers, dijo que comenzó a escribir un controlador hace años, pero su desarrollo se estancó cuando se dio “cuenta de que esencialmente no había forma de hacer una administración decente de las ventanas, y que lo mejor que podríamos hacer sería el equivalente al modo de escritorio X11, donde administramos las ventanas nosotros mismos. No tengo la impresión de que la situación haya mejorado en todo ese tiempo, ni de que haya interés en mejorarla”.
Pero el escepticismo de Julliard no ha desalentado a Collabora, que ha continuado con su trabajo. Según la empresa responsable de la implementación online de LibreOffice, tanto la funcionalidad como la estabilidad del driver de Wayland para Wine han mejorado bastante, siendo capaz de soportar, aunque posiblemente no de forma limpia, lo siguiente:
- El manejo del estado de la ventana: cambio de tamaño, maximización, minimización (aunque a menudo no hay contenido de ventana minimizada adecuado) y pantalla completa.
- OpenGL y Vulkan (incluido el uso de WineD3D y DXVK).
- Cambios de modo de visualización (emulados con la escala del compositor de Wayland, en lugar de cambios de modo de hardware de visualización real).
- Soporte para múltiples monitores.
- Captura/recorte/movimiento relativo del ratón (pero hay que tener en cuenta que los compositores de Wayland no tienden a manejar muy bien los casos que no son de pantalla completa).
- Ventanas emergentes, menús y otras ventanas transitorias (excepto en procesos cruzados).
- Los mapas de teclado configurados y actualizados desde el compositor de Wayland deberían funcionar de forma transparente.
- Escalado HiDPI (configurable para usar la escala del compositor de la aplicación/Wine o la de Wayland).
- Copiar y pegar en ambos sentidos, permitiendo arrastrar y soltar en la dirección desde Wayland nativo hacia Wine.
- Soporte para la bandeja del sistema (menos la posición del menú contextual).
En estos momentos hay un problema abierto relacionado con la renderización de procesos cruzados, el cual es relevante sobre todo para las aplicaciones basadas en Chromium. En Collabora tienen sobre la mesa algunas ideas para resolver esto en los próximos meses, un detalle que apunta a que vamos a tener que seguir teniendo paciencia para ver el soporte de Wayland habilitado por defecto en Wine.
El driver de Wayland para Wine no solo tiene que funcionar, sino que, si quiere ser una característica oficial, tiene que cumplir con ciertos requisitos impuestos por los líderes del proyecto, siendo el más importante el hecho de que no puede estar atado a ningún compositor específico.
¿Qué aportaría a Proton el soporte nativo de Wayland para Wine?
Proton ha sido una bendición para Wine, ya que el uso de la reimplementación de las API de Windows era cada vez menor debido a la proliferación de las aplicaciones multiplataforma. Proton, además de volver a poner a Wine en el centro, se ha convertido en el gran puntal del Linux Gaming.
Sobre la aportación del soporte de Wayland, se notaría más a la vista que en la tasa de imágenes por segundo. Los propósitos de Wayland son reducir latencias y ofrecer unas mejores tecnologías para el despliegue de los gráficos, así que los usuarios deberían de percibir una experiencia más suave y limpia con la imagen proyectada por el monitor.
No, sobre el papel Wayland no contribuiría a mejorar el rendimiento de los juegos, aunque al final puede que sí aporte cierta mejora como consecuencia colateral de la pila que propone para el despliegue de los gráficos, la cual es más simple que la empleada a través de Xorg.
Por otro lado, nos podemos encontrar con la paradoja de ver al viejo Max Payne del año 2001 funcionando de forma nativa en Wayland y a viejos videojuegos nativos para Linux funcionando sobre XWayland. Os dejamos con el vídeo de Collabora en el que se muestra el actual estado del driver de Wayland para Wine.