I’ve encountered an issue on my NixOS system while trying to launch Helldivers II via Steam. This setup was working fine until recently, so I suspect a recent change or update might be causing these problems. I’m leaning towards it being an NVIDIA-related issue, but I’m not entirely sure. I’m hoping to get some insights from this knowledgeable community. Thanks in advance, and if you’d want me to run something to help get more information about the system, I’m very willing to do so. Thanks!!
System Configuration
- OS: NixOS 23.11.20240228.c8e74c2 (Tapir)
- Window System: Wayland (Hyprland)
- GPU: NVIDIA GeForce RTX 2080
- NVIDIA Driver Version: 535.129.03
- Steam Runtime: Enabled
Issue Summary
The main issues from the logs include:
-
ELF Class Mismatch: Errors related to
gameoverlayrenderer.so
being ignored due to wrong ELF class (ELFCLASS32 vs. ELFCLASS64). -
Missing
libcrypto.so.1.1
: The game fails to launch due to missing dependencies forlibnvidia-pkcs11.so.535.129.03
, specifically looking forlibcrypto.so.1.1
. -
Module Load Failure:
libdconfsettings.so
fails to load due to an “undefined symbol: g_assertion_message_cmpint” and wrong ELF class (ELFCLASS64).
How to Replicate the Issue
- Start Steam: Open the Steam client on your NixOS system.
- Navigate to Library: Go to your Steam library where your games are listed.
- Launch Helldivers II: Find Helldivers II in the list, and click the “Play” button to start the game.
What Happens
After attempting to start Helldivers II, the game appears to begin launching, with the typical indicators of game startup. However, the process abruptly stops without the game window appearing. The “Play” button in Steam, which had turned blue indicating that the game is running, reverts back to the green “Play” state. This indicates that the game fails to start properly.
Detailed Logs
Steam logging initialized: directory: /home/mboterf/.local/share/Steam/logs
/nix/store/79fzfin2gz8xxqjvbnkfiillw48sqmya-dconf-0.40.0-lib/lib/gio/modules/libdconfsettings.so: wrong ELF class: ELFCLASS64
Failed to load module: /nix/store/79fzfin2gz8xxqjvbnkfiillw48sqmya-dconf-0.40.0-lib/lib/gio/modules/libdconfsettings.so
XRRGetOutputInfo Workaround: initialized with override: 0 real: 0xf0a707b0
XRRGetCrtcInfo Workaround: initialized with override: 0 real: 0xf0a6efa0
steamwebhelper.sh[7285]: === Thu Feb 29 02:46:20 PM CST 2024 ===
steamwebhelper.sh[7285]: Starting steamwebhelper under bootstrap sniper steam runtime at /home/mboterf/.local/share/Steam/ubuntu12_64/steam-runtime-sniper
CAppInfoCacheReadFromDiskThread took 62 milliseconds to initialize
libEGL warning: egl: failed to create dri2 screen
Steam Runtime Launch Service: starting steam-runtime-launcher-service
Steam Runtime Launch Service: steam-runtime-launcher-service is running pid 7488
bus_name=com.steampowered.PressureVessel.LaunchAlongsideSteam
libEGL warning: egl: failed to create dri2 screen
BRefreshApplicationsInLibrary 1: 0ms
BuildCompleteAppOverviewChange: 333 apps
RegisterForAppOverview 1: 12ms
RegisterForAppOverview 2: 13ms
x86_64-linux-gnu-capsule-capture-libs: warning: Dependencies of libnvidia-pkcs11.so.535.129.03 not found, ignoring: Missing dependencies: Could not find "libcrypto.so.1.1" in LD_LIBRARY_PATH "/home/mboterf/.local/share/Steam/ubuntu12_32:/home/mboterf/.local/share/Steam/ubuntu12_32/panorama:/lib64:/lib32:/steamrt/amd64/lib/x86_64-linux-gnu:/steamrt/amd64/lib:/steamrt/amd64/usr/lib/x86_64-linux-gnu:/steamrt/amd64/usr/lib:/steamrt/i386/lib/i386-linux-gnu:/steamrt/i386/lib:/steamrt/i386/usr/lib/i386-linux-gnu:/steamrt/i386/usr/lib:/run/opengl-driver/lib:/run/opengl-driver-32/lib:/nix/store/hk0xn1gmn2aygpcdj8fxib77r94hb5j4-pipewire-1.0.1-jack/lib", ld.so.cache, DT_RUNPATH or fallback /lib:/usr/lib
pressure-vessel-wrap[8228]: W: "/run/current-system/sw/bin/getent" is unlikely to appear in "/run/host"
pressure-vessel-wrap[8228]: W: Found more than one possible libdrm data directory from provider
/nix/store/79fzfin2gz8xxqjvbnkfiillw48sqmya-dconf-0.40.0-lib/lib/gio/modules/libdconfsettings.so: undefined symbol: g_assertion_message_cmpint
Failed to load module: /nix/store/79fzfin2gz8xxqjvbnkfiillw48sqmya-dconf-0.40.0-lib/lib/gio/modules/libdconfsettings.so
fsync: up and running.
/bin/sh\0-c\0mangohud /home/mboterf/.local/share/Steam/ubuntu12_32/reaper SteamLaunch AppId=553850 -- /home/mboterf/.local/share/Steam/ubuntu12_32/steam-launch-wrapper -- '/home/mboterf/games/SteamLibrary/steamapps/common/SteamLinuxRuntime_sniper'/
_v2-entry-point --verb=waitforexitandrun -- '/home/mboterf/games/SteamLibrary/steamapps/common/Proton - Experimental'/proton waitforexitandrun '/home/mboterf/games/SteamLibrary/steamapps/common/Helldivers 2/bin/helldivers2.exe' --bundle-dir data --release --use-d3d11\0
chdir "/home/mboterf/games/SteamLibrary/steamapps/common/Helldivers 2"
ERROR: ld.so: object '/home/mboterf/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/mboterf/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/mboterf/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/mboterf/.local/share/Steam/ubuntu12_64/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
ERROR: ld.so: object '/home/mboterf/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/mboterf/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/mboterf/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
x86_64-linux-gnu-capsule-capture-libs: warning: Dependencies of libnvidia-pkcs11.so.535.129.03 not found, ignoring: Missing dependencies: Could not find "libcrypto.so.1.1" in LD_LIBRARY_PATH "/nix/store/jjh4yklpqlr6w80695pmfsgidi7mhk8w-mangohud-0.7.0/lib/mangohud:/nix/store/xwr6cxlnrhxdaljxh9li9wikxy3rihdx-mangohud-0.7.0/lib/mangohud:/lib64:/lib32:/steamrt/amd64/lib/x86_64-linux-gnu:/steamrt/amd64/lib:/steamrt/amd64/usr/lib/x86_64-linux-gnu:/steamrt/amd64/usr/lib:/steamrt/i386/lib/i386-linux-gnu:/steamrt/i386/lib:/steamrt/i386/usr/lib/i386-linux-gnu:/steamrt/i386/usr/lib:/run/opengl-driver/lib:/run/opengl-driver-32/lib:/nix/store/hk0xn1gmn2aygpcdj8fxib77r94hb5j4-pipewire-1.0.1-jack/lib:/home/mboterf/games/SteamLibrary/steamapps/common/Helldivers 2", ld.so.cache, DT_RUNPATH or fallback /lib:/usr/lib
pressure-vessel-wrap[8368]: W: "/run/current-system/sw/bin/getent" is unlikely to appear in "/run/host"
pressure-vessel-wrap[8368]: W: Found more than one possible libdrm data directory from provider
/nix/store/79fzfin2gz8xxqjvbnkfiillw48sqmya-dconf-0.40.0-lib/lib/gio/modules/libdconfsettings.so: undefined symbol: g_assertion_message_cmpint
Failed to load module: /nix/store/79fzfin2gz8xxqjvbnkfiillw48sqmya-dconf-0.40.0-lib/lib/gio/modules/libdconfsettings.so
fsync: up and running.
pid 8506 != 8505, skipping destruction (fork without exec?)
Uploaded AppInterfaceStats to Steam
NVIDIA-SMI Output
Thu Feb 29 14:49:27 2024
+---------------------------------------------------------------------------------------+
| NVIDIA-SMI 535.129.03 Driver Version: 535.129.03 CUDA Version: 12.2 |
|-----------------------------------------+----------------------+----------------------+
| GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|=========================================+======================+======================|
| 0 NVIDIA GeForce RTX 2080 Off | 00000000:0A:00.0 On | N/A |
| 24% 30C P8 26W / 245W | 1200MiB / 8192MiB | 16% Default |
| | | N/A |
+-----------------------------------------+----------------------+----------------------+
+---------------------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=======================================================================================|
| 0 N/A N/A 2350 G ...files/per-user/mboterf/bin/Hyprland 520MiB |
| 0 N/A N/A 2587 G Xwayland 256MiB |
| 0 N/A N/A 4669 G ...-firefox-123.0/bin/.firefox-wrapped 189MiB |
| 0 N/A N/A 6491 G ...ca8phz5vpjya-kitty-0.31.0/bin/kitty 16MiB |
| 0 N/A N/A 7279 G ...local/share/Steam/ubuntu12_32/steam 3MiB |
| 0 N/A N/A 7518 G ./steamwebhelper 53MiB |
| 0 N/A N/A 9039 G ...ca8phz5vpjya-kitty-0.31.0/bin/kitty 28MiB |
+---------------------------------------------------------------------------------------+
Seeking Guidance
- Has anyone faced a similar issue with games on Steam under NixOS, especially regarding NVIDIA driver compatibility?
- Any suggestions on resolving the ELF class mismatch or ensuring the required libraries are correctly located and loaded?
- Insights on whether a system update or configuration change might have led to this situation would be greatly appreciated.
I’m somewhat confused as this configuration was working just a few days ago. Any advice, or suggestions on where to look next would be immensely helpful.
Thanks!