labwc 0.6 arrives with graphics API improvements and more

labwc

Labwc is a wlroots based window stack compositor for wayland, inspired by openbox

Ya the new version of labwc 0.6 was released, which is an important version, since includes a refactoring to use the wlroots graphics API. This touches many areas of the code, particularly rendering, server-side decoration, layer implementation, and the menu.

For those of you unfamiliar with labwc 0.6, you should know that it is based on the wlroots library, which was developed by the developers of the Sway user environment and provides basic functions for organizing the work of the Wayland-based composite manager.

Of Wayland's extended protocols, wlr-output-management is supported for configuring output devices, layer-shell for organizing the work of the desktop shell, and Foreign-toplevel for connecting your own panes and window switches.

Main novelties of labwc 0.6

In this new version of labwc 0.6 that is presented, it is highlighted that significantly redesigned the use of the graphics API of scene provided by wlroots, thereby the processing was reflected in the rendering, the decoration of windows, menus and the implementation of the screen casing.

El image and font processing before displaying on screen switched to buffering instead of textures (the wlr_texture structure), which made it possible to ensure correct scaling of the output, plus the code for binding controllers to wlr_scene_nodes has been simplified.

Another change that stands out in this new version is that continuous integration tests provided for Debian, FreeBSD, Arch and Void builds, including non-xwayland builds.

In addition to that, we can also find that added support for adjusting the italics and weight of fonts (to use italic and bold fonts), as well as adding a setting to control whether schematic previews are enabled.

The xdg-desktop-portal-wlr protocol was enabled to work without additional configuration (dbus initialization and activation via systemd completed), which resolved issues with the OBS Studio release.

Also highlighted in this new version of labwc 0.6 is the Implemented support for the drm_lease_v1 protocol, which is used to generate a stereo image with different buffers for the left and right eyes when displayed in virtual reality headsets.

  • Proportioned representation of arrows for submenus. Support for separators has been added to the menu.
  • Improved debugging options.
  • Added support for virtual desktops.
  • Added support for using different languages ​​in client menus.
  • Implemented support for the presentation time protocol used to display video.
  • Added support for touch devices.
  • Protocols implemented for the use of the virtual keyboard and the pointer.
  • Added a way to pin a window on top of other windows (ToggleAlwaysOnTop).
  • Added osd.border.color and osd.border.width settings to define the width and color of the window frame.
  • Added settings to change keyboard delay and repeat settings.
  • Added the ability to link operations to scroll with the mouse wheel (by default, scrolling on the desktop switches between virtual desktops).
  • Added support for smooth and horizontal scrolling.

How to install LABWC?

For those who are interested in being able to install this composer on their system, they must follow the instructions that we share below.

The distribution that has the easiest installation method is Fedora and to install labwc, just open a terminal and in it we are going to type:

sudo dnf install labwc

Those who are users of Arch Linux, Manjaro or any other distribution derived from Arch Linux, they must open a terminal and in it they will type the following command to download the necessary dependencies:

sudo pacman -S meson wlroots cairo pango libxml2 glib2

After that, they will get the LABWC source code by running the following command in the terminal:

git clone https://github.com/johanmalm/labwc
cd labwc
meson build
ninja -C build

Now, for those who are users of Debian, UBuntu or any other distribution based on either of these two, they must type the following in the terminal:

git clone https://github.com/johanmalm/labwc
cd labwc
meson build
ninja -C build

For those who are interested in learning more about LABWC, they can visit the site of the project on GitHub.


The content of the article adheres to our principles of editorial ethics. To report an error click here!.

Be the first to comment

Leave a Comment

Your email address will not be published. Required fields are marked with *

*

*

  1. Responsible for the data: AB Internet Networks 2008 SL
  2. Purpose of the data: Control SPAM, comment management.
  3. Legitimation: Your consent
  4. Communication of the data: The data will not be communicated to third parties except by legal obligation.
  5. Data storage: Database hosted by Occentus Networks (EU)
  6. Rights: At any time you can limit, recover and delete your information.