I just upgraded to NixOS 24.05 and Hyprland won’t start anymore with the following error message:
[render/gles2/renderer.c:600] GPU reset notifications are enabled
[render/allocator/allocator.c:105] Trying to create gbm allocator
[render/allocator/gbm.c:254] Created GBM allocator with backend drm
[render/allocator/gbm.c:257] Using DRM node /dev/dri/card1
[render/egl.c:205] Supported EGL client extensions: EGL_EXT_platform_base EGL_EXT_device_base EGL_EXT_device_enumeration EGL_EXT_device_query EGL_KHR_client_get_all_proc_addresses EGL_EXT_client_extensions EGL_KHR_debug EGL_KHR_platform_x11 EGL_EXT_platform_x11 EGL_EXT_platform_device EGL_MESA_platform_surfaceless EGL_EXT_explicit_device EGL_KHR_platform_wayland EGL_EXT_platform_wayland EGL_KHR_platform_gbm EGL_MESA_platform_gbm EGL_EXT_platform_xcb
[EGL] command: eglQueryDeviceStringEXT, error: EGL_BAD_PARAMETER (0x300c), message: "eglQueryDeviceStringEXT"
[EGL] command: eglQueryDeviceStringEXT, error: EGL_BAD_PARAMETER (0x300c), message: "eglQueryDeviceStringEXT"
[render/egl.c:508] DRM device '/dev/dri/card0' has no render node, falling back to primary node
[render/egl.c:319] Software rendering detected, please use the WLR_RENDERER_ALLOW_SOFTWARE environment variable to proceed
[render/egl.c:571] Failed to initialize EGL context
[render/gles2/renderer.c:503] Could not initialize EGL
[CRITICAL] m_sWLRRenderer was NULL! This usually means wlroots could not find a GPU or enountered some issues.
[CRITICAL] Critical error thrown: wlr_gles2_renderer_create_with_drm_fd() failed!
As I presume this is some sort of driver issue i tried with the default nvidia 550.78 driver with my RTX 3080 and with the new beta 555 driver and experienced the same issue with both. Does anybody know a solution?
How would I go about updating the kernel and the nvidia drivers to the unstable versions? I have made the unstable Nix Packages repo available to my configuration using flakes, so how do I actually use that to implement the above solution?
Thanks. With your help I was able to (eventually, and with great effort) fix my system. It is now running on 24.05 with the Zen kernel (I decided to switch over while I was at it, since I read that it gives marginal performance gains and reduces lag-spikes).
For some reason there were some extra lines needed in my config in addition to those you suggested to change, those being:
I think the latter may be redundant with the hardware.nvidia.package option, but nvidia-smi said that there were conflicting driver and library versions (550 and 555), so by adding it the graphics now work and everything is on version 555.
There were also a lot of random packages and options that were renamed or reorganised going from 23.11 to 24.05, so it took a while getting those sorted out. Everything seems to be working fine now.
I did not, but I added that very line (i.e. without the “_beta”) during the process of working out how to get the system running, and once I changed it to the beta version (at the same time as adding the environment.systemPackages line) it worked. I will experiment to see if it is actually necessary, since I only checked nvidia-smi after first adding that line.