After any major Fedora upgrade my system loses the proprietary nvidia drivers that make X actually work (I’ve never successfully gotten the nouveau drivers to handle my card and multi-monitor setup) so the system reboots and simply presents an “oops, something went wrong” screen.
The issue seems to be that the nvidia driver doesn’t recompile for the new kernel, despite the fact that I’m using akmod packages which should in theory automatically recompile for new kernels.
The tell-tale sign is:
[ 161.484] (II) LoadModule: "nv" [ 161.484] (WW) Warning, couldn't open module nv [ 161.484] (II) UnloadModule: "nv" [ 161.484] (II) Unloading nv [ 161.484] (EE) Failed to load module "nv" (module does not exist, 0)
in the Xorg logs.
Some digging reveals that the akmod recompilation process should be triggered by /etc/kernel/postinst.d/akmodsposttrans but for whatever reason that didn’t run.
The key piece of that script was running akmods similar to:
/usr/sbin/akmods --from-kernel-posttrans --kernels 4.8.11-300.fc25.x86_64
The last argument is the current kernel version, which should match the directory name in /lib/modules/ – there will likely be a few options, either run the command for each of them or pick the latest which is likely to be the one missing the nvidia drivers.
Run that script, reboot and everything came back just fine, though there is likely a better way to do it…