Recently the Canonical team behind the development of the Mir display server, released version 2.4 release and it has included a number of bug fixes and changes related to rendering improvements in the Graphics API.
For those who do not know about Mir, they should know that there is a screen server that is developed by Canonical, despite the fact that I abandoned the development of the Unity shell and the Ubuntu edition for Smartphones.
Mir still in demand in Canonical projects and now I knowe positions as a solution for embedded devices and Internet of things (IoT). Mir can be used as a composite server for Wayland, allowing any Wayland-based application (eg built with GTK3 / 4, Qt5, or SDL2) to run in Mir-based environments.
The compatibility layer for X, XMir, is based on XWayland, while other parts of the infrastructure used by Mir originate from Android. These parts include the Android input stack and Google’s Protocol Buffers. Mir currently runs on a variety of Linux-powered devices, including traditional desktops, IoT, and embedded products.
The Mir graphical server enables device manufacturers and desktop users to have a well defined, efficient, flexible and secure platform for their graphical environment.
Main novelties of Mir 2.4
In this new version of Mir 2.4 work has been done to improve the adaptability of the APIs related to the support of the graphics platform for use in systems with hybrid graphics. It is mentioned that in particular, mg :: Platform API is divided into DisplayPlatform and RenderingPlatform, allowing you to use different GPUs for rendering and rendering.
Another novelty that stands out is the Mir improved work on the X11 platform, Since in this new version of Mir the code for the support of the X11 platform was transferred from XLib to XCB, the ability to resize windows with Mir-based applications displayed in the X11 environment was added.
It is also mentioned that many fixes have been made to support Wayland and Xwayland and added “–driver-quirks” option to gbm-kms to exclude checks for failing devices.
From the bug fixes that were made in this new version of Mir 2.4:
- Fixed cursor position on scaled outputs
- Handling key state changes when the window is not in focus
- Correct handling of XWayland errors
- Send Unbuffered Frame Callbacks After Timeout
- Fixed resizing of shell surfaces
- Checking if cursor is locked before sending pointer movement
Finally, if you are interested in knowing more about this new version, you can consult the details In the following link.
How to install Mir on Ubuntu and derivatives?
The installation packages of this new version are prepared for Ubuntu 18.04, 21.04 and 20.04 (PPA) and Fedora 34,33 and 32.
For those who are interested in being able to install this graphic server on their systems, all they have to do is open a terminal on their systems (they can do it with the key combination Ctrl + Alt + T or with Ctrl + T) and in it we are going to type the following commands:
sudo add-apt-repository ppa:mir-team/release sudo apt-get update
With this, the repository is already added to your system, before installing the graphical server it is fully recommended that if you are using private drivers on your system for your video card or integrated, change these to free drivers, this in order to avoid conflicts.
Once we are sure that we have the free drivers activated, we can install the server by executing in the terminal:
sudo apt-get install mir
At the end you will have to restart your system so that the user session with Mir is loaded and you choose this for your session.