FreeRDP has experimental support for sdl3. We now have libsdl3 and sdl3-ttf in the tree, so we could enable it. I tried to build it with the latest 3.14.1 and it seemed to work better than the sdl2 client. The ebuild diff is quite simple, but I think libsdl3 needs to have any of the gui use flags enabled (e.g. X or wayland). Reproducible: Always --- /var/db/repos/gentoo/net-misc/freerdp/freerdp-3.14.1.ebuild 2025-04-01 10:40:29.052237321 +0300 +++ freerdp-3.14.1-r1.ebuild 2025-04-24 10:59:56.040532145 +0300 @@ -27,7 +27,7 @@ LICENSE="Apache-2.0" SLOT="3" -IUSE="aad alsa cpu_flags_arm_neon +client cups debug +ffmpeg +fuse gstreamer +icu jpeg kerberos openh264 pulseaudio sdl server smartcard systemd test usb valgrind wayland X xinerama xv" +IUSE="aad alsa cpu_flags_arm_neon +client cups debug +ffmpeg +fuse gstreamer +icu jpeg kerberos openh264 pulseaudio sdl sdl3 server smartcard systemd test usb valgrind wayland X xinerama xv" RESTRICT="!test? ( test )" BDEPEND+=" @@ -74,6 +74,10 @@ media-libs/libsdl2[haptic(+),joystick(+),sound(+),video(+)] media-libs/sdl2-ttf ) + sdl3? ( + media-libs/libsdl3 + media-libs/sdl3-ttf + ) server? ( X? ( x11-libs/libXcursor @@ -146,9 +150,8 @@ -DWITH_CCACHE=OFF -DWITH_CLIENT=$(option client) - -DWITH_CLIENT_SDL=$(option sdl) - # https://bugs.gentoo.org/951452 - -DWITH_CLIENT_SDL3=OFF + -DWITH_CLIENT_SDL2=$(option sdl) + -DWITH_CLIENT_SDL3=$(option sdl3) -DWITH_SAMPLE=OFF -DWITH_CUPS=$(option cups)