steam-for-linux
steam-for-linux copied to clipboard
Steam downloading/update game to incorrect OS version
Your system information
- Steam client version (build number or date): 1689034492
- Distribution (e.g. Ubuntu): Manjaro
- Opted into Steam client beta?: [Yes/No] no
- Have you checked for system updates?: [Yes/No] yes
- GPU: RX 6700 XT
Please describe your issue in as much detail as possible:
Describe what you expected should happen and what did happen. Please link any large code pastes as a Github Gist
Steam will download the Windows version of 7 Days to die and if I do get it to download the correct native Linux version the next time I open Steam it will say it's updating Steam but will change it to the Windows version even tho I didn't tick the box to use proton on the game.
Now I am forced to update when I already have the game files and I can no longer play the game though proton due to them breaking EAC in Alpha 21 which I have also reported..
https://community.7daystodie.com/topic/33156-7-days-to-die-alpha-21-broke-eac-linux-proton/
Hello @coreybruce, as a basic check, can you go the game in Steam's library view, click on the ⓘ symbol on the right side, and verify that there's no line with something like Runs on this computer via Steam Play. Proton # selected by you for this title.
before you restart Steam, and is visible after you restart Steam?
Sure, I also had to turn on and off proton to get it to download the correct version, waiting to see what this "update" does
Here is a couple screenshots
I'm having the same issue on linux mint with tf2
Can confirm as of today's set of hotfixes for TF2, it's suddenly started downloading the Windows version instead, and I have to explicitly force the Steam Linux Runtime to get the native version back.
EDIT: Once the native version is installed again, it stays installed until the next update is pushed.
I’ve been having the same problem with X4: Foundations and a few other games. Toggling the “Force the use of a specific Steam Play compatibility tool” checkbox in the game’s properties twice will cause Steam to update back to the native Linux binaries.
In the Steam settings, on the Compatibility tab, “Enable Steam Play for supported titles” is checked while “Enable Steam Play for all titles” is not. In the past I have used the latter setting to play games using Proton which were not at the time officially supported by it, but at the moment I am not.
Steam Version: 1690583737 Steam Client Build Date: Fri, Jul 28 11:44 UTC -08:00 Steam Web Build Date: Fri, Jul 28 15:21 UTC -08:00 Steam API Version: SteamClient020
Came back to report that the issue has been resolved for me but is anyone else still having issues?
I am experiencing the issue still (Arch Linux) on War Thunder. Toggling "Force compatibility tool" fixes it on every Steam startup.
I am experiencing the issue still (Arch Linux) on War Thunder. Toggling "Force compatibility tool" fixes it on every Steam startup.
Damn that's annoying
Hello,
We have not been able to reproduce. It is possible to create a similar problem by doing the following:
- set the runtime override to windows, make sure it gets installed and runs fine (I used X4)
- disable the override to proton in the game properties
- immediately exit steam (not giving time to the content system to switch the title back to native)
The next time you start Steam, it will think it has the native version and will launch the .exe without any proton wrappings (that may or may not work, the rest of your OS might pickup the slack if you some have some sort of standalone wine/proton).
This can be fixed by toggling the runtime override and waiting for the full content update. It's not a persistent issue though, contrary to what @RA3236 reports this doesn't persist in a future steam client launch.
While what I'm reporting above is a bug, I'm more concerned by a situation where this becomes persistent somehow. @RA3236 would you be able to email your content_log.txt and compat_log.txt files to me? ([email protected])
We haven't been able to create a situation where the content system would download the windows version when you hit play (@coreybruce) , or switch to windows when the title updates (@FuzzyQuills).
This can be fixed by toggling the runtime override and waiting for the full content update. It's not a persistent issue though, contrary to what @RA3236 reports this doesn't persist in a future steam client launch.
I have somehow just fixed the issue by launching the Arch steam
package rather than the steam-native-runtime
package once, so it's possible it's a library issue.
What happened is that immediately upon opening Steam downloads the Steam Common Redistributables and then immediately downloads the Windows version of WT (which was around a 500MB update). Once that was done, I could fix it until the next Steam startup by hitting "Force the use of a specific Steam Play compatibility tool" twice and doing the 80MB update straight afterwards. The issue started around when I tried using the Windows version via Proton GE, though I cannot remember the exact steps required.
I will email you the log files in case that helps at all however.
EDIT: The issue has started again, and won't go away by switching runtime libraries.
Thanks, got the logs will look through. We don't recommend using steam-native-runtime
, Arch's modifications are likely to cause more problems and hide real issues from us. Although in the case of this bug I don't think it matters.
This has started happening for me on stable Steam with The Talos Principle. I forced the Steam Linux Runtime on the Compatibility page while trying to get gamescope to do work. I later disabled it and Steam promptly downloaded content for Windows. Enabling/Disabling 2x as described earlier in the thread returns me to Linux content. I think the start-downloading-immediately if this checkbox is ticked is a terrible idea and a waste of bandwidth.
Edit: This is Ubuntu 23.10, new install. Intel/Nvidia.
This is happening for me with Project Zomboid after trying to run it with Proton. Prior to that it had always been the Native version.
I had selected Force the use of a specific Steam Play compatibility tool
, and Steam switched the installed version of the game to the Windows one. Ran it, and after deciding to switch it back to the Native version I unchecked the force compatibility option and Steam switched it back.
After that, Steam switches Zomboid to the Windows version after every Steam restart with the force compatibility option unchecked. Show more details
doesn't have anything anything for Runs on this computer via Steam Play.
while the force compatibility option is unchecked.
Setting the forced compatibility option to Steam Linux Runtime 1.0 (scout)
keeps it on the Native version.
I can confirm the exact behavior described by @DonKatsu for Dwarf Fortress on Gentoo. Was running DF with Proton before the native version of the game was released. (Steam Support accidentally directed me to the wrong project.)
I've had that issue with Corruption of Champions 2 (AppID: 1292690).
A fresh download of the game on my machine installs content from depots 1292691 (the game's platform-independent assets) and 1292692 (the Windows-only binaries). When clicking "Play", the game will try to run using my system-wide Wine (where it'll fail because it can't initialise the Steam API as Steam isn't running in Wine either). When the game is in this configuration, there's no "Runs on this computer via Steam Play." line showing like there would be for a game using Proton or forced to use the Steam Linux Runtime.
Forcing the game to use the Steam Linux Runtime deletes the Windows binaries from depot 1292692 and does download the Linux binaries from depot 1292693. I do have problems running the game on both my desktop PC and Steam Deck (which might be caused by the fact only the Scout runtime is selectable in the dropdown), but this is off-topic for this issue.
EDIT: this issue started appearing with the release of the game's build ID 12527428. The previous (public) build, ID 12448794, wasn't affected.
EDIT 2: it seems forcing Proton and then unchecking "Force the use of a specific Steam Play compatibility tool" then downloads the Linux files as expected. The game will then run as normal (though it's very slow to start up, which might be an issue caused by the latest build), unlike when forcing SLR, though I've noticed Steam doesn't seem to always pass the command-line arguments specified by the developers (SteamDB says the game is supposed to be passed --in-process-gpu
, but using a process monitor revealed that wasn't the case when I tried).
I do have problems running the game on both my desktop PC and Steam Deck (which might be caused by the fact only the Scout runtime is selectable in the dropdown), but this is off-topic for this issue.
It seems this bug is hard to replicate and might therefore take a while to be fixed. Maybe it could be worthwhile to add the latest release of the Steam linux runtime to the list of compatibility tools, making this workaround apply to more/recent games? @TTimo any chance of this happening?
This has happened to me a few times, most recently with Psychonauts (3830). I generally use the Linux version, but during one Steam session, I switched to the Windows version and then back to the Linux version for comparison purposes, and then closed Steam with the Linux version (i.e. no compatibility tool) selected. The next time I started Steam, it had updated it to the Windows version (despite still having no compatibility tool selected). Checking and unchecking the "Force the use of a specific Steam Play compatibility tool" box, and then updating the game, fixed it. I thought clearing Steam's download cache would prevent it from happening again, but when Steam restarted, it silently updated the game to the Windows version anyway; I had my file explorer open this time and saw the files change as I logged back into Steam. Just for good measure, I cleared the download cache again and restarted Steam again (expecting to see the same result), and this time it didn't happen, so it seems a bit random.
Disabling the overlay in the game's settings and in Steam causes TF2 to crash.
OS: Gentoo Linux Kernel: 6.1.55-gentoo-dist Display Server: X11 DE: Gnome 45.0 WM: mutter 45.0 CPU: AMD Ryzen™ 5 5600 × 12 GPU: AMD Radeon™ RX 6600
Steam logs when running TF2:
/bin/sh\0-c\0/home/roland/.var/app/com.valvesoftware.Steam/.local/share/Steam/ubuntu12_32/reaper SteamLaunch AppId=440 -- /home/roland/.var/app/com.valvesoftware.Steam/.local/share/Steam/ubuntu12_32/steam-launch-wrapper -- '/home/roland/.var/app/com.valvesoftware.Steam/.local/share/Steam/steamapps/common/Team Fortress 2/hl2.exe' -steam -game tf -vulkan\0
chdir "/home/roland/.var/app/com.valvesoftware.Steam/.local/share/Steam/steamapps/common/Team Fortress 2"
ERROR: ld.so: object '/home/roland/.var/app/com.valvesoftware.Steam/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/roland/.var/app/com.valvesoftware.Steam/.local/share/Steam/ubuntu12_64/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
ERROR: ld.so: object '/home/roland/.var/app/com.valvesoftware.Steam/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/roland/.var/app/com.valvesoftware.Steam/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
/home/roland/.var/app/com.valvesoftware.Steam/.local/share/Steam/steamapps/common/Team Fortress 2/hl2.exe: /home/roland/.var/app/com.valvesoftware.Steam/.local/share/Steam/steamapps/common/Team Fortress 2/hl2.exe: cannot execute binary file
WARNING: discarding _NET_WM_PID 148233 as invalid for X11 window - use specialized XCB_X11_TO_PID function!
WARNING: discarding _NET_WM_PID 5 as invalid for X11 window - use specialized XCB_X11_TO_PID function!
WARNING: discarding _NET_WM_PID 151951 as invalid for X11 window - use specialized XCB_X11_TO_PID function!
WARNING: discarding _NET_WM_PID 148233 as invalid for X11 window - use specialized XCB_X11_TO_PID function!
WARNING: discarding _NET_WM_PID 5 as invalid for X11 window - use specialized XCB_X11_TO_PID function!
WARNING: discarding _NET_WM_PID 151951 as invalid for X11 window - use specialized XCB_X11_TO_PID function!
Hello
Same issue here.
I wanted to try the compat "runtime (scout)" on Stellaris, not proton, but when I selected "Force the use of a specific Steam Play compatibility tool" the UI automatically selected "proton experimental" !!! Not What I wanted at all. Then in background, the update to windows proton version began... Then I selected "runtime (scout)" and after I unselected "Force the use of a specific Steam Play compatibility tool". Game switched to linux version but at each steam client restart, the game is updating to windows version and is not staying to native version even if "Force the use of a specific Steam Play compatibility tool" is not selected and completely reverted to linux native version.
If having the "Force the use of a specific Steam Play compatibility tool" unselected is not enough to have Linux Native version downloaded, what should I do ?
It seems I found a workaround as it is not reproducing for now (let's wait for next Stellaris update to be sure).
What I did:
- Force to native by toggling multiple times "Force the use of a specific Steam Play compatibility tool", wait for game to update to Linux Native in background.
- Uninstall the game
- Restart steam client
- Toggle "Force the use of a specific Steam Play compatibility tool", select "runtime (scout)" and then let it unselected.
- Restart steam client again
- Install the game and verify it is linux version installed.
- Restart steam client
- Steam is not updating automatically to windows version of the game.
It worked for me but I don't know if it's reproducible.
Had the same issue with Euro Truck Simulator 2. Steam would overwrite the native version of the game with Windows files every time the Steam client (Arch Linux, Steam Runtime) was restarted. Launching the game resulted in Wine generating a prefix in $HOME
, so Steam at least seemed to know that I did not intend to run the game with Proton.
Enabling Steam Play and then disabling it was a temporary workaround, but didn't persist when restarting the Steam Client.
What I did:
* Force to native by toggling multiple times "Force the use of a specific Steam Play compatibility tool", wait for game to update to Linux Native in background. * Uninstall the game * Restart steam client * Toggle "Force the use of a specific Steam Play compatibility tool", select "runtime (scout)" and then let it unselected. * Restart steam client again * Install the game and verify it is linux version installed. * Restart steam client * Steam is not updating automatically to windows version of the game.
It worked for me but I don't know if it's reproducible.
These steps do indeed seem to work, Steam is working again as intended in my case. I'm inclined to say that the first 3 steps won't be necessary, but can't confirm if this is the case.
Before trying these steps I checked if a compatibility entry in ~/.steam/steam/config/config.vdf
could have been the cause for this issue, but was able to rule out this possibility, since the issue persisted after removing the corresponding entry.
Same issue with Last Epoch ( 899770 ). For me at least it is reproducible when I first install native, then switch to proton/windows and then back to native. After restarting steam the game downloads the Windows version again. I previously fixed it by manually uninstalling, reinstalling, deleting folders related to that game and eventually got native to stick again. This time the steps mentioned above by LinLo helped but it's not a good user experience.
I just came across the following comment : https://steamcommunity.com/app/975370/discussions/0/3878219568770973564/#c4038102936191705383
Now, to make the change permanent, before restarting Steam, edit the file ~/.local/share/Steam/userdata/
/config/compat.vdf. Search for this clause associated with the Dwarf Fortress app id:
"975370"
{
"dest" "linux"
"src" "windows"
}
This seems to have resolved the issue for me.
Latest beta has a change that will prevent the Steam client from getting into the bad state observed here.
For titles in your library that are already in this bad state, toggling the compatibility setting once more with this beta should reset things correctly to a point where the incorrect version of the depot no longer 'sticks' after restarts.
After that beta patch went up, my Zomboid stopped downloading the Windows version with compatibility unchecked. However, while troubleshooting a problem with Brigador native where I set it to Steam Linux Runtime (scout), that is now downloading the Windows version after Steam restarts.
Steam Version: 1702667398
I really wish checking the forced compatibility box didn't apply until you close the window, since the first entry is always Proton.
Well, after toggling the forced compatibility a couple times it seems to be sticking to native again...
I just came across the following comment : https://steamcommunity.com/app/975370/discussions/0/3878219568770973564/#c4038102936191705383
Now, to make the change permanent, before restarting Steam, edit the file ~/.local/share/Steam/userdata//config/compat.vdf. Search for this clause associated with the Dwarf Fortress app id:
"975370" { "dest" "linux" "src" "windows" }
This seems to have resolved the issue for me.
This seemed to work for me as well. I tried switching to the Steam beta, but that just didn't do anything for me. For what it's worth, I'm on Nobara 38 KDE, which is based on Fedora 38.
I'm on Steam Beta version 1705720677 and the issue still happens with TF2 (440). Toggling compatibility setting on and off fixes.
Haven't seen this mentioned here yet but restarting Steam is not required for the issue to manifest for me. It reappears every time I lock my session (or it locks due to inactivity) with Steam running, and then I login again. Using SDDM, KDE Plasma, X11, in case that's relevant.
I'm on the latest stable branch of the Steam client as of writing (1705108172).
And I have been observing the same issue with Total War: WARHAMMER III, with which I initially started playing with the default native app. Shortly afterwards I decided to test the Proton/Windows version to check for performance disparity, after finding they were exactly the same I decided to switch back to native by unchecking the force compatibility tool setting and now after any subsequent Steam launches it will automatically download the Windows version with no Proton version forced.
What I've tried: Complete uninstall of the game and install with no Proton forced it will still decide to overwrite after subsequent Steam launches regardless, and I've also tried deleting the app manifest and re-downloading as well to no avail.
I've resorted to forcing Steam Linux Runtime 1.0 as that works in the meantime but just wanted to put in my experience anyway in hopes it can help fixing this.
Edit: This is with the Steam Flatpak.
~Issue does not seem to happen anymore after completely uninstalling steam-native-runtime
, running Steam beta 1706731428. I wasn't using steam-native
for launching Steam however so not sure what effect it should have.~
Edit: nevermind, the issue came back.
Hi all. I resolved the issue! At last! So, what i do? I just uninstall all Proton versions but leave only Proton 8.05. Uninstall all Solder sniper - all things that have proton words. Proton anticheat and all. Then go to Proton folders and delete all remainings for all unused proton's. Also delete all unused and uninstalled games remainings in folders. Then add compability mode for all games to Proton 8.05. Restart steam, make all updates to my games and restart more 2 times steam client to be sure if some games need updates. Then play my Borderlands: The Pre-sequel with native version - no problem. Exit game, exit steam again. Launch steam again, no problem with all games. Restart again - no problem. Also steam launch much faster with one Proton installed. If you have bunch of Protons, steam will slow more and more. So all try this and report if is ok.
EDIT: This break Proton games, and for fix then you need force re-download missing protons and soldiers or anti-cheat. To do that, go to the game properties and check files for integrity. This will force download all needed files for the game and should run this Proton game.
So if steam client will provide one cleaning tool... will be great.