Platform Backends#
In Slint, a backend is the module that encapsulates the interaction with the operating system, in particular the windowing sub-system. Multiple backends can be compiled into Slint and one backend is selected for use at run-time on application start-up. You can configure Slint without any built-in backends, and instead develop your own backend by implementing Slint’s platform abstraction and window adapter interfaces.
The backend is selected as follows:
The developer provides their own backend and sets it programmatically.
Else, the backend is selected by the value of the
SLINT_BACKEND
environment variable, if it is set.Else, backends are tried for initialization in the following order:
qt
winit
linuxkms
The following table provides an overview over the built-in backends. For more information about the backend’s capabilities and their configuration options, see the respective sub-pages.
Backend Name | Description | Built-in by Default |
---|---|---|
qt | The Qt library is used for windowing system integration, rendering, and native widget styling. | Yes (if Qt installed) |
winit | The winit library is used to interact with the windowing system. | Yes |
linuxkms | Linux's KMS/DRI infrastructure is used for rendering. No windowing system or compositor is required. | No |