Topic: Help needed: Building WL with SDL3 and the future of flatpak packaging
tothxa![]() Topic Opener |
Posted at:
Yesterday 00:43 UTC+2.0
While updating the beta flatpak to have the new metainfo file to flathub(redhat)'s liking, I tried to switch to this year's runtime version, which is now RC1 on flathub-beta, but I had to revert it, because SDL2-image wasn't found by cmake. I looked up the contents of the new runtime, and it looks like they switched to SDL3. They provide SDL2-compat, but as far as I can tell, SDL doesn't have similar backward compatibility layers for the external SDL parts we use, ie. SDL-image, SDL-mixer and SDL-ttf, and the runtime only includes the SDL3 versions of these. It looks like some of you ( @kaputtnik I'd really like to switch the flatpak to the new runtime for WL1.3 (ie. start testing it ASAP), because the current one will likely go EOL before we release 1.4, and that would make flathub put big warnings up against us. BTW and in general, how important you think keeping the flatpak is? flathub (controlled by redhat) is going in a direction I very much not like, so I'd much rather spend my time on actual improvements to Widelands than on chasing down flatpak deprecations. After all, we've had appimages too for quite a while now as an alternative distro-ndependent install method. Or, if somebody steps up to take over the flatpak maintenance, I'd be more than happy to pass it on. ![]() ![]() |
kaputtnik![]() |
Posted at:
Yesterday 11:04 UTC+2.0
AFAIK sdl2-compat is a compatibility layer for just this use case, it replaces sdl2. Applications that need other sdl2 libraries, like sdl2-mixer or sdl2-image, should work OOTB with sdl2-compat. The output of dependencies on my machine:
Widelands has not switched to sdl3 so the depnecies are still sdl2 libraries:
If flatpak doesn't provide the sdl2 packages this is an issue of flatpak, imho.
I have no meaning about that. In general i think it's good to have distro independent package managers, but as ever in the opensource economy this goal is split into several independent and incompatible projects. In result application developers have more work, or more possibilities, to provide a package. If appimage do work across different Os, i am fine to have only this possibility. ![]() ![]() |
tothxa![]() Topic Opener |
Posted at:
Yesterday 18:25 UTC+2.0
I think this means you still have sdl2_{image|mixer|ttf} packages, while the flatpak runtime dropped them... Tough luck for me...
(also, SDL2-compat doesn't seem to provide the other headers in ![]() ![]() |
kaputtnik![]() |
Posted at:
Yesterday 19:00 UTC+2.0
Yes, exactly. I guess those packages are just compiled against sdl2-compat instead of sdl2. And all sdl2-compat is doing is to make sdl2 calls work with sdl3.
I can't imagine that flatpack dropped those packages while nearly every game depends on sdl2 yet. And for what reason do one wants to use flatpak if he/she can't install games with it Anyway, i do not understand much about flatpak… ![]() ![]() |