Problem
When running a guest OS with 3D acceleration enabled on VMWare Workstation (or player) on an Arch-based distro, you may receive the following notifications on guest OS startup:
Cause
The cause of the problem can be varied. However, on Arch based distributions, especially on laptops with both a discrete graphics card and integrated graphics, it's most likely related to the discrete card not being used (or enabled easily).
Below are two solutions which have worked for me, for a Nvidia-based laptop (2018 Razer Blade 15) and an ATI Radeon laptop (2018 Lenovo e480).
Solutions
Nvidia (Optimus) laptop - older laptops cards that support bumblebee and optirun
The first solution involves installing bumblebee and prefixing the vmware
or vmplayer
executable with optirun
. E.g.
optirun -b primus vmware
You can also modify (or make a copy) of the .desktop file with a modified prefix. See below (create a .desktop file and put in a folder on you path):
[Desktop Entry] Encoding=UTF-8 Name=VMware Workstation (OPTIRUN) Comment=Run and manage virtual machines Exec=optirun -b primus /usr/bin/vmware %U Terminal=false Type=Application Icon=vmware-workstation StartupNotify=true Categories=System; MimeType=application/x-vmware-vm;application/x-vmware-team;application/x-vmware-enc-vm;x-scheme-handler/vmrc; Path=
Nvidia (Optimus) laptop - newer laptops with cards that support video-hybrid-intel-nvidia-prime
For laptops with newer cards (for example my Razer Blade 15 with an RTX 2080) you should be able to prefix the vmware
or vmplayer
executable with prime-run
. E.g.
prime-run vmware
You can also modify (or make a copy) of the .desktop file with a modified prefix. See below (create a .desktop file and put in a folder on you path):
[Desktop Entry] Encoding=UTF-8 Name=VMware Workstation (PRIME) Comment=Run and manage virtual machines Exec=prime-run /usr/bin/vmware %U Terminal=false Type=Application Icon=vmware-workstation StartupNotify=true Categories=System; MimeType=application/x-vmware-vm;application/x-vmware-team;application/x-vmware-enc-vm;x-scheme-handler/vmrc; Path=
ATI based laptop - allow blacklisted drivers
Now, ATI has much better linux support (by far...) however, on my e480, I couldn't get 3D acceleration working (tried all different types of drivers free and non-free) until I came across this post by /dev/blog.
Apparently VMWare decided to blacklist some drivers. Luckily we can undo this blacklisting by modify the preferences
file by adding the following to ~/.vmware/preferences
:
mks.gl.allowBlacklistedDrivers = TRUE
References
- https://wiki.archlinux.org/index.php/Bumblebee#Installation
- https://possiblelossofprecision.net/?p=2464
Related articles