After upgrading to driver 580.65.06 on Arch Linux, my system began failing to properly initialize the NVIDIA driver at boot. There is no DRM hand-off, no framebuffer console, and the GPU is not correctly bound during early init resulting in the compositor (Hyprland) detecting the display as Unknown-1, with broken resolution and no EDID data.
I’ve confirmed that this is not a Hyprland issue but rather a driver initialization failure, as reverting to 575.64.05 resolves everything with no config changes. Alternatively explicitly setting options nvidia_drm modeset=1 corrects the issue but based on Hyprland and Arch documentation this has already been done.
I’ve documented everything; logs, diffs, boot config, and working/broken comparisons in this repo:
Alternatively explicitly setting options nvidia_drm modeset=1 corrects the issue but based on Hyprland and Arch documentation this has already been done.
Where did you got the driver from? The official PKGBUILD from archlinux, as well as the “nvidia-beta-dkms” package seems to enable it, others dont
Archlinux does enable SimpleFB and if you pass the drm.modeset variable, then simplefb gets skipped:
This can not be handled or fixed with module parameters:
The driver was sourced and built from the AUR nvidia-beta-dkms package here: AUR (en) - nvidia-beta-dkms (compiled using yay).
To clarify the system does boot without issue. The problem is that the NVIDIA driver never takes over from the VGA console during early boot. This results in:
No DRM hand-off (fbcon line never appears in boot logs)
Fallback resolution & missing EDID data in the compositor
nvidia-smi showing no processes even while Hyprland/Xwayland is running
This suggests the module is loaded but never fully initialized.
If you want to see exactly what differs in the boot logs, I’ve included a direct comparison here (where fbdev never initializes):
The “modeset default” assumption I mentioned earlier was based on this nvidia-utils commit (linked from the Arch Wiki):
I can now see this is not purely a driver or packaging issue that change alters how simplefb behaves with nvidia_drm.modeset=1, and it matches exactly with the behavior I’m seeing in the broken boot logs.
At this point, I’m honestly not sure who this should be taken up with NVIDIA, Arch kernel maintainers, or both since it’s a combination of kernel changes and how the NVIDIA DRM driver expects to be initialized. My main goal is just to get it on the radar of whoever can coordinate a fix, because from a user perspective, it’s a clear regression.