Steam and Linux gaming is safe: Fedora will not drop 32-bit support after all — dev says proposal was 'not some conspiracy to break the gaming use case'

Linux
(Image credit: Shutterstock (539485015))

The developers behind the Fedora Linux distribution have officially withdrawn their proposal to drop 32-bit support from the OS after severe backlash from the community. Discovered by GamingOnLinux, Fabio Valentini, a member of the Fedora Engineering Steering Committee, clarified in a discussion thread that 32-bit removal from Fedora 44 was "just the earliest 'reasonable' target" and wasn't a plan he fully expected to go through.

The programmer was disappointed by the sheer number of commenters responding harshly to the change, saying, "I was expecting a lot of feedback on this one, but not hundreds of people shouting 'DON’T DO THIS, WHY DON’T YOU CARE ABOUT YOUR USERS, I WILL SWITCH DISTROS IMMEDIATELY levels of feedback."

Fabio Valentini withdraws proposal to remove 32-bit support from Fedora 44

(Image credit: discussion.fedoraproject.org)

The programmer still believes in the proposal, noting that keeping 32-bit support around won't make the problems the proposal attempted to eliminate go away. 32-bit support is rapidly declining in the industry, and moving Fedora to 64-bit exclusively will give Fedora maintainers and developers more breathing room to work on more important things in the operating system. "Dealing with widely used software falling out from under our feet won’t be fun," Valetini said in regards to keeping 32-bit support around for now.

No timeline was provided for when the proposal might be reconsidered. But, given that 32-bit support is being dropped by many software developers in the industry—even Windows 11 no longer ships with a 32-bit version—there's little doubt that Fedora will eventually drop 32-bit support, regardless of the circumstances.

Fedora made headlines last week when the distribution's maintainers announced the proposal to remove 32-bit packages from the upcoming version, Fedora 44. The news startled gamers, as the change had the potential to impact support for Steam, which still relies on 32-bit code, potentially hurting the PC gaming user base running on Fedora. Worse still, the change would also allegedly force SteamOS clone Bazzite to shut down entirely for the same reasons. For now, those users and projects get a reprieve.

Aaron Klotz
Contributing Writer

Aaron Klotz is a contributing writer for Tom’s Hardware, covering news related to computer hardware such as CPUs, and graphics cards.

  • usertests
    Co774tWvFqo
    Reply
  • eye4bear
    Admin said:
    The developers behind Fedora have withdrawn their proposal to drop 32-bit support from the OS. Fedora 44 will maintain 32-bit support, allowing Steam to keep functioning on the Linux distribution.

    Steam and Linux gaming is safe: Fedora will not drop 32-bit support after all — dev says proposal was 'not some conspiracy to break the gaming use... : Read more
    I read about all the hate towards Fedora, but I didn't see anything aimed at Steam for not working on updating their software.
    Reply
  • ezst036
    eye4bear said:
    I read about all the hate towards Fedora, but I didn't see anything aimed at Steam for not working on updating their software.
    I was thinking the same thing. Because Valve got pwned by Apple, we know based on evidence that Valve has a 64-bit Steam client and its released into the wild.

    Why is Valve holding this Steam client back from being released (on Windows? and) on Linux? Valve usually gets a lot of things right and I'm happy to toot the horn about Valve's awesomeness but on this one they are really dropping the ball and letting all of us down.

    Fedora doesn't deserve all the heat they've taken on this.
    Reply
  • palladin9479
    ezst036 said:
    I was thinking the same thing. Because Valve got pwned by Apple, we know based on evidence that Valve has a 64-bit Steam client and its released into the wild.

    Why is Valve holding this Steam client back from being released (on Windows? and) on Linux? Valve usually gets a lot of things right and I'm happy to toot the horn about Valve's awesomeness but on this one they are really dropping the ball and letting all of us down.

    Fedora doesn't deserve all the heat they've taken on this.
    That's not what is going on.

    Steam binaries are already 64-bit. Not all games on steam are 64-bit, especially those without native Linux versions. 32-bit code requires 32-bit libraries and abstraction layers. Wine has two sets of binaries / libraries, the 64-bit version for 64 bit NT applications and the 32-bit version for 32-bit NT applications. Removing 32-bit support from the OS effectively disables those 32-bit applications and makes playing NT games on Linux very difficult. This is especially true for games that come with launchers or config tools, those are usually 32-bit while the game binary itself will be 64-bit.
    Reply
  • ravewulf
    He's severely out of touch if he didn't expect the backlash he got. Moving open-source software to 64-bit is all well and good if you put in the effort but there will always be legacy 32-bit closed-source software that people want to run.
    Reply
  • ezst036
    palladin9479 said:
    That's not what is going on.

    Steam binaries are already 64-bit. Not all games on steam are 64-bit, especially those without native Linux versions. 32-bit code requires 32-bit libraries and abstraction layers. Wine has two sets of binaries / libraries, the 64-bit version for 64 bit NT applications and the 32-bit version for 32-bit NT applications. Removing 32-bit support from the OS effectively disables those 32-bit applications and makes playing NT games on Linux very difficult. This is especially true for games that come with launchers or config tools, those are usually 32-bit while the game binary itself will be 64-bit.
    I was generally responding to the previous comment. However at least on Linux, Steam itself is known not to be 64 bit as of somewhat recently. I've never seen more recent info as to if/when that changed: (it could be 64 by now)

    https://github.com/ValveSoftware/steam-for-linux/issues/10318
    I appreciate and understand the rest of the comment about libraries, it is a good summary. This is all related to WINE WoW64, which I think Arch may have upstreamed a few days ago.

    BKB_OT593vsView: https://www.youtube.com/watch?v=BKB_OT593vs
    Reply
  • palladin9479
    ezst036 said:
    I was generally responding to the previous comment. However at least on Linux, Steam itself is known not to be 64 bit as of somewhat recently. I've never seen more recent info as to if/when that changed: (it could be 64 by now)

    https://github.com/ValveSoftware/steam-for-linux/issues/10318
    I appreciate and understand the rest of the comment about libraries, it is a good summary. This is all related to WINE WoW64, which I think Arch may have upstreamed a few days ago.

    BKB_OT593vsView: https://www.youtube.com/watch?v=BKB_OT593vs

    Steam has multiple components. The launcher gui is either 32-bit or 64-bit depending on OS, they just pick whatever target they want on compile time as it supports both. The steamwebhelper launches as whatever your OS supports is a custom web browser, basically the store, forums and everything not launching games.

    That's all trivial though as Valve already has 64 bit support. The issue has always been support for 32-bit libraries. Syswow64 isn't arch specific and has nothing to do with linux. It's NT's way of managing multiple 32-bit libraries on a 64-bit native OS. Take somethings like d3d9.dll, inside system32 there will be the 64-bit native binary, but that is unusable to 32-bit executables. Instead when a 32-bit executable goes to call it, syswow64 redirects it to one of the 32-bit versions it holds.

    Wine64 has supported this for awhile and in fact I have a 64-bit prefix setup right now for a game that uses a 32-bit launcher to start a 64-bit executable. The 32-bit libraries still require 32-bit kernel support and abstraction layer. 32-bit code absolutely can not run on a CPU in 64-bit exclusive long mode. Instead 32-bit code must run inside a submode called compatibility mode. All those 32 bit OS libraries are there to ensure code inside that compatibility mode doesn't attempt to exit and run in long mode resulting in process exceptions.
    Reply