protonscr

Proton doesn't work when using "primusrun %command%"

protonclosed
ValveSoftware/Proton#65 · opened 2018-08-22 by Socterean · updated 2021-12-23 · 24 comments · github
SSocterean 2018-08-22 github

There is currently an ongoing issue which I have reported on Wine forums also. Recent updates to the latest Nvidia drivers and Bumblebee drivers crash every game when using primusrun on them, the games work however without primusrun. I have reported the issue on Wine forums 3 days ago, and now I have tried the same games and a few others under Steam Play feature with the same outcome, the games crash or simply don't open when using primusrun or optirun.

For example, when trying to run Euro Truck Simulator with primusrun in Wine I receive an error stating "Game files corrupted. Please reinstall from CD", the same error appears when trying to run the game with Proton using primusrun.

My system:
Lenovo y510P Laptop
OS: Manjaro Linux x86_64
Kernel: 4.18.3-1-MANJARO
CPU: Intel i7-4700MQ (8) @ 3.400GHz
GPU: Intel 4th Gen Core Processor
GPU: NVIDIA GeForce GT 750M
Memory: 7895MiB

linux418-bbswitch 0.8-1
bumblebee 3.2.1-20
lib32-primus 20151110-4
primus 20151110-7

DDelusionalLogic 2018-08-22 github

Try launching steam with primusrun instead.

SSocterean 2018-08-22 github

Try launching steam with primusrun instead.

It doesn't really matter, Steam launches but the games are still crashing

?ghost 2018-08-22 github

Bumblebee doesn't support Vulkan iirc

SSocterean 2018-08-22 github

Bumblebee doesn't support Vulkan iirc

The game have an OpenGL renderer, it doesn't require Vulkan, and also the game worked fine until the update to the latest drivers

Kkisak-valve maintainer 2018-08-22 github

Hello @Socterean, this should also be brought to the attention of the video driver vendor if it has not been already.

OOMTDesign 2018-08-23 github

I was having a similar issue with getting a game to run on my HP Zbook which uses optimus. Can you launch the game without using primus run, but enabling the dGPU only using Nvidia's xserver settings?

BBobbyWibowo 2018-08-24 github

I don't have Euro Truck Simulator so I can't try it. But I tried both optirun %command% and primusrun %command% with NEKOPARA Vol. 0 and it launched and could be played just fine.

Qqrluke 2018-08-26 github

I can confirm that I have encountered this issue (with all my games) but it has disappeared after updating the packages. I'm not sure which one fixed it.
I am also using Manjaro, so try to check the updates. Now I can run the game via "optirun %command%" using the MX150 instead of the integrated graphics.

Kkisak-valve maintainer 2018-08-27 github

Burnout paradise can't use dedicated GPU

Issue transferred from https://github.com/ValveSoftware/Proton/issues/730.
@SaulNunez posted on 2018-08-27T02:31:25:

Running on a Nvidia GTX 960m that has an Optimus setup. Currently using the options a stock Ubuntu installation has for it.
On Burnout Paradise there's a config screen when in Windows I could select which card to run. In Proton I can only select the integrated GPU, leading to a heavily downgraded experience.


@kode54 commented on 2018-08-27T02:36:21

Try changing the launch options to include the bumblebee launcher or whatever it is you normally run GL titles with?

optirun %command%

TTyler-2 2018-09-05 github

Same here with Doom 3; Fine with Intel GPU, dies with primusrun %command%

Ffabrom90 2018-09-09 github

I'm trying to launch "The Witcher 3" using primusrun %command% and optirun %command%, but the game starts using Intel GPU instead of Nvidia GTX 950M.

Kkuraleb 2018-09-16 github

I don't have Euro Truck Simulator so I can't try it. But I tried both optirun %command% and primusrun %command% with NEKOPARA Vol. 0 and it launched and could be played just fine.

I using the command: optirun -b primus %command%
It works

Jjellz 2019-02-19 github

For some reason primusrun is an unknown command for me. When adding optirun to launch options, it doesn't open. When using optirun -b primus %command%, same thing.

Jjersobh 2019-02-19 github

Proton with vulkan will not work with bumblebee. You guys must either use PRIME (Ubuntu, Mint) or nvidia-xrun.

Jjellz 2019-02-19 github

@jersobh Getting X Server error 'no screens found' when running nvidia-xrun in TTY

Jjersobh 2019-02-19 github

@jellz , have you set

 Option “AllowEmptyInitialConfiguration” “Yes”
 Option “UseDisplayDevice” “none”

and changed the busid for your own busid?

BusID “PCI:1:0:0” # !! change to your busid !!

?

Jjellz 2019-02-19 github

I changed the Bus ID to the one in the config instead of the one in my lspci output (mine didn't have "PCI"), and now I am greeted with an unresponsive black screen + cursor.

Jjersobh 2019-02-19 github

@jellz that's the openbox default screen. Just right click and the menu should appear.

Jjellz 2019-02-19 github

Nope, it’s entirely unresponsive. The cursor does not move at all. I also tried using obmenu-generator and it didn’t change anything

Jjersobh 2019-02-19 github

@jellz what is the output of $ lspci | grep NVIDIA?
You should keep the PCI thing. Mine, for eg.: is 03:00.0
so my config is
BusID "PCI:3:0:0"

Jjellz 2019-02-20 github

Yes, mine is 01:00.0 so I did PCI:1:0:0

SSocterean 2019-04-08 github

Sorry for letting go out of hand without reporting on the issue for so long. The issue is no longer relevant because after the next Manjaro update all things worked fine again. I suspect it was a bumblebee issue but I am not really sure.

A few mentions:

  • using primusrun on any game that requires DX11 would not work because bumblebee doesn't support Vulkan so games that would require DXVK to run would simply not work. Also bumblebee doesn't enable the Nvidia card to run at the full strenght.

  • I have since started to use optimus-manager on Manjaro which gives me the abillity to actually switch cards when I want to game. I just switch to the Nvidia card when I want to, gaining access to using Vulkan, so I can play any games that run on my card.

Those things being said the issue for me is closed.

Eevg-zhabotinsky 2021-12-23 github

In case anyone wants primusrun / pvkrun / any wrapper that uses LD_PRELOAD and/or LD_LIBRARY_PATH to work with Proton when ran from Steam, you can try my hack!

pressure-vent.sh https://gist.github.com/evg-zhabotinsky/cd54c8d8bf3803599d3b33cc56e6fbc0

Long story short: Proton forces use of the Soldier runtime that is packed in a "Pressure Vessel" container, and the latter seems to just wipe LD_PRELOAD and LD_LIBRARY_PATH. The script cuts the container out of command line, leaving only Proton and the game. You will have to install all dependencies manually, though.

Upstream links