Fixing blank Cinnamon sessions in VMWare virtual machines (on Fedora)
I periodically install and maintain versions of Fedora under VMWare (on my Fedora office machine). When I do this, I invariably opt to have them run Cinnamon, because out of the stock desktop environments, Cinnamon is what I've preferred for a long time. For a while now I've been having an ongoing problem with this, which is that my Cinnamon sessions don't work, although every other type of session does (Gnome, classic Gnome, and random other window managers that Fedora offers as additional options).
(Some last minute experimentation just now suggests that it may also happen with Fedora's MATE desktop.)
The specific problem is that when I log in under Cinnamon, all I get in the VMWare GUI is a black screen (apparently a blank one, based on some clues). This blank screen happens in the VMWare GUI itself and in a VNC session connected to the virtual machine's console. If I arrange to take a picture of the X root window, it has the Cinnamon desktop rendered on it, so Cinnamon appears to be working and running and so on; it's just that something is happening so that the results are not displayed. This happens in most VMs, but not in all of them; specifically, my oldest Fedora VM started out as Fedora 26 and it doesn't seem to have the problem.
(I keep this old VM around because it's my test dummy for a VM that's close to my real desktop, so I can use it to test Fedora upgrades in a VM with a ZFS pool and so on. The other Fedoras are generally from-scratch installs of the current Fedora, which I upgrade once as a test and then discard in favour of a fresh install of the new Fedora.)
I will cut to the chase: this appears to be due to using the VMWare
Xorg video driver, which in Fedora is the xorg-x11-drv-vmware
package. If I remove this package, Cinnamon (and MATE) work, with
the Xorg server falling back to some other driver (I think it's the
'fb' driver, although it's hard for me to parse through the X server
logs). In theory this gives me unaccelerated graphics; in practice
I can't tell the difference, especially these days since it's all
going over a '
ssh -X' connection anyway.
I have no idea why this is happening; I've looked for error messages and other signs of problems and haven't found anything. Since this involves VMWare, I haven't bothered to report it to anyone (for anything involving VMWare on Linux, you get to keep all of the pieces if it breaks). I'm apparently not the only person having this sort of issue with Cinnamon on VMWare, because I found this solution on the Internet in some forum thread that I forgot to save, can't find again, and so regrettably can't credit.
PS: For my future reference, the Xorg logs are in .local/share/xorg.