this post was submitted on 12 Jan 2026
324 points (99.4% liked)
Linux Gaming
24079 readers
341 users here now
Discussions and news about gaming on the GNU/Linux family of operating systems (including the Steam Deck). Potentially a $HOME away from home for disgruntled /r/linux_gaming denizens of the redditarian demesne.
This page can be subscribed to via RSS.
Original /r/linux_gaming pengwing by uoou.
No memes/shitposts/low-effort posts, please.
Resources
WWW:
- Linux Gaming wiki
- Gaming on Linux
- ProtonDB
- Lutris
- PCGamingWiki
- LibreGameWiki
- Boiling Steam
- Phoronix
- Linux VR Adventures
Discord:
IRC:
Matrix:
Telegram:
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Running another uarch is a whole new level of complexity vs just running on a different OS but with the same uarch, especially if concurrency is involved because translating from one instruction set to another can break atomicity assumptions that concurrency depends on to maintain coherency. You'd need to do thorough analysis of the code to determine where special care is needed, and even then, it won't be trivial setting it up in a way that avoids deadlock because you have to understand what the threads are doing before you can say if it's safe for one thread to wait for another (since they could end up waiting for each other).
Whereas running code meant for a different OS just requires implementing that OS' API (and behaviour, possibly including undocumented behaviour some code relies on, which can vary from application to application, hence windows compatibility modes where they add a translation layer themselves). Not saying this is trivial, but compared to the above problem, it kinda is.
Not that ARM support is impossible, just if they manage that, it will be proclaimed loudly, not something that requires digging. If they don't say it supports ARM, just assume it doesn't.
While Wine by itself won't have that support, there is work being done on Wine-on-FEX to run x86 Windows apps on ARM Linux, being funded by Valve as they plan to use it on the Steam Frame, so it's closer than you might think.
So an ARM ReactOS is more likely than an ARM Wine then, I guess.
Yeah, when you're compiling from source code, it's much easier to add in ARM support. Kernels do need to handle more hardware-specific stuff, like interrupt handling, context switching, feature enablement and the like will likely need custom ASM code and might have different parameters/events to handle. But at the user level, you can often compile for ARM by just changing a few command line arguments and it'll be fine as long as you don't rely on inline ASM and have ARM versions of any libraries you need.
You still might need to do some adjustments for specific behavior differences when it comes to concurrency and atomicity of operations. It didn't surprise me to see that the previous attempt to make an ARM ReactOS didn't support multi-threading, because trying to enable it was probably an unreliably buggy mess with race conditions all over the place.