Sway is a tiled Wayland compositor and a drop-in replacement for the i3 window manager for X11
The release of the new version of Sway 1.9 which arrives shortly after a year of development and represents the work of 67 contributors, who implemented 238 changes for this new version.
For those who don't know about Sway, they should know that this is developed as a modular project built on top of the wlroots library, which contains all the basic primitives for organizing the work of the composite manager.
Sway has i3 compatibility at the command level, configuration files and IPC, which facilitates the transition from i3 to Sway seamlessly, and uses Wayland instead of X11 as the display server protocol, offering a similar experience to i3 but with significant improvements.
Main new features of Sway 1.9
In this new version that is presented of Sway 1.9, the environment now has the new functions of the wlroots 0.17 library, such as the Support for various Wayland protocols: content-type-v1 to process information about the content displayed, xwayland-shell-v1 to link X11 windows to Wayland surfaces, wp-fractional-scale-v1 for fractional scaling and security-context-v1 to isolate sandboxes and shape cursor-v1 to customize the appearance of the cursor.
Improved support for the xdg-activation-v1 protocol, that facilitates the transfer of focus between different Layer 1 Wayland surfaces, taking into account virtual desktops and multi-monitor setups, providing a more fluid user experience when switching between different work areas and applications.
Another change that stands out in this new version of Sway 1.9 is the migration of rendering code to new wlroots rendering API, which has improved the overall performance of the system.
In addition, the addition of a new configuration option to disable primary selection offers users greater control over how they interact with the system and how data is handled on the clipboard.
It also highlights the inclusion of a new input command to set the rotation angle Libinput and lock the scroll button expands input device configuration and customization capabilities, which can improve user convenience and productivity.
Of the other changes that stand out of this new version:
- Support for Layer-Shell on-demand keyboard interactivity improves integration and user experience when working with applications that require text and command input.
- Adding support for IPC output event provides developers the ability to interact and control events related to video output
- Changing the default menu to wmenu may impact how users interact with the system and access the features and applications available in the Wayland environment.
- Removing support for the KDE idle protocol and replacing it with the standard idle-notify-v1 protocol may impact compatibility with certain applications and desktop environments that rely on this functionality.
- Allowing tablet tool buttons to resize in floating mode improves usability and efficiency when working with graphics tablets and similar devices.
Finally, if you are interested in knowing more about this new version, you can check the details at the following link.
How to get Sway?
For those who are interested in being able to install Sway on Ubuntu and its derivatives, it is important to take into account some requirements and considerations:
- Wayland: Sway requires Wayland to be available on the system.
- Graphics drivers: Sway does not support proprietary graphics drivers. They must be uninstalled and use free graphics drivers.
The installation of Sway is simple and all you have to do is add the corresponding repository and execute the following commands in a terminal:
sudo add-apt-repository ppa:samoilov-lex/sway sudo apt install sway
While for those who prefer to compile, they must obtain the source code by typing the following:
git clone https://github.com/swaywm/sway.git
Run these commands:
meson build/ ninja -C build/ sudo ninja -C build/ install
On systems without logind, you need to suid the balancing binary:
sudo chmod a+s /usr/local/bin/sway
Sway will remove root permissions shortly after startup.