Closed ghost closed 6 years ago
This is largely the responsibility of the end-user and not Valve/Steam. If you can run the game from a shortcut (not sure if Wine permits this), you can add it as a non-Steam game as per normal protocol.
However, it's been discussed ad nauseum and the verdict is pretty clear: Wine is not the solution that Valve is looking for with their Linux client. Native gaming is the direction.
While I disagree that Windows games should be automatically run in WINE, I do believe that we should be able to download Windows versions of games if we so choose. It isn't like many older games that are Windows 98 or XP-esque that have roughly no support from developers anymore will see Linux versions, so it would be nice to have the option to throw them into WINE if desired.
Adding to @AshTR's point, it's unlikely Valve is going to port the older HL1 series games to Linux. There's always those moments for nostalgia.
We do have the ability to download Windows versions of games... in the Windows version of Steam that we use Wine to make run.
...And doesn't that log you out of Steam on Linux since Steam doesn't support multiple logins? That's hardly a great solution.
Not to mention having an entire dual-installation for Steam itself.
The point of the native client is for native games.
Again, if you were able to launch games from a singular point (like by clicking an icon) you could add it to your "non-Steam" games on Steam.
Whatever bugs you find there are end-user/Wine bugs.
Great idea. There should be option to download Windows games and advice to install wine. If it'll be connected to appdb.winehq.org, why not?
Well, I don't think wine is a good way. You are right several (most) titles won't see Linux release but Valve is doing a great job expanding Linux native gaming. I personally prefer native over to run-in-wine even if wine can handle it very well. If you want to play windows-only games on Linux, use Windows client. I really don't think Valve will support this since wine is not a stable platform and they wouldn't be able to provide support for it.
Though, maybe some "debug" option can be added so Steam wouldn't be blocking installations of non-native games and if wine is installed on your system, it would try launching the game through it.
Please don't add any WINE shenanigans to Steam. People who want to play Windows only games can run Windows version of Steam using WINE.
-1 for system WINE support in Linux client
Purpose of native Steam for some platform is run releases that targeting this platform. If for example CodeWeawers bring Limbo to Linux via WINE and provide official support - this is one story (and there is opportunity for collaboration between Valve and WINE developers) but allow to run any other games via WINE is may make developers lazy, and answer "use WINE" if game somehow run with default WINE instead of doing proper port. Let me show you how things is going on in such cases even without WINE support in Steam: https://twitter.com/ID_AA_Carmack/status/123578885924331520 https://twitter.com/ID_AA_Carmack/status/195249588557451264 If Steam Linux client will support using system WINE for games, situation will be even worse - this is really what you want? I doubt.
While native versions are obviously preferable, I wouldn't mind seeing WINE integration for older titles that will never be ported over anyway. It's no different than the games on Steam now that use DOSBox (Speaking of which, every one of these should have a Linux and Mac OS version available already. Lazy publishers). I'm not a huge fan of WINE, but if a game runs well enough in it, why not offer it as a convenience option? It's better than having to have the Windows client installed in WINE, which requires having to log out of native and log into that every time I want to play my games.
I would love the ability to be able to at the very least download my windows games even if I'm running Steam in Linux. Perhaps by setting a debug value or something if you only want advanced users to be able to do this, but some way of doing it would be helpful.
This could be useful, but it shouldn't(and likely won't) happen anytime soon, if Wine is added now the Wine bugs would likely end up being reported for Steam. If it were to be added later and only for games that are known to work well in Wine, then everyone would be happy, more people would start working on Wine so Steam would add Wine support for their favorite game, and there (probably) wouldn't be Wine bugs in the Steam bug tracker.
I'll request it. I have a Linux-powered media machine hooked up to my PC, I have several Windows games purchased through Steam that run well under WINE, and would love to be able to launch and update them under Linux Steam. I'd really love to put Steam on my Mythbuntu machine, run it in Big Picture mode, and launch, say, Mass Effect from there and play Mass Effect on my TV.
I don't see why we can't have wine integration with the Linux client, something as simple as : "set windows launcher" in settings, then the end user can be responsible for setting up wine.
An option to promote native clients would be to simply not allow Wine usage for games less than 2-3 years old. This gets around the "just run it in wine" thing while opening up older games. I still would prefer native games though.
What I am wondering is if Steam for Linux could simply detect that Steam for Windows has been run via wine, and provide all the games by their shortcuts in Steam for Linux (ie: pick them up automatically). In this scenario, you'd HAVE to use Steam for Windows to actually install games with wine, but you would have the convenience of running everything through the one client interface for "day to day usage", without manually adding each game through the direct shortcut for the wine version of the game.
Actually, I rather like the first option cefiar has proposed and allowing WINE only on games that are 2-3 years old.
Heck, even going as far as only putting WINE on games where the developer has dropped support for the game and you'd have no chance in a lifetime of seeing a Linux native version from the developer would make me happy.
Realistically, many older games end up having open-source Linux native versions eventually anyway through projects, so this shouldn't be as much of a problem in anything but the short-term as far as the answer to "Will it see a native Linux version?" goes.
A few instances I can state of DOS/Windows games are OpenTyrian (Tyrian), Commander Genius (Commander Keen), D2X-XL (Descent 2), and more recently OpenMW (Elder Scrolls 3: Morrowind).
I would much rather be able to download Windows games and either run through WINE or in some cases (Doom 3, Quake etc) make it work on Linux.
WINE built into Steam should never be an option.
I'm voting against Wine support in Steam's native Linux client.
We need native games, we don't want games with API translator behind them. To begin with Wine was just a plaster to quickly plug this "lack of games, and other special applications" hole in GNU/Linux. It's not something we should promote actively as a solution.
Remember what happened when EA started shipping their "Mac OS X games" with Transgaming's OSX version of Cedega? (in another words just Windows binaries and Cedega to run them) It was just epic fail on so many ways that I'm sincerely hoping that we never get that kind of plague to GNU/Linux. Besides we are already past that point. There are tons of commercial native games for Linux. Problem is that nobody knows where to get them. Steam is the best solution for that content delivery problem imho.
There's also a reason why I'm not buying any of the games from Apple's OS X App Store. The reason is that they allow publishers to ship software and games with API translators. I want native clients for performance reasons alone. And knowing that Steam always delivers native binaries (Yeah, I know some Steam games use DosBox to emulate MS-DOS) really makes my mind at ease (about buying games from Steam).
If you want Wine then use Windows version of Steam and run it through the Wine to get Windows games. That's how it should go.
For all it's worth, I've made a request for Valve to release an official position on the use of Wine with my input that Wine integration would be a large backstep for the project.
We appreciate the discussion on this issue but this is, after all, a bug tracker. The initial feature request has been made and will be investigated by the team at a later date. For further discussion, my recommendation is to bring it up in the discussion area of the Steam for Linux hub, bringing it to the attention of a wider audience.
Thanks!
+1
It would be really nice if Steam games launched through Wine would at least connect to the Linux Steam client rather than requiring the Windows client to run. I would prefer that everything I run count toward Linux in the hardware survey since I don't even own a Windows box.
So, I tried to make a simple Wine wrapper for libsteam_api.so (steam_api.dll) and, unfortunately, it appears that the C++ structures in the API end up being compiled differently for Linux. So, it would probably take someone from Valve (or someone under NDA) with access to the API sources to build a sufficient wrapper so that we don't have to exit out of the Linux Steam and run Windows Steam to play games under Wine. So close, yet so far away :/
Personally think that supporting wine in the Linux steam client is a step backwards in terms of bringing Linux support. With some developers already in the "if it works in wine, don't bother porting" camp, this probably won't help matters either.
Have you tried running steam in offline mode for your Windows games? That's what I've been doing for the few games I have running in wine
Nope, I want it so that I can play Borderlands 2 with my dad - so offline mode won't do me any good.
+1
In the near future when running steam bigpicture on a htpc (with good hardware), and no other machines in the house with a windows license, a second steam instance (on another machine within wine) is required to stream non native games to the htpc?
I understand the idea of forcing studios to release native games, but there are many games that will never get a native port, and because of idealism they aren't going to be practically playable on steamOS, even though they could be?
I have a suggestion for how to implement this in a relatively straightforward way:
A "stub" Steam running inside Wine.
This could just be a special mode of the regular Steam client, available only in Wine, and it would basically hide the UI of the Wine Steam, proxy authentication tokens through the native Steam for Linux, and make installed games from a copy of Steam running under Wine visible within the native Steam.
If the concern is developers not porting the games, then just do this part and don't go any farther - keep the experience unfriendly enough that users will still push for native versions, but don't penalize users too much for something they have little control over.
The Wine-resident Steam would still be necessary for installing, uninstalling, etc - this "shortcut" to support would just be a glorified launcher, which the user would have to configure by telling the native Steam where the Wine steam is installed.
Devs are already releasing their games in Wine wrappers
That's probably the closest thing I'd feel comfortable with, but I'd still rather not use a wine wrapper. MonoGame makes native code easy....
The steambridge is actually on github: sirnuke/steambridge@44748797273f72bdb49410333874b5c83944a5f0
Launched steam through wine to play dead space flawlessly. Xbox controller controls are all wrong, camera joystick is set to the trigger.
I had this issue with super meat boy running natively, which I corrected by entering the big picture mode and configuring the controls.
But steam under wine is kind of buggy and big picture mode won't work, so I have to scratch my head and look for another workaround.
So +1 to this idea. It doesn't do much harm to put a "download anyway" in the "This game is not supported in your platform" window.
I've discovered that in the Launch Options for a game, you can put in a completely different command to run, i.e. /usr/local/bin/pol-script %command%
. This would call pol-script with the original command steam was going to run. If pol-script doesn't work, that's all my fault and not something I could ever make a bug report about.
All that I'd need to be 100% happy, and be able to use the native client big picture mode, and run my windows only steam games via my wine setups, without needing to create "non steam game" shortcuts, is a setting in the launch options for a game that allows platform restrictions to be ignored.
I think this should be an advanced option, and it can have whatever disclaimers you like, and should only take effect when launch options is non-empty. Something like "Play with custom launch command, even when on unsupported platform" This way, steam doesn't need to support wine, but those that want it and can set it up, will be able to use it and have a seamless experience.
I'd be very happy if something like this became possible. :) The Download anyway could tie into this as well, as it would assume that you have some other environment setup (i.e. a wine prefix with steam installed, pointing to the same steam library), that will be able to run the game once downloaded.
In essence, this is what steambridge above is doing. At least from my understanding of what steambridge does, but it'd be better to have something that valve openly supports and accepts.
I can understand both sides of the argument, but I also note this. If Valve wants more people to switch to Linux and use the Steam Machines and such, they need a better gaming lineup, and while convincing developers to release Linux-native versions is of course best, there is still the massive back catalog of titles that are at end-of-life. The developer has either dropped it or (in some cases) no longer exists. These games are basically abandoned and therefore won't see a new version anywhere, let alone for Linux. It's for the back catalog that we should encourage WINE support, but as noted, it can get finicky, so do it like how DOSBox is used for Doom: on a game-by-game basis (And if they're willing to use DOSBox to run a legacy game, why not WINE?). It may be somewhat space-inefficient, but it also means the wrapper can be tuned for each game, reducing compatibility issues. It also improves the KISS factor which will be critical for drawing not-so-tech-savvy gamers.
Whether this is done by Valve or the developers (if any) is up to them, but Steam on Linux really needs some initiative to start bringing the Windows back catalog into the Linux catalog to improve its standing. Put it this way. It's the current mostly-Windows-only Steam library that keeps me from moving away from Windows, much as I want to given the whole Windows 10 thing. Improve the back catalog support and you'll likely find a convert, and I'm probably not the only one.
I don't see any use for this. If I want to run a windows game, I can run Steam for windows on wine. That way I also don't have a mess, and everything is nicely separated.
The reason is to avoid having to relog to play a windows game and having two copies of steam for no good reason.
Mark it as an experimental, no support offered feature, implement it with a "stub" steam client that proxies all the APIs to the Linux client, and the launch requests to the "stub", and call it a day.
We know the experience will be less than perfect. However, an imperfect experience is less hell on your users than having to be logged in to one or the other, having to dual boot, or having to abandon SteamOS entirely.
Make this happen already, make it optional for developers, and let users turn it on anyway in some deeply buried " unsupported settings" menu.
On Thu, Dec 17, 2015, 09:34 Jimmy Berry notifications@github.com wrote:
The reason is to avoid having to relog to play a windows game and having two copies of steam for no good reason.
— Reply to this email directly or view it on GitHub https://github.com/ValveSoftware/steam-for-linux/issues/74#issuecomment-165467238 .
If Valve wants more people to switch to Linux and use the Steam Machines and such, they need a better gaming lineup, and while convincing developers to release Linux-native versions is of course best, there is still the massive back catalog of titles that are at end-of-life.
This. We can run steam/windows through wine and it's good for us, but I imagine what it must look like for a kid who bought a steam machine with no prior experience of linux, only to discover they can't play most games ... on steam.
Indeed, pushing for native support is the way to go forward. But gamers don't care about our technical debates. They bought a (pricey) steam console, they expect to play steam games. Actually, I think that not only steam should use wine, but Valve should even be a sponsor for it, like often big companies back up open source projects, and take responsibility to write scripts akin PlayOnLinux for steam. They have an unique opportunity, here : they can port games to their playing console without even needing help from game developers. This is unheard of.
So yeah, native support is the best. For all (most) the other things, there's wine, we should not ignore the opportunity.
By the way (sorry for double post), I gave a second thought to the argument : "if we support wine, game producers won't be incentive to release native version".
There are many ways to incentive people, and wine could play a part in it. Imagine Valve made a script to run a game through wine. This won't be the perfect experience from native game. We often say "oh yeah, this game works on wine, perfs are even better than on windows! There's just this little thing, <slow connection | texture missing | messed up main menu | whatever>, but really, I don't care that much!". This is something that can be used.
Imagine there's a banner on the page for that game that runs through wine : "Warning! This game has no stable release for steam machine yet, experience may be slightly deteriorated". Now, gamers will be able to play the game, they'll know about shortcomings before buying, and they'll ask game developers : "when are you releasing the stable version for steam?".
It would be awesome to have something like playonlinux built into steam!
Is there some way someone could close this? It never seems to gain any traction and the thread is six years old at this point. There's an unofficial way to do it called SteamFootBridge, No idea if it'll earn you a VAC ban or not, but it can be done.
@regeya
Thanks for mentioning SteamFootBridge, it's the first time I hear about it. Although, the possibility it could get us banned and locked out of our expansive game collection is quite an issue :D
Could we have any official statement on this? If there is a recommended way to use steam windows games in steam on linux, that's fine by me, disregarding if it's a builtin feature or not.
Going to call this one closed now. Specific issues with the new Steam Play compatibility feature can be filed here or in the Proton repository, depending on where the problem is.
For anyone who missed it, @Plagman is referring to this announcement.
Although this would be a feature for more advanced users, it might be an interesting idea to allow running the Windows versions of games in WINE through the Linux client if a native version is not available and the game in question does not explicitly require a Windows license (i.e. it doesn't use XNA or some similar technology).
Although some games are ported to Linux, many are not, and having the option to run games through this method even in an unsupported fashion would be quite an interesting and useful feature to have. Definitely not expecting it any time soon, but it may be something to consider down the line, if it's even possible.