I’ve been tempted on several occasions to convert my VM zoo from VMWare over to KVM. But up to this point, it doesn’t feel quite justified, so I keep on buying VMWare upgrades and using them on Fedora even though they do a bad job keeping their host modules up to date with the kernels Fedora uses. This problem gets more notable the farther you get from a RHEL release. I cut myself on this just often enough that I’d like to record it here in hopes of making it easier to find in the future.

Michal Kubeček maintains a repository that tracks patches needed to build VMWare host modules against recent kernels. He’s got it down to such a science that the drill is almost always simple now.

  1. Upgrade VMWare.

  2. Find that it won’t build the kernel modules against your current distro.

  3. Pull his repo and check out the branch corresponding to the version of your VMWare software.

  4. Fix it.

Here is what is usually involved, for VMWare Workstation 15.5.1 in this example.

git clone https://github.com/mkubecek/vmware-host-modules.git
cd vmware-host-modules
git checkout workstation-15.5.1
tar cf vmmon.tar vmmon-only
tar cf vmnet.tar vmnet-only
sudo cp -v vmmon.tar vmnet.tar /usr/lib/vmware/modules/source/
sudo vmware-modconfig --console --install-all

From there on out, workstation updates will be fine until it gets too far from the running kernel once again.