> Обычно достаточно для 32 битной игры поставить 32 битный линуксТы не прав. Во-первых, никому не нужно устанавливать 32-битную систему, чтобы воспользоваться Wine. А если работает Wine, значит работают и 32-битные игры. Я прямо сейчас играю в Team Fortress 2 32-битный (64-битный не выходил) в 64-битной системе. Обычный Debian с multilib.
> Но вообще, у старых билдов на sdl1 очень не здорово с поддержкой сегодня
Во-вторых, без sdl1 у тебя бы не работал Dosbox. На SDL2 был переведён лишь Dosbox Staging, тогда как досовские игры в Стиме обёрнуты в классический Dosbox, и он у тебя работает.
Единственная проблема sdl1 может быть только в том, что некоторые игры просят установить его в систему. То есть, ты запускаешь условный World Of Goo, а он тебе "libSDL-1.2.so.0 not found". Устанавливаешь библиотеку, и всё работает. Никаких проблем совместимости у этой библиотеки нет. Я прямо сейчас ей пользуюсь в Debian 11.
> но им в основном нужна старая glibc
В-третьих, у Glibc есть обратная совместимость. Нет прямой, но есть обратная. Напомню, прямая совместимость, это когда прога, которую собирали и линковали с новой версией библиотеки, будет работать со старой, а обратная, это когда прога, собранная со старой версией библиотеки, будет работать с новой. Так вот, любая прога, собранная со старым Glibc, будет работать с новой. Какие-то проблемы, насколько я помню, были в древнючих версиях вроде 2.2.5. Но начиная с версий 2.3.x, совместимость железобетонная.
> а той нужно ядро, собранное с определёнными параметрами.
В-четвёртых, в линуксе обеспечивается совместимость программного обеспечения с новыми версиями ОС. Один раз был случай, когда в утилите kdesu возникала ошибка, оказалось что в ядре был баг, и kdesu это учитывал, а когда баг поправили, утилита сломалась. И знаешь что? Линус Торвальдс запретил менять поведение ядра, так как пользователя не волнует, если раньше программа работала, а сейчас нет.
Это у драйверов ABI ядра меняется каждый релиз. У программ - нет.