DEV Community

Cover image for How to recover KDE if it doesn't load after updating FreeBSD from 12.x to 13.0-RELEASE
jdrch
jdrch

Posted on

How to recover KDE if it doesn't load after updating FreeBSD from 12.x to 13.0-RELEASE

You followed the official instructions to update your FreeBSD 12.x installation to 13.0-RELEASE, but now you've rebooted into a login: prompt. What went wrong?

The technical reason for this is there are driver changes involved in the update, and FreeBSD doesn't appear to be able to determine which driver will work for your hardware.

To expand on that point, your existing driver type that worked in 12.x might not work in 13.0-RELEASE, but FreeBSD cannot determine which 13.0-RELEASE driver type will work for you. This means you'll have to manually select the driver and load it into the kernel. Let's do that.

  1. Login to the FreeBSD terminal
  2. # pkg update
  3. # pkg upgrade
  4. # pkg install drm-kmod
  5. # kldload drm
  6. Edit /etc/rc.conf (I prefer # nano /etc/rc.conf for that task) to comment out any existing kld_list line
  7. Add the following line to /etc/rc.conf: kld_list="cuse fusefs usbhid drm"
  8. If you're in nano, press CTRL + O to save your changes
  9. Hit Enter at the prompt
  10. Press CTRL + X to exit nano
  11. Reboot

KDE (technically SDDM) should come up at this point and you should be presented with a DE login.

The above process used a generic DRM driver. For optimal performance and functionality, you'll need to load the driver specific to your hardware. You'll find the driver names here. If, for example, you're using an Intel iGPU, repeat the previous steps from the terminal within KDE, replacing drm with i915kms throughout.

Since the fix described here doesn't reference anything KDE, it should also work for other DEs, such as Gnome, XFCE, etc.


Credit: this thread from u/grahamperrin

Top comments (0)