On integrated/nvidia dedicated graphics laptop, can't use nvidia graphics card or prime-run

Just did an update to my Nvidia drivers, and now I can’t seem to figure out how to get games to run using the Nvidia graphics card (I’m using a computer with both integrated and dedicated graphics). When I use nvidia-smi, I get no processes besides “usr/lib/Xorg”.

Many of the forum posts I’ve seen here mention commands like ‘nvidia-installer-check’ which just return “command not found” for me.

I can’t use prime-run on any of my games, either.

Inxi -FAZ info here: https://0x0.st/HDhi.txt
inxi -Ga info here: https://endeavour.kamprad.net/pastebin/?f3b799353da0c92f#FHxnXegbre6vVsk9EpVPHSAV67Um94hGnhvUvqaL5QFg

Unrelated, but I can’t seem to join the EndeavourOS Telegram. Where/who should I go to help resolve that issue?

You can try using envy-control

https://discovery.endeavouros.com/nvidia/nvidia-optimus-notebooks-hybrid-graphics/2021/03/

I actually happen to have Envy-control installed at the moment, but even after setting it to Nvidia, I still can’t run games. When I set it to hybrid, I get very low frame rates on games. When I set it to Nvidia, I get games that don’t seem to start up properly (showing a black rectangle and nothing else, for example).

In both cases, the processes for the games I’m trying to run don’t show up when I run “nvidia-smi”.

Have you read this Gaming guide?

The same function can be done with command

nvidia-inst --drivers

I think we should stop recommending using EnvyControl and actually switch to Supergfx. Not sure if it is just me or it’s a small group, but envycontrol seems to cause issues switching between hybird/integrated/dedicated on some hardware, primarily Lenovo (oddly).
Meanwhile Supergfx seems to run the best, albeit with small configs to remove the eGPU menu (but maybe that is done automatically)

You mean supergfxctl?

1 Like

I have looked at the Linux Gaming Guide, but haven’t been able to find much that seems relevant to my problem specifically.

Giving Supergfxctl a try, and after restarting, it looks like I can run some games (like Doomrunner or Starsector) by appending prime-run to the command - but I can’t do so with the flatpak Steam version I have installed. When I try, I get an error reading “too many levels of symbolic links”. When did run flatpak steam with prime-run, I still couldn’t use prime-run on the Steam games.

Non-Steam games (such as Starsector) seem to run fine and make use of Nvidia graphics when I use Supergfxctl, but Steam games don’t seem to use it. I also can’t seem to put “prime-run %command%” in the launch options of Steam games. When I do so, the game briefly starts “running”, and then stops, without any windows appearing.

Running “nvidia-inst --drivers” just gave me this result:

$ nvidia-inst --drivers
NVIDIA card id: 2191
Fetching driver data from nvidia.com ...

Series 545: supported (nvidia.com: 545.29.06)

I’m also able to run prime-run glxinfo | grep “OpenGL renderer”:

OpenGL renderer string: NVIDIA GeForce GTX 1660 Ti/PCIe/SSE2

as well as prime-run vulkaninfo, though that gives me a massive list of entries that I won’t post here (if it’s absolutely necessary, I’ll make a pastebin).

Looks like switching from Flatpak Steam to the Steam provided by AUR means I can run games with Nvidia. Not sure why it wasn’t working with flatpak Steam, though.

Just a thought… And I’m not using steam, so I might be totally wrong, but sometimes in a script the commands may need the full path, like
/bin/prime-run
instead of just
prime-run

Anyway, great that you have it working now. :+1:

Yes, that one

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.