(→How To Test: Link to COPR) |
(announcing the change) |
||
Line 20: | Line 20: | ||
== Current status == | == Current status == | ||
[[Category: | [[Category:ChangeAnnounced]] | ||
<!-- When your change proposal page is completed and ready for review and announcement --> | <!-- When your change proposal page is completed and ready for review and announcement --> | ||
<!-- remove Category:ChangePageIncomplete and change it to Category:ChangeReadyForWrangler --> | <!-- remove Category:ChangePageIncomplete and change it to Category:ChangeReadyForWrangler --> | ||
Line 38: | Line 38: | ||
ON_QA -> change is fully code complete | ON_QA -> change is fully code complete | ||
--> | --> | ||
* [Announced] | * [https://lists.fedoraproject.org/archives/list/devel-announce@lists.fedoraproject.org/thread/RITSN3NDUESKAVMOO4GBW6ZKANCVWJZ6/ Announced] | ||
* [ | * [https://discussion.fedoraproject.org/t/f42-change-proposal-replace-sdl-2-with-sdl2-compat-using-sdl-3-self-contained/138987 Discussion thread] | ||
* FESCo issue: <will be assigned by the Wrangler> | * FESCo issue: <will be assigned by the Wrangler> | ||
* Tracker bug: <will be assigned by the Wrangler> | * Tracker bug: <will be assigned by the Wrangler> |
Revision as of 18:22, 3 December 2024
Replace SDL 2 with sdl2-compat using SDL 3
Summary
This Change proposes to replace SDL 2 with sdl2-compat, which uses SDL 3.
Owner
- Name: Neal Gompa
- Email: ngompa13@gmail.com
Current status
- Targeted release: Fedora Linux 42
- Last updated: 2024-12-03
- Announced
- Discussion thread
- FESCo issue: <will be assigned by the Wrangler>
- Tracker bug: <will be assigned by the Wrangler>
- Release notes tracker: <will be assigned by the Wrangler>
Detailed Description
SDL 2 feature development ended some time ago with efforts being focused on SDL 3. However, many older games still use SDL 2 and cannot change to SDL 3. In order to continue to support SDL 2 games in the modern world, let's replace SDL 2 with sdl2-compat, which uses SDL 3. This also has the effect of moving SDL 1.2 games to SDL3 through sdl12-compat running on sdl2-compat.
Feedback
Benefit to Fedora
Switching SDL 2 powered games to use sdl2-compat
ensures that SDL-based applications continue to use the actively developed codebase. This also has the effect of SDL 1.2 powered games that use sdl12-compat
to run on SDL3 as well through the fully supported path of sdl12-compat
running on sdl2-compat
running on SDL3.
Scope
- Proposal owners:
- Package libsdl2-compat (native: RH#2316576, mingw: RH#2330101)
- Retire
SDL2
andmingw-SDL2
completely
- Other developers:
- Release engineering: #12485
- Policies and guidelines: N/A (not needed for this Change)
- Trademark approval: N/A (not needed for this Change)
- Alignment with the Fedora Strategy: N/A (not needed for this Change)
Upgrade/compatibility impact
The SDL2
package would be transparently upgraded to libsdl2-compat
package and games using it should just transparently start using SDL 3.0.
How To Test
The testing steps are simple:
0. Enable the SDL2onSDL3
COPR: dnf copr enable ngompa/SDL2onSDL3
1. Swap SDL2
for sdl2-compat
: dnf swap SDL2 sdl2-compat
2. Run something that uses SDL 2 like supertuxkart
and see that it works.
3. Run something that uses SDL 1.2 like icebreaker
and see that it works.
Issues should be reported upstream for the fastest response: https://github.com/libsdl-org/sdl2-compat/issues
User Experience
There shouldn't be a noticeable user impact, other than possibly a smoother experience because applications are using SDL 3.0.
Dependencies
Contingency Plan
- Contingency mechanism: Revert back to shipping SDL2 / mingw-SDL2 packages
- Contingency deadline: Final Freeze
- Blocks release? N/A (not a System Wide Change)
Documentation
N/A (not a System Wide Change)
Release Notes
Applications that use SDL 2 will now transparently use SDL 3 through the sdl2-compat
package. This makes it so applications that historically used SDL 2 now use SDL 3.