Wayland 1.26 está disponible

Tras cuatro meses de desarrollo, se ha publicado la versión estable del protocolo Wayland 1.26, el mecanismo de comunicación entre procesos y las bibliotecas. La rama 1.26 es retrocompatible a nivel de API y ABI con las versiones 1.x y contiene principalmente correcciones de errores y actualizaciones menores del protocolo. El trabajo del proyecto se distribuye bajo la licencia MIT. Referencia compuesta servidor Weston, que proporciona código y ejemplos prácticos para usar Wayland en entornos de escritorio y embebidos, se desarrolla en un ciclo de desarrollo independiente.

Cambios importantes en el protocolo:

  • Se ha añadido el evento wl_pointer.warp, que permite recibir notificaciones sobre la nueva posición del puntero sin tener que gestionar el evento wl_pointer.motion generado por la actividad del usuario.
  • Se agregó la solicitud wl_fixes.ack_global_remove, diseñada para enviar una confirmación al administrador compuesto de que el cliente ha dejado de procesar el evento, para evitar condiciones de carrera al eliminar eventos globales. Tras recibir la confirmación de todos los clientes, el administrador compuesto puede eliminar el controlador asociado al evento en su lado.
  • Se ha añadido la función wl_display_remove_socket_fd() para eliminar los sockets añadidos previamente mediante la llamada a wl_display_add_socket_fd().
  • En el modo de depuración WAYLAND_DEBUG, la hora se registra en el formato "HH:MM:ss.xxxxxx", lo que simplifica el análisis y la comparación de los registros.

Extensiones de protocolo añadidas desde la versión anterior de Wayland que complementan el protocolo Wayland principal y que se suministran en un conjunto Wayland-Protocols independiente:

  • xx-fractional-scale: escala un sistema de coordenadas lógicas, cuyos valores se especifican como enteros, para mejorar la precisión del posicionamiento y aumentar la resolución de las coordenadas lógicas hasta el nivel de píxeles individuales. Esta función resuelve el problema de la resolución limitada del sistema de coordenadas lógicas, que resulta insuficiente para el posicionamiento a nivel de píxeles individuales, algo necesario para la implementación completa del escalado fraccional.
  • xx-cutouts: para obtener información sobre los recortes en la pantalla (por ejemplo, el área debajo de la cámara frontal en la pantalla del teléfono inteligente).
  • xx-zones: para crear y agregar ventanas de nivel superior a "zonas", entornos con su propio espacio de coordenadas. El protocolo permite una disposición lógica de las ventanas, en la que cada ventana se posiciona en relación con todas las demás.
  • xx-keyboard-filter: para que el cliente intercepte eventos de teclado seleccionados, modifique eventos de entrada o impida que ciertos eventos se transmitan a la superficie Wayland enfocada.
  • El protocolo xdg-session-management se ha añadido a la categoría de pruebas, lo que permite restaurar el estado y la posición de las ventanas de una sesión interrumpida en entornos basados ​​en el protocolo Wayland, por ejemplo, después de un fallo compuesto. servidor o aplicaciones.
  • El protocolo "linux-dmabuf" se ha actualizado para admitir sistemas multi-GPU. En dichos sistemas, el cliente puede negociar compuestos servidor ¿Qué GPU debería utilizarse?
  • El protocolo de gestión de color v1 se ha actualizado para admitir metadatos de imagen BT.2100 para su uso en composición. servidor controladores específicos que permiten la visualización correcta del contenido HDR creado para Windows.

Acontecimientos destacados relacionados con Wayland desde la publicación del último número:

  • Cinnamon apoya plenamente a Wayland.
  • En la biblioteca ANGLE utilizada en Chrome y AndroidSe agregó apoyo a Wayland.
  • Cuando KDE utiliza Wayland, implementa la compatibilidad con la restauración de sesiones y el protocolo Wayland xx-fractional-scale-v2 para el escalado fraccional.
  • Se ha creado una versión del controlador Synaptics X.Org para entornos basados ​​en Wayland.
  • Se ha iniciado una comprobación de preparación para que las plataformas de efectos visuales y animación sustituyan X11 por Wayland.
  • Han comenzado las pruebas del servidor compuesto Xfwl4 del proyecto Xfce.
  • La interfaz de usuario de Unity se ha recreado utilizando Wayfire y Libadwaita.
  • Servidores compuestos y entornos de escritorio actualizados: COSMIC 1.3.0, Weston 16, Phosh 0.56, Nourish 1.0.0, miracle-wm 0.10, KDE Plasma 6.7, labwc 0.20, Sway 1.2, Wayland Maker 0.8, Hyprland 0.55, Niri 26.04, LXQt 2.4.0, Cage 0.3.

Recordemos que Wayland es un protocolo para la interacción entre un servidor de composición y las aplicaciones que se ejecutan en él. Los clientes renderizan sus ventanas de forma independiente en un búfer separado, pasando la información de actualización al servidor de composición. servidorEste proceso combina el contenido de los búferes de las aplicaciones individuales para generar el resultado final, teniendo en cuenta posibles matices como la superposición de ventanas y la transparencia. En otras palabras, el servidor de composición no proporciona una API para renderizar elementos individuales, sino que opera únicamente sobre ventanas prerrenderizadas, eliminando así el doble búfer al utilizar bibliotecas de alto nivel como GTK y Qt, que se encargan de componer el contenido de las ventanas.

Wayland resuelve muchos de los problemas de seguridad de X11 en X.Org Server, ya que, a diferencia de este último, aísla la entrada y la salida para cada ventana, no permite que un cliente acceda al contenido de las ventanas de otros clientes y no permite la interceptación de eventos de entrada relacionados con otras ventanas (XLibre XServer implementa la extensión X11 Xnamespace, que proporciona aislamiento de clientes mediante la separación a nivel de espacio de nombres). La compatibilidad para trabajar directamente con Wayland está implementada para la mayoría de las plataformas utilizadas en Linux Bibliotecas gráficas como GTK, Qt, SDL, FLTK, wxWidgets, Clutter y EFL (Enlightenment Foundation Library).

La interacción con el hardware en Wayland/Weston, como la inicialización, el cambio de modo de vídeo (DRM modesetting) y la gestión de memoria (GEM para i915 y TTM para Radeon y Nouveau) para tarjetas gráficas, se puede realizar directamente a través de un módulo a nivel de kernel, eliminando la necesidad de privilegios de superusuario. Para garantizar la ejecución de aplicaciones X11 estándar en un entorno basado en Wayland, se utiliza el componente DDX XWayland (Device-Dependent X), que es similar en funcionamiento a Xwin y Xquartz para Win32 y macOS.

Fuente: opennet.ru

Compre alojamiento confiable para sitios con protección DDoS, servidores VPS VDS 🔥 Compra alojamiento web fiable con protección DDoS, servidores VPS VDS | ProHoster