labwc 0.6 llega con mejoras en la API de gráficos y mas
Ya fue liberada la nueva versión de labwc 0.6, la cual es una versión importante, ya que incluye una refactorización para usar la API de gráficos wlroots. Esto toca muchas áreas del código, particularmente el renderizado, la decoración del lado del servidor, la implementación de capas y el menú.
Para quienes desconocen de labwc 0.6, deben saber que se usa como base la biblioteca wlroots, desarrollada por los desarrolladores del entorno de usuario de Sway y que proporciona funciones básicas para organizar el trabajo del administrador compuesto basado en Wayland.
De los protocolos extendidos de Wayland, se admite wlr-output-management para configurar dispositivos de salida, layer-shell para organizar el trabajo del shell del escritorio y Foreign-toplevel para conectar sus propios paneles e interruptores de ventana.
Principales novedades de labwc 0.6
En esta nueva versión que se presenta de labwc 0.6 se destaca que se rediseñó significativamente el uso de la API de gráficos de escena proporcionada por wlroots, con ello el procesamiento se reflejó en la representación, la decoración de las ventanas, los menús y la implementación de la carcasa de la pantalla.
El procesamiento de imágenes y fuentes antes de mostrarse en la pantalla se cambió al uso de búferes en lugar de texturas (la estructura wlr_texture), lo que hizo posible garantizar el escalado correcto de la salida, ademas de que se ha simplificado el código para vincular controladores a nodos wlr_scene_nodes.
Otro cambio que se destaca de esta nueva versión, es que se proporcionó pruebas de integración continua para compilaciones de Debian, FreeBSD, Arch y Void, incluidas compilaciones que no son de xwayland.
Ademas de ello, tambien podremos encontrar que se agregó soporte para ajustar la cursiva y el peso de las fuentes (para usar fuentes en cursiva y negrita), asi como tambien que se agregó una configuración <core><cycleViewOutlines> para controlar si las vistas previas del esquema están habilitadas.
El protocolo xdg-desktop-portal-wlr se habilitó para funcionar sin configuraciones adicionales (se completó la inicialización y activación de dbus a través de systemd), lo que resolvió los problemas con el lanzamiento de OBS Studio.
Tambien se destaca en esta nueva versión de labwc 0.6 la compatibilidad implementada para el protocolo drm_lease_v1, que se utiliza para generar una imagen estéreo con diferentes búferes para los ojos izquierdo y derecho cuando se muestra en cascos de realidad virtual.
- Representación proporcionada de flechas para submenús. Se ha agregado soporte para separadores al menú.
- Opciones de depuración mejoradas.
- Se agregó soporte para escritorios virtuales.
- Se agregó soporte para usar diferentes idiomas en los menús del cliente.
- Soporte implementado para el protocolo de tiempo de presentación utilizado para mostrar video.
- Se agregó soporte para dispositivos táctiles.
- Protocolos implementados para el uso del teclado virtual y el puntero.
- Se agregó un modo para fijar una ventana encima de otras ventanas (ToggleAlwaysOnTop).
- Se agregaron configuraciones osd.border.color y osd.border.width para definir el ancho y el color del marco de la ventana.
- Se agregaron configuraciones para cambiar la demora del teclado y la configuración de repetición.
- Se agregó la capacidad de vincular operaciones para desplazarse con la rueda del mouse (de manera predeterminada, al desplazarse en el escritorio, se realiza el cambio entre escritorios virtuales).
- Se agregó soporte para desplazamiento suave y horizontal.
¿Cómo instalar LABWC?
Para quienes estén interesados en poder instalar este compositor en su sistema, deben seguir las instrucciones que compartimos a continuación.
La distribucion que cuenta con el metodo de instalación más sencillo es Fedora y es que para instalar labwc, basta con abrir una terminal y en ella vamos a teclear:
sudo dnf install labwc
Los que son usuarios de Arch Linux, Manjaro o cualquier otra distribución derivada de Arch Linux, deben abrir una terminal y en ella van a teclear el siguiente comando para descargar las dependencias necesarias:
sudo pacman -S meson wlroots cairo pango libxml2 glib2
Después de ello, van a obtener el código fuente de LABWC ejecutando el siguiente comando en la terminal:
git clone https://github.com/johanmalm/labwc cd labwc meson build ninja -C build
Ahora, para quienes son usuarios de Debian, UBuntu o cualquier otra distribución basada en cualquira de estas dos, deben teclear lo siguiente en la terminal:
git clone https://github.com/johanmalm/labwc cd labwc meson build ninja -C build
Para aquellos que estén interesados en conocer más al respecto sobre LABWC pueden visitar el sitio del proyecto en GitHub.