I recently reinstalled my system and started a new nix configuration, however I’m having issues getting games running. I didn’t have any problems previously, i think that system was based on 23.05, while this one is 24.05, but I’m using unstable nixpkgs on both. Games through steam are running perfectly, however running games through lutris or even from the cli brings up the following error:
DRM kernel driver 'nvidia-drm' in use. NVK requires nouveau.
I’ve tried both 550 and 535 but the error persists. It seems similar to these three posts, however one had a solution of updating which hasn’t worked for me.
I’ve added my gpu config file below, incase it’s something in there causing the problem. All the commented lines are just different things I’ve been trying to fix it. Any help with all this would be greatly appreciated.
Thanks for the reply, I’ve actually just tried running them through steam, and the linux native games are working fine through steam (not sure why exactly but at least theyre working), though the windows game i tried running through proton and its still not working. I also tried heroic launcher as you suggested but i get the exact same problem. I’ve tried afew wine versions mainly ge and waylnd but also just staging. I’ve added the errors from the log below:
Or do you have services.xserver.enable enabled? since it sets hardware.opengl.enable = true;
If you managed to run native games I doubt this is the problem, but it doesn’t hurt to check. This might also be a corrupt wine prefix case, but since you tried with different programs, I don’t think it’s likely the issue either.
Also, if you have an integrated GPU, I’m curious if the games work using it.
Yeah, I have that in another section, funnily enough I did have some xserver settings but hadn’t actually enabled it, it didn’t make any difference though, btw I am running wayland. I do have an igpu but I haven’t set it up since I’m on desktop and don’t really need it, though I don’t know if it would make a difference. I did originally assume it was an nvidia problem (normally is), but I don’t think it is anymore. OpenGL is working fine aswel when I run glmark2.
This might be a Vulkan issue. I don’t know if this is for all GPU drivers (or only open source ones), but for AMD the docs say that you have to enable the following for Vulkan to work:
Vulkan is already enabled by default (using Mesa RADV) on 64 bit applications. The settings to control it are:
hardware.opengl.driSupport = true; # This is already enabled by default
hardware.opengl.driSupport32Bit = true; # For 32 bit applications
It could be that vulkan is not working and that causes DXVK to fail.
Does running this work for you?
$ nix-shell -p vulkan-tools --run "vkcube"
Edit: I also see it enabled in the docs for Nvidia, but I don’t know if that’s for OpenGL only or for Vulkan as well.
Sorry, took me a while to set up since igpu was disabled in the BIOS for some reason. I tried running it again but I’m still getting the same problems, so seems like it isn’t an nvidia problem. I’ve also added the full log below from ge which seems a bit better than the logs I was getting with plain staging.
If the game you’re trying to run is from Steam, trying to run it from another launcher is unlikely to help. Since you have native games running OK, then your graphics driver setup is probably fine.
Try setting the game launch command to PROTON_LOG=1 WINEDEBUG=+timestamp %command%
This will (when you launch the game) create a log file in your home directory named steam-APPID.log where APPID is the Steam App ID of the game.
None of the games are steam games, I was just trying to see if they ran in any other launchers like heroic and lutris. I think the reason the native games worked fine under steam is just since they were missing some libraries, the NVK error message wasnt actually the problem like I thought, it seems to be a problem with wine, not even sure if its nix related at this point.
OK, then I would strongly recommend using the GloriousEggroll Wine builds instead of stock Wine. Heroic makes this easy to install and use. I don’t know about Bottles, though.
The FHSenv wrappers for Lutris and Heroic should have all necessary Wine dependencies.
(I maintain the Heroic package in nixpkgs, but I’m not 100% certain about Lutris.)
I’ve tried GE and some others aswell, I’d never actually used heroic before this but I actually prefer it to lutris so might switch over anyway, doesn’t seem to fix the problem though. I did try with Prefer system libraries, but it doesn’t make a difference on or off. I’m honestly wondering whether there’s something wrong with the game, so I’m downloading a different one to see if the problem persists. I’m gonna leave it to download overnight and I’ll check in tomorrow, thanks for all the suggestions guys!
I think that’s correct, the nix wiki for lutris says to turn it on as there can be incompatibilities, but I think its only during the installation of a game.
I’ve never been able to figure out exactly what that option does, for native or Wine games, and the advice I’ve been given has, as far as I can recall, always been to leave it off. I’m not sure if it even does anything on the nixpkgs build, because of how we build and wrap Heroic.
Just tried turning it off and doesn’t change anything, pretty sure that’s one I actually added in an attempt to try and fix it, think I got it from someone else’s nvidia config, can’t remember where.