Join us on our own very special Reddit on /r/Linuxers.

SDL 2.0.22 will default to Wayland on Linux

By - | Views: 16,535

Simple DirectMedia Layer (SDL) is one of the most important pieces of open source for Linux gamers, as it's the tech used by various game engines and games. It's also about to continue changing the game for the Linux desktop in the upcoming version.

What does it actually do? It's a cross-platform development library designed to provide low level access to audio, keyboard, mouse, joystick, and graphics hardware.

It has been announced that the SDL 2.0.22 will default to Wayland, preferring it over X11. This is another big step towards Wayland properly being a replacement for the old and crusty X11 everywhere. With this we might end up seeing more games and applications be native to Wayland, rather than having to run through XWayland.

Developer Ryan C. Gordon (also known as Icculus) mentioned on Twitter: "If you or your distro has not supplied a libdecor, you absolutely want to get that in place by around March 2022". A lot of the heavy lifting involved was done by Ethan Lee (also known as flibitijibibo), who mentioned on Twitter that almost all of the work involved was funded by sponsors of their GitHub.

Article taken from GamingOnLinux.com.
31 Likes
We do often include affiliate links to earn us some pennies. We are currently affiliated with GOG and Humble Store. See more here.
About the author -
author picture
I am the owner of GamingOnLinux. After discovering Linux back in the days of Mandrake in 2003, I constantly came back to check on the progress of Linux until Ubuntu appeared on the scene and it helped me to really love it. You can reach me easily by emailing GamingOnLinux directly.
See more from me
23 comments
Page: 1/3»
  Go to:

Zappor 27 Jan
So you can use SDL 2.0.22 to run Linux native SDL games without XWayland, like Stellaris, Factorio, Jupiter Hell.
They usually ship with their own copy of SDL but you can override it with SDL_DYNAMIC_API=/usr/lib/x86_64-linux-gnu/libSDL2-2.0.so.0 for example.
AussieEevee 27 Jan
So if you're using xorg.... you don't get this? I honestly am not sure I understand what this article is saying.
Liam Dawe 27 Jan
Quoting: AussieEeveeSo if you're using xorg.... you don't get this? I honestly am not sure I understand what this article is saying.
It will continue to work fine with X11 it's not dropping support, but developers using it will see Wayland as the default now.
iiigg4giy 27 Jan
More Wayland is always good to hear but I get confused how these things all fit together. What's the difference between SDL and vulkan for example?
slapin 27 Jan
  • Supporter Plus
That is quite stupid as they could check for wayland session, I wonder why this even needed, PR? or RedHat paid them?
slapin 27 Jan
  • Supporter Plus
Quoting: ZapporSo you can use SDL 2.0.22 to run Linux native SDL games without XWayland, like Stellaris, Factorio, Jupiter Hell.
They usually ship with their own copy of SDL but you can override it with SDL_DYNAMIC_API=/usr/lib/x86_64-linux-gnu/libSDL2-2.0.so.0 for example.

That won't affect SDL1 games.
Samsai 27 Jan
Quoting: iiigg4giyMore Wayland is always good to hear but I get confused how these things all fit together. What's the difference between SDL and vulkan for example?
SDL is a platform abstraction library, Vulkan is a graphics (and GPGPU?) API. So the overall way these would fit together is someone starts a game that uses SDL on a Wayland based desktop, SDL realizes it is running on Wayland and makes appropriate calls to create a Wayland window and then sets up a Vulkan context for that window. Then the game can start talking Vulkan and game graphics get drawn where they should be.
Zappor 27 Jan
Quoting: slapinThat won't affect SDL1 games.

Right, this is SDL2 so SDL2 games only!
Zappor 27 Jan
Quoting: slapinThat is quite stupid as they could check for wayland session, I wonder why this even needed, PR? or RedHat paid them?

When an SDL2 game starts it tries to find a display. SDL 2.0.20 and earlier checked for an X11 display first and through the magic of XWayland they found one. And this was the desired outcome also since there were still a number of bugs in SDL's Wayland backend.

But now with basically all the (known) bugs fixed in the Wayland backend, they can check for a pure Wayland server first before checking for an X11 connection.

I.e, they changed the priority of the backends now that most SDL2-Wayland bugs are fixed.


Last edited by Zappor on 27 January 2022 at 12:29 pm UTC
BielFPs 27 Jan
Awesome, I finally won't need to force Wayland through steam startup parameters anymore (but I will still need to override the game library on some cases)

Now I only need to wine/proton to mainline Wayland patches as default, then I can game without x11 on almost all of my games.

Also waiting to firefox to do the same in the main version.
While you're here, please consider supporting GamingOnLinux on:

Reward Tiers: Patreon. Plain Donations: Liberapay or PayPal.

This ensures all of our main content remains totally free for everyone with no article paywalls. We also don't have tons of adverts, there's also no tracking and we respect your privacy. Just good, fresh content. Without your continued support, we simply could not continue!

You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
Login / Register

Or login with...
Sign in with Steam Sign in with Twitter Sign in with Google
Social logins require cookies to stay logged in.