Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Launching a game with UMU via Lutris flatpak doesn't work if launched from Steam Deck gaming mode #92

Open
pizzadude opened this issue Apr 18, 2024 · 14 comments

Comments

@pizzadude
Copy link

Not sure where to report this, so I'll report it on both umu-launcher and lutris github.

If I try to launch a game that is installed via Lutris, (which I have switched the prefix to use GE-Proton (which uses umu) from previously Wine-GE)) in the Lutris flatpak, it works fine.

It even launches fine if ran as a non-steam game through Steam. (lutris flatpak with the game's id is added as non steam game, I used Boilr for this).

However, if I launch the game from gaming mode steam instead of desktop mode (on a Steam Deck), the game doesn't launch at all.

Switching the prefix back to Wine-GE, the problem goes away.

Any ideas?

@R1kaB3rN
Copy link
Member

R1kaB3rN commented Apr 18, 2024

You risk breaking your Wine prefix after switching to Proton. However, putting aside whether the problem is with the prefix or not, you are bound to run into problems executing your games that way. The official way to use umu in Steam's gaming mode is to use the umu-launcher compatibility tool after adding your game as a non-steam game in the Steam client, not by executing the game via the Lutris Flatpak client which is added as a non-steam game.

But what's wrong with simply using Lutris on the Steam Deck to run the game? If Lutris doesn't support a gaming mode feature, I suggest you request that feature then wait until it's implemented. For now, look for another client besides Steam that supports gaming mode or install umu natively and use the umu-launcher tool in the Steam client.

@R1kaB3rN
Copy link
Member

R1kaB3rN commented Apr 18, 2024

Also, in the near future, I plan to add native support for umu on the Steam Deck that won't require breaking the read-only seal which will be the preferred way to use it there. Because currently, the umu Flatpak is in an early state and isn't well tested. That way, users can run their games in gaming mode.

@pizzadude
Copy link
Author

pizzadude commented Apr 18, 2024

You risk breaking your Wine prefix after switching to Proton.

Why, wasn't umu supposed to solve this?

The official way to use umu in Steam's gaming mode is to use the umu-launcher compatibility tool after adding your game as a non-steam game in the Steam client, not by executing the game via the Lutris Flatpak client which is added as a non-steam game.

Then what's the point of integrating umu into Lutris which itself has a "add steam shortcut feature", replacing the already working Wine-GE and users get told "you're using it wrong". ?

@strycore
Copy link
Member

You're not using anything wrong. umu should work in desktop mode, gaming mode and whatever other modes you want. It's meant as a way to reliably run Windows games on any Linux platform.
You shouldn't use the "umu-launcher" compatibility mode in Steam, you should use what Lutris gives you and we have to make sure this works.

@GloriousEggroll
Copy link
Member

GloriousEggroll commented Apr 18, 2024

You risk breaking your Wine prefix after switching to Proton.

Why, wasn't umu supposed to solve this?

The official way to use umu in Steam's gaming mode is to use the umu-launcher compatibility tool after adding your game as a non-steam game in the Steam client, not by executing the game via the Lutris Flatpak client which is added as a non-steam game.

Then what's the point of integrating umu into Lutris which itself has a "add steam shortcut feature", replacing the already working Wine-GE and users get told "you're using it wrong". ?

lutris is a native linux application. as strider mentioned you should not use 'umu launcher' as a compatibility tool for it. once you have installed the game in lutris, either

  1. add lutris as a non-steam application to steam WITHOUT any compatibility tool
    or
  2. use the "create steam shortcut" option on the game in lutris, again WITHOUT any compatibility tool

Lutris will handle using umu on it's own in the background.

As strider mentioned, you would not use proton on a native linux application, so why would you use umu-launcher?

There is a misunderstanding here of how the games are being launched.

When steam launches a windows game it goes
steam->internal scripts-> proton with pressure vessel

When steam launches a native linux non-steam game or application it goes
steam->directly to application

Lutris is the same for windows games:
lutris->umu-launcher->proton with pressure vessel

So, if you use the lutris "create steam shortcut" option it's adding lutris as a non-steam application to steam. It's still using lutris to launch the game. If you check the shortcut lutris creates it shows:

Target:
"/usr/bin/lutris"

Launch Options:
lutris:rungameid/4

And as you can see, it's using a lutris shortcut to run the game.

The only time you would use the "umu-launcher" compatibility tool is in order to use UMU directly on a windows game/application executable without lutris or any other launcher tools

@GloriousEggroll
Copy link
Member

with the above being said if you've just used 'create a steam shortcut' via the lutris flatpak and that's it and are -not- trying to force any compatibility tool with it in steam then that should work.

@pizzadude
Copy link
Author

pizzadude commented Apr 19, 2024

lutris is a native linux application. as strider mentioned you should not use 'umu launcher' as a compatibility tool for it. once you have installed the game in lutris, either add lutris as a non-steam application to steam WITHOUT any compatibility tool or use the "create steam shortcut" option on the game in lutris, again WITHOUT any compatibility tool

I never used any compatibility tool for Lutris. I know Lutris is a native linux application.

@pizzadude
Copy link
Author

with the above being said if you've just used 'create a steam shortcut' via the lutris flatpak and that's it and are -not- trying to force any compatibility tool with it in steam then that should work.

That's all I did. It doesn't work in gaming mode. Somebody else has the same issue here: lutris/lutris#5436

@pizzadude
Copy link
Author

pizzadude commented Apr 19, 2024

@GloriousEggroll You seem to be misinterpreting me. I selected GE-Proton as the wine version WITHIN lutris. That makes the game, inside lutris, run with UMU. Then I created a steam shortcut with lutris. The game works fine in desktop mode and when run from lutris itself, but in gaming mode it doesn't launch at all. I did not select any compatibility tool in Steam.

As strider mentioned, you would not use proton on a native linux application, so why would you use umu-launcher?

He was responding to R1kaB3rN ( not me ), who suggested I use umu-launcher. I asked Strider via Discord to take a look at this issue (cuz we are friends), that's the reason he commented.

@GloriousEggroll
Copy link
Member

GloriousEggroll commented Apr 19, 2024

@GloriousEggroll You seem to be misinterpreting me. I selected GE-Proton as the wine version WITHIN lutris. That makes the game, inside lutris, run with UMU. Then I created a steam shortcut with lutris. The game works fine in desktop mode and when run from lutris itself, but in gaming mode it doesn't launch at all. I did not select any compatibility tool in Steam.

As strider mentioned, you would not use proton on a native linux application, so why would you use umu-launcher?

He was responding to R1kaB3rN ( not me ), who suggested I use umu-launcher. I asked Strider via Discord to take a look at this issue (cuz we are friends), that's the reason he commented.

Sorry for the confusion and thanks for clarification. I'm looking into reproducing the issue. Can you check in lutris if gamemode is off for the game and if not turn it off and let us know? Thanks

@pizzadude
Copy link
Author

pizzadude commented Apr 19, 2024

Can you check in lutris if gamemode is off for the game and if not turn it off and let us know? Thanks

Hi, disabling gamemode within Lutris for that game doesn't solve the issue.

@GloriousEggroll
Copy link
Member

I think I see what R1ka was referring to. In deck mode steam itself is already running inside a pressure-vessel container. Which means when lutris tries to run the game its trying to run pressure-vessel again inside an already running container.

@GloriousEggroll
Copy link
Member

nvm thats not it either. i just verified steam still opens a separate pressure vessel instance if you launch a non-steam windows executable using proton as a compatibility tool, aka the same thing lutris would do.

strider noted from the lutris bug tracker it might be a gamescope issue where $DISPLAY isnt being passed:

0124:err:winediag:nodrv_CreateWindow L"Make sure that your X server is running and that $DISPLAY is set correctly.

@R1kaB3rN
Copy link
Member

R1kaB3rN commented Apr 25, 2024

After looking into it a bit, this only effects Steam Deck's gamescope session and using either the umu Flatpak or a Flatpak that uses umu in their runtime in it. Using either umu in a non-flatpak environment or the umu-launcher compatibility tool, users should not run into this issue.

This issue will need more digging and there'll need to be a way to gather/generate more logs from both gamescope and Flatpak to determine the precise cause. And hopefully, it's something in our control and doesn't require any workarounds

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants