steam-for-linux icon indicating copy to clipboard operation
steam-for-linux copied to clipboard

[Feature Request]Need the client to support wayland(not through xwayland)

Open snj33v opened this issue 7 years ago • 165 comments

This is feature request

This will greatly help users with multi-gpu setups like optimus / SLI and developrs to move forward with wayland adoption

snj33v avatar Apr 09 '17 06:04 snj33v

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 avatar Apr 09 '17 12:04 kisak-valve

@kisak-valve, yes, that's the goal, so that xwayland will used for games but not for client

snj33v avatar Apr 09 '17 14:04 snj33v

This would be nice :)

noobmagnet avatar Apr 25 '17 14:04 noobmagnet

https://wayland.freedesktop.org/ https://en.wikipedia.org/wiki/Wayland_(display_server_protocol) https://jan.newmarch.name/Wayland/ProgrammingClient/

DmitryHetman avatar Jul 08 '17 14:07 DmitryHetman

@snj33v It must be used for games as well. glmark shows 2-3 times better OpenGL performance on wayland.

DmitryHetman avatar Jul 08 '17 14:07 DmitryHetman

@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.

DmitryHetman avatar Jul 09 '17 16:07 DmitryHetman

If source code was open, community could fix this issue already. Proprietary software sucks.

DmitryHetman avatar Jul 09 '17 16:07 DmitryHetman

@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.

soredake avatar Jul 09 '17 19:07 soredake

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.

rmader avatar Sep 30 '17 18:09 rmader

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.

sandy-8925 avatar Jan 23 '18 01:01 sandy-8925

seems this is very dependent on CEF(Chromium Embedded Framework) to actually work, guess we should wait till CEF adopts wayland completely

snj33v avatar Feb 08 '18 03:02 snj33v

@sandy-8925 I tried but it's on Xwayland

dimitrisarnellos avatar Mar 10 '18 00:03 dimitrisarnellos

wayland support required, please.

RorraVox avatar May 24 '18 18:05 RorraVox

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.

yookoala avatar May 30 '18 03:05 yookoala

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 avatar Sep 11 '18 06:09 RussianNeuroMancer

@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 avatar Sep 11 '18 14:09 sandy-8925

@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.

ppascher avatar Sep 12 '18 21:09 ppascher

@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/

edoantonioco avatar Sep 25 '18 02:09 edoantonioco

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

nanonyme avatar Sep 25 '18 06:09 nanonyme

Seems like proton can't use OpenGl through Xwayland.

cheako avatar Nov 11 '18 17:11 cheako

Sorry, I had another problem likely an outdated mesa or something.

cheako avatar Nov 13 '18 05:11 cheako

@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.

nortexoid avatar Nov 14 '18 11:11 nortexoid

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.

nanonyme avatar Nov 14 '18 14:11 nanonyme

Update?

romulasry avatar Mar 23 '19 04:03 romulasry

Hey, if any of you folks over at Valve need help with this, feel free to get in touch: [email protected]

ddevault avatar Jun 14 '19 01:06 ddevault

If source code was open, community could fix this issue already. Proprietary software sucks.

contact chromium & Igalia team, they need help with wayland codebase

snj33v avatar Jun 14 '19 15:06 snj33v

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.

nanonyme avatar Jun 14 '19 15:06 nanonyme

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.

ghost avatar Sep 19 '19 01:09 ghost

Is there any progress on this? I am struggling to get Wayland working even when using the native version with the latest SDL preloaded

rhysperry111 avatar Apr 03 '20 11:04 rhysperry111

I think you should just give up on Wayland. It's MO is basically the same as X11, except in extreme cases.

cheako avatar Apr 03 '20 20:04 cheako