
Tras trece meses de desarrollo continuo, se dio a conocer el lanzamiento oficial de Wayland 1.24, la más reciente versión estable del protocolo que implementa diversas mejoras, además de solucionar diversos errores.
A diferencia de los lanzamientos anteriores, esta nueva versión de Wayland 1.24 no introduce cambios disruptivos, pero consolida el trabajo previo con mejoras de estabilidad, pequeñas ampliaciones del protocolo y compatibilidad plena hacia atrás, tanto a nivel de API como de ABI.
Novedades en Wayland 1.24
En esta nueva versión que se presenta de Wayland 1.24 una de las novedades más destacadas es la implementación de la interfaz wl_fixes, diseñada para corregir limitaciones en otras interfaces base del protocolo. Entre sus capacidades se encuentra destroy_registry, que permite finalizar de forma explícita el uso del objeto wl_registry.
Otra novedad interesante introducida en Wayland 1.24, es la nueva función introducida en la API wl_keyboard::key, que ahora incorpora un nuevo pseudoestado denominado repeated”. Esta modificación mejora la forma en que se representan las pulsaciones sostenidas de teclas, especialmente en entornos donde la precisión en la entrada del teclado es crítica, como en escritorios remotos o sesiones VNC sobre Wayland.
Con wl_keyboard::key, una tecla puede establecerse en estado “repeated” únicamente después de haber sido presionada, pero antes de ser liberada. Mientras la tecla permanezca en esa condición, el servidor puede generar múltiples eventos de tipo “repeated”, de forma explícita y diferenciada del estado “pressed”. Este cambio resulta especialmente útil en escenarios donde es necesario distinguir entre una sola pulsación y una pulsación prolongada, como al escribir caracteres sostenidos o al controlar interfaces gráficas a distancia, donde el comportamiento tradicional.
Wayland 1.24 también incorpora nuevas funciones, tales como:
- wl_display_dispatch_queue_timeout() y wl_display_dispatch_timeout(): gestionan eventos con un tiempo de espera.
- wl_shm_buffer_ref() y wl_shm_buffer_unref(): permiten acceder a buffers de memoria compartida aún después de su destrucción.
- wl_proxy_get_interface() y wl_resource_get_interface(): facilitan la obtención dinámica de interfaces.
- wl_resource_post_error_vargs(): mejora la gestión de errores con listas de argumentos variables.
Nuevas extensiones
También cabe mencionar que durante el último año se ha enriquecido el ecosistema Wayland con nuevas extensiones que amplían sus capacidades, especialmente en cuanto a gestión de color, efectos visuales y manejo de entradas. Aunque la mayoría de estas nuevas extensiones no son exclusivas del nuevo lanzamiento, vale la pena destacar las importantes que se han introducido en los últimos meses:
- color-management y color-representation-v1: habilitan gestión de color y soporte para HDR.
- xdg-toplevel-tag: facilita identificar ventanas después de reinicios.
- ext-background-effect: permite desenfoques y efectos en zonas transparentes.
- pointer-warp: posibilita el reposicionamiento instantáneo del puntero.
- xx-session-management: restaura el estado de ventanas tras cierres inesperados.
- xx-input-method: avanza en un nuevo sistema de métodos de entrada.
- ext-data-control: permite a clientes privilegiados manejar datos (ideal para portapapeles).
- ext-workspace: gestiona escritorios virtuales y su estado.
- xdg-system-bell: permite emitir señales de alerta del sistema.
- xdg-toplevel-icon: asocia íconos con ventanas de nivel superior.
- ext-image-capture-source y ext-image-copy-capture: permiten capturar contenido de pantalla.
- fifo y commit-timing: gestionan tiempos de actualización y priorización del contenido mostrado.
Finalmente, si estás interesado en poder conocer más al respecto, puedes consultar los detalles en el siguiente enlace.
¿Cómo instalar Wayland si no está presente en mi distribucion?
Wayland no se instala como una aplicación independiente, ya que es un protocolo y necesita de un servidor de pantalla compatible, como Wayfire, Weston, Sway, o wlroots, y de un compositor como GNOME, KDE Plasma, etc., que lo soporte.
Es importante mencionar que la mayoría de distribuciones modernas ya traen Wayland instalado por defecto, al menos como opción. Pero si no estás seguro de que este presente o quieres actualizar, puedes seguir los siguientes pasos.
¿Cómo saber si estoy usando Wayland?
Para comprobar si cuentas con Wayland en tu distribucion basta con teclear:
echo $XDG_SESSION_TYPE
Si responde wayland, estás usando Wayland.
Si responde x11, estás usando X11.
También puedes revisar esta variable:
loginctl show-session $(loginctl | grep $(whoami) | awk '{print $1}') -p Type
Si ya verificaste si cuentas o no con Wayland y tu caso es que no, puedes instalarlo con alguno de los siguientes comandos:
Debian/Ubuntu
sudo apt install libwayland-client0 libwayland-server0
Fedora
sudo dnf install wayland
Arch Linux y derivados:
sudo pacman -S wayland
OpenSUSE
sudo zypper install wayland libwayland-egl1 libwayland-client0 libwayland-server0
Continúar leyendo...