VMware Workstation - CachyOS Nuke & Reinstall
When to use
After a kernel update causes version mismatch errors like:
Version mismatch with vmmon module: expecting X, got Y.
1. Stop services and unload modules
sudo systemctl stop vmware-networks vmware-usbarbitrator
sudo modprobe -r vmmon vmnet
2. Remove existing installation
yay -Rns vmware-workstation
sudo rm -rf /usr/lib/vmware
sudo rm -rf /usr/lib/vmware-installer
sudo rm -rf /usr/lib/vmware-ovftool
sudo rm -rf /etc/vmware
sudo rm -rf /etc/vmware-installer
sudo rm -rf /etc/conf.d/vmware
sudo rm -rf /usr/bin/vmware*
sudo rm -rf /usr/bin/vmrun
sudo rm -rf /usr/bin/vmrest
3. Reinstall from AUR
yay -S vmware-workstation --rebuild
- Pick
Afor clean build when prompted.
4. Sign modules for Secure Boot
sudo /usr/lib/modules/$(uname -r)/build/scripts/sign-file sha256 ~/MOK.priv ~/MOK.der $(modinfo -n vmmon)
sudo /usr/lib/modules/$(uname -r)/build/scripts/sign-file sha256 ~/MOK.priv ~/MOK.der $(modinfo -n vmnet)
5. Load modules and start services
sudo modprobe vmmon
sudo modprobe vmnet
sudo systemctl start vmware-networks
sudo systemctl status vmware-networks
6. Verify
vmware
Troubleshooting
[AppLoader] libdir is not initialized
Add missing config line:
echo 'libdir = "/usr/lib/vmware"' | sudo tee -a /etc/vmware/config
MOK key not enrolled yet (first time only)
openssl req -new -x509 -newkey rsa:2048 -keyout ~/MOK.priv -outform DER -out ~/MOK.der -nodes -days 36500 -subj "/CN=VMware Module Signing/"
sudo mokutil --import ~/MOK.der
# Reboot and confirm enrollment in MOK manager
Finding the sign-file path
find /usr/lib/modules/$(uname -r) -name sign-file