steam-for-linux
steam-for-linux copied to clipboard
[Feature Request]Need the client to support wayland(not through xwayland)
This is feature request
This will greatly help users with multi-gpu setups like optimus / SLI and developrs to move forward with wayland adoption
If I understand this request correctly, the specifics of this request is to build the SDL 2 library used with the steam client with wayland support.
Beyond the scope of the steam client itself, Xwayland is still needed for games that are not using a middleware library that supports wayland and interactions with wayland libraries from older distro releases may need to be checked.
@kisak-valve, yes, that's the goal, so that xwayland will used for games but not for client
This would be nice :)
https://wayland.freedesktop.org/ https://en.wikipedia.org/wiki/Wayland_(display_server_protocol) https://jan.newmarch.name/Wayland/ProgrammingClient/
@snj33v It must be used for games as well. glmark shows 2-3 times better OpenGL performance on wayland.
@snj33v It could be much better if there was no such thing as steam-runtime, it just deprecated copies of libraries that every GNU/Linux distro has.
If source code was open, community could fix this issue already. Proprietary software sucks.
@DmitryHetman without steam-runtime, you'll get stuck with glibc/openssl forever (or you'll have to use chroot / docker), and get a lot of problems on rolling distributions.
As soon as sandboxing becomes common for linux apps, for example with flatpak (which could solve the issue with the steam-runtime, btw), this becomes a security issue aswell. Under X, there's no client isolation so any app could read inputs (of e.g. credit card information). Wayland prohibits that. See #4473
Edit: ok this was a bit misleading. Sensitive information is usually only entered in the steam app, which would need to use wayland. Thats not the issue here. But it would be great for security if the steam client would also support wayland sometime soon, as people use it to enter sensitive information like credit card information.
I think it already works as is - I'm able to use Steam on KDE Wayland, when I launch it with environment variable SDL_VIDEODRIVER=wayland
Of course, actual games fail to run when you try launching them.
seems this is very dependent on CEF(Chromium Embedded Framework) to actually work, guess we should wait till CEF adopts wayland completely
@sandy-8925 I tried but it's on Xwayland
wayland support required, please.
CEF is on their way to support Wayland. A patch is already available to switch between X11 and Ozone backend. The patch has not been merged yet.
Combine that with ozone-wayland, CEF will work with Wayland protocol. In fact there is already a working branch for Chromium's Wayland support.
http://www.phoronix.com/vr.php?view=26841
Is anyone benchmarked games with SDL2 and SDL_VIDEODRIVER=wayland? Seems like Phoronix tested XWayland performance instead of Xorg vs. Wayland performance.
@RussianNeuroMancer Steam seems to launch and work fine with SDL_VIDEODRIVER=wayland set, but most (if not all) Steam games fail to launch in that case. They're all using older/custom versions of SDL that don't work under Wayland.
@sandy-8925 Does not work for me. Are you sure it is not running under xwayland? Try running WAYLAND_DEBUG=1 steam
. If you get wayland debug output it is running under wayland otherwise it is using xwayland.
@sandy-8925 Im affraid its running still on xwayland. I know it because of this https://www.reddit.com/r/linuxquestions/comments/7d445v/does_my_app_run_on_wayland_or_xwayland/
I'd say the biggest blocker here is Chromium still. The entire Steam main UI will not work without X11. If that wasn't an issue, it might be be reasonable to aim for a setup where some games (whitelist) used Wayland but that seems ambitious for now. As for games that don't work: bundling libSDL in games (not Steam runtime) is by far the biggest compatibility issue I've seen
Seems like proton can't use OpenGl through Xwayland.
Sorry, I had another problem likely an outdated mesa or something.
@RussianNeuroMancer Steam seems to launch and work fine with SDL_VIDEODRIVER=wayland set, but most (if not all) Steam games fail to launch in that case. They're all using older/custom versions of SDL that don't work under Wayland.
It launches just fine but when I run xlsclients, it shows steam running under xwayland.
I would strongly urge everyone not to set SDL_VIDEODRIVER globally unless you're trying to test SDL2. There's a priority list inside SDL2 and no doubt when the devs consider Wayland support stable enough, it will take precedence over X11 without user interaction.
Update?
Hey, if any of you folks over at Valve need help with this, feel free to get in touch: [email protected]
If source code was open, community could fix this issue already. Proprietary software sucks.
contact chromium & Igalia team, they need help with wayland codebase
To be honest it also seems to me Chromium (or parts of it) have been suffering of inadequate amounts of competent reviewers so which has slowed down Wayland change integration speed. It will happen eventually.
They say proprietary software is good because it brings funding which brings support and bug fixes. Intellectual fascism, the more accurate term for IP, is a big black hole full of lies. Just look here, almost a year and a half, and nothing happens. Nothing. It is our job to kill IP, lest our descendants ridicule us forever. Even a child can easily understand that keeping knowledge a secret is not good. Anyone who believes the lies of intellectual fascism is really missing some bolts at this point.
Is there any progress on this? I am struggling to get Wayland working even when using the native version with the latest SDL preloaded
I think you should just give up on Wayland. It's MO is basically the same as X11, except in extreme cases.