Call for testing: sdl2-compat

Simon McVittie <[email protected]> Mon, 15 Sep 2025 11:02:41 +0100
Newsgroups gmane.linux.debian.devel.games,gmane.linux.debian.devel.general
Message-ID <[email protected]>
sdl2-compat is a reimplementation of the SDL 2 API using SDL 3, allowing 
distros to keep SDL 2 games working without having to maintain "classic" 
SDL 2 as an independent project forever. It's the same idea as 
sdl12-compat, which replaced libsdl1.2 in Debian 13.

Now that the Debian 14 release cycle has started, one of the items on my 
to-do list is seeing whether we can replace "classic" SDL2 with 
sdl2-compat. To do that, I need some help from other Debian 
contributors, and especially the games team.

Please test SDL2 apps and games in Debian (or even SDL 1.2 games via 
sdl12-compat!), and see whether they still work with sdl2-compat. There 
are two configurations that make sense:

1. "Classic" SDL2 as the default, sdl2-compat available as opt-in:

    $ sudo apt install libsdl2-2.0-0 libsdl2-compat

    $ SDL2COMPAT_DEBUG_LOGGING=1 \
      SDL_DYNAMIC_API='/usr/$LIB/sdl2-compat/libSDL2-2.0.so.0' \
      openarena

2. Instead making sdl2-compat the default, with an opt-out to go back to
    "classic" SDL2 temporarily:

    $ sudo apt install libsdl2-compat-shim libsdl2-classic

    $ SDL2COMPAT_DEBUG_LOGGING=1 \
      openarena

    (Add SDL_DYNAMIC_API='/usr/$LIB/sdl2-classic/libSDL2-2.0.so.0' to
    try with classic SDL 2 to check whether a bug is really a regression.
    This configuration is available in testing/unstable/experimental
    but not in trixie.)

If an app/game works with "classic" SDL2, but does not work with 
sdl2-compat, please report a bug upstream and/or in Debian with all the 
details, including version numbers and SDL2COMPAT_DEBUG_LOGGING=1 
output.

Please see 
<https://salsa.debian.org/sdl-team/sdl2-compat/-/blob/HEAD/debian/README.Debian> 
(or <file:///usr/share/doc/libsdl2-compat/README.Debian.gz> in 
unstable/experimental) for more information, especially if you are using 
a Wayland desktop (GNOME, KDE Plasma, Weston, Sway, etc.)

The versions of sdl2-compat and SDL3 in Debian 13 'trixie' are not very 
new, and have some known bugs. They are enough for some games but I 
wouldn't recommend putting much effort into testing them - if you report 
a bug, upstream will just ask whether it still occurs in the latest 
version.

The latest upstream stable releases of sdl2-compat and SDL3 are 
available in Debian testing and unstable. I intend to keep these up to 
date (co-maintainers welcome of course).

Recent upstream development snapshots of sdl2-compat and SDL3 are 
available in Debian experimental. They might have more bug fixes than 
the ones in unstable, but they might also have more bugs. If you find 
regressions, please report them upstream and in Debian. If you find 
apps/games that work with the versions in experimental but not the 
versions in unstable, please report those as Debian bugs (tagged as 
fixed-upstream or with version tracking), so that we can get an idea of 
how common this is.

Thanks,
     smcv