It turns out that VMWare does not like Ubuntu's default desktop environment called Ubuntu Unity. It could be confusing that the Ubuntu Unity desktop environment and the VMWare Unity mode share the same word "Unity", and it has created a difficulty for us who try to find an answer on the web since depending on what search terms you enter, web searches can give you answers related to both and it becomes a diffcult task to find a solution that may help you.
Since VMWare cannot switch to Unity mode is a result that VMWare does not like Ubuntu's default desktop environment called Ubuntu Unity, the solution becomes to find a Desktop Environment that VMWare can work with.
On Ubuntu 13.10 (Saucy), I found that Gnome 3 works with the VMWare Unity mode. Therefore, the solution is to install Gnome 3 and to use Gnome 3. To install Gnome 3, you may issue command below,
sudo apt-get update; sudo apt-get install gnome-session-fallback
I have been happily running Ubuntu 13.10 (Sauncy) as a guest operating system and using it in VMWare Unity mode for a quite while, well, until I upgrade it to Ubuntu 14.04 (Trusty). What is the problem? I checked the versions of Gnome 3 before and after the upgrade from Ubuntu 13.10 (Sauncy) to Ubuntu 14.04 (Trusty), they are the same,
$ gnome-session --version
gnome-session 3.9.90
I believe that it is still the issue with the Desktop environment that Ubuntu is running -- not VMWare tries not to support such a feature. Then, the task is to find out which desktop environment works with the VMWare Unity mode on Ubuntu 14.04 (Trusty). I found the list of Desktop environments that I may try from this post,
I did not try all of them. However, I am happily to report that the following Desktop environments that work with VMWare Unity mode on Ubuntu 14.04 (Trusty),
- Xfce
To install it. Run
or if you want more bells & whitsles,sudo apt-get install xfce4
apt-get install xubuntu-desktop
-
LXDE
To install it. Run
or if you want the full desktop environment,sudo apt-get install lxde
apt-get install lubuntu-desktop
-
Mate
To install it. Run
At this point, you can switch to VMware Unity mode. However, the application menu of the VMWare Unity mode is empty. This is the result that the VMware tools at present only recognoizes three desktop environments, Gnome, KDE, and Xfce -- if you runsudo apt-add-repository ppa:ubuntu-mate-dev/ppa sudo apt-add-repository ppa:ubuntu-mate-dev/trusty-mate sudo apt-get update sudo apt-get upgrade sudo apt-get install --no-install-recommends \ ubuntu-mate-core ubuntu-mate-desktop
vmware-xdg-detect-de
in your Ubuntu guest, you will see that the output of the script is empty. I made one minor change to the script, and the VMWare Unity mode menu appeared. Below is thediff
result on the script before and after the revision.
diff \ /usr/bin/vmware-xdg-detect-de \ $HOME/vmware-tools-distrib/lib/bin32/vmware-xdg-detect-de 63,67d62 < elif `dbus-send --print-reply --dest=org.freedesktop.DBus \ < /org/freedesktop/DBus \ < org.freedesktop.DBus.GetNameOwner \ < string:org.mate.SessionManager > /dev/null 2>&1` ; \ < then DE=gnome; # pretent to be gnome
The complete script is at GitHub. - GNOME Flashback/Fallback
As described before, to install it, run,
Initially, I thought GNOME Flashback/Fallback stopped working with VMware Unity mode on Ubuntu 14.04. However, once I investigated further, I discovered that Ubuntu 14.04 reports the value of environmental variablesudo apt-get update; sudo apt-get install gnome-session-fallback
XDG_CURRENT_DESKTOP
asUnity
. The solution is still to letvmware-xdg-detect-de
returngnome
. What I did is shown in thisdiff
result,
diff /usr/bin/vmware-xdg-detect-de \ $HOME/vmware-tools-distrib/lib/bin32/vmware-xdg-detect-de 58,60d57 < DE=gnome < xdgDE=gnome
The complete script using the approach described above (although not identical) is at GitHub. It is worth noting that when I manually set the environmental variable toGNOME
in the user profile, e.g., adding the following line to$HOME/.profile
, VMware Unity mode remains NOT working.
It begins to work only after I made the revision toexport XDG_CURRENT_DESKTOP=GNOME
vmware-xdg-detect-de
as described above.
A new problem I have encountered is that once VMware enters the Unity mode, in some of my Ubuntu virtual machines, the application menu is empty -- if you always launch programs from command line, it may not be too much of a problem. A further investigation indicates that this problem only occurs on the Ubuntu virtual machines that are upgraded from previous revision. I reinstalled the gnome-session-flashback and the problem went away. To reinstall the package, do,
sudo apt-get install --reinstall gnome-session-flashback
Just be aware that when you have GNOME Flashback/Fallback installed, you will have two options on the login screen, "GNOME Flashback (compwiz)" and "GNOME Flashback (metacity)". VMware Unity mode only works with the latter. In fact, VMware lists "a modern version of Metacity or KDE" as a prerequist to use the Unity mode on its website.
To conclude, below is what I have tried.
Desktop Environment | Display Name in Login Screen | VMWare Unity Mode Works? |
---|---|---|
Ubuntu Unity | Ubuntu Default | No |
GNOME 3 | GNOME | No |
GNOME 3 | GNOME Flashback (Compwiz) | No |
GNOME 3 | GNOME Flashback (Metacity) | Yes (See the note on Gnome above and download vmware-xdg-detect-de) |
Xfce | Xfce | Yes |
Xfce | XUbuntu | Yes |
LXDE | LXDE | Yes |
LXDE | LUbuntu | Yes |
Mate | Mate | Yes (See the note on Mate above and download vmware-xdg-detect-de) |
Awesome | Awesome | No |
However, if you try a different desktop envionment on Ubuntu 14.04 (Trusty) and it works or does not work with the VMWare Unity mode, please share it with me. I will update this post to include your result.
This comment has been removed by the author.
ReplyDeleteThanks! I find LXDE to be the fastest. Now to figure out why the GUI elements don't refresh.
ReplyDeleteKDE seems to work fine for me, but I installed the bare build of XFCE to log into if my intention is to only use it in UNITY mode, since you don't get all the distracting transparency effects and artifacts that you do with the Plasma desktop and you can use all the KDE applications just fine under XFEC.
ReplyDeleteKDE seems to work fine for me, but I installed the bare build of XFCE to log into if my intention is to only use it in UNITY mode, since you don't get all the distracting transparency effects and artifacts that you do with the Plasma desktop and you can use all the KDE applications just fine under XFCE
ReplyDeleteI submitted a pull request to add in some usage info and notes about how I'm applying this to my virtual machines (and might actually build it into my Vagrant provisioning script).
ReplyDeleteStill getting an error when running unity mode: guest operating system resolution cannot be change. Using VMware 6 running Lubuntu 14 (LXDE).
ReplyDeleteHave you installed VMware Tools? You may want to update it if you have installed it. Once you are done, reboot the virtual machine and see what it happens.
DeleteHow do I do that?
DeleteI hope that this VMware page helps you,
Deletehttp://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1035392
Thanks Gary, it worked.
ReplyDeleteIt worked even for me. I'm using VMWare player on Windows 8.1 but I can't get it to display the Apps list on the Windows start (ie CTRL+SHIFT+U). I'm using GNOME Flashback (metacity). Any idea to populate the apps bar?
ReplyDeleteWhat do you see under "/etc/xdg/menus"? Can you post the result of "ls -l /etc/xdg/menus" here?
DeleteI have the same issue, I am have vmware workstation 11 on windows 7.
Deletels -l /etc/xdg/menus:
-rw-r--r-- 1 root root 19337 Mar 17 2014 gnome-applications.menu
-rw-r--r-- 1 root root 2827 May 10 2014 gnomecc.menu
-rw-r--r-- 1 root root 8542 Mar 17 2014 gnome-flashback-applications.menu
-rw-r--r-- 1 root root 2827 Sep 22 2014 unitycc.menu
-rw-r--r-- 1 root root 3891 Nov 3 2013 unity-lens-applications.menu
The file listing seems to be OK. Can you check if the "Enable Applications Menu" is checked for Unity. In VMWare Player, you access it from the menu, following "Player -> Manager -> Virtual Machine Settings -> Options tab -> Unity". This picture shows the option for VMWare Player. You should find it similarly in VMware Workstation from its menu.
DeleteI got this to work with ubuntu 14.04 but not with ubuntu 15.04.
ReplyDeleteI have the same list in /etc/xdg/menu but the application menu is empty (enable application menu is checked).
Perhaps, you can try the following,
Delete(1) shutdown your Ubuntu guest completely and exit your VMware
(2) go the Virtual Machine directory on your host, locate and delete the "caches" directory
(3) start your Ubuntu guest again, log in and enter Unity
Wait for a few seconds and see if the Application menu appears.
Script "xdg-find-menus" (/usr/lib/vmware-tools/bin64/xdg-find-menus or /usr/lib/vmware-tools/bin32/xdg-find-menus) is responsible for locating the menu file. If the desktop is detected as "GNOME", then menu file should be /etc/xdg/menus/gnome-applications.menu. Hope this helps.
Hello,
ReplyDeleteI tried almost everything from your tutorial on Ubuntu 14 guest system with Windows as host system and I didn't manage to get Unity mode working. I tried GNOMe and Xfce, I also tied to change vmware-xdg-detect-de, however nothing worked for me. What's strange, that i have no vmware-xdg-detect-de in /usr/bin, it is located in $HOME/vmWare/vmware-tools-distrib/lib/bin32/. What could be wrong?
Have you installed VMWare tool? Is the installation successful? Can you please try "which vmware-xdg-detect-de" and see what comes up?
DeleteHello,
ReplyDeletewhen I first tried your method in July with Ubuntu 14.04.3 LTS and GNOME Flashback (Metacity) it worked (even if there was an empty Application menu). Now after some package upgrades Unity mode does not work anymore and not only with GNOME Flashback (Metacity) but also with LXDE and XFCE (I've tried to install these also to see if was not working at all). I've also reinstalled VMWare tools because of kernel upgrades. I use VMWare Player 7.1.2 build 2780323 on Windows 8.1 64 bit. Please, can you suggest something else to check?
I've fixed it myself. For some strange reason VMWare player was showing the Unity button grayed. After upgrading VMWare tools *not on guest Ubuntu* but via VMPlayer->Preferences->Download All Components Now it works as before.
DeleteI am glad that you fixed it. I am sorry that I could not look at it earlier. What you found is a good tip. Thank you for sharing it.
DeleteHi,
ReplyDeleteI have host machine, currently running on ubuntu 14.04.3. i'm using vmware 12.0 and installing windows 7 as guest machine.
after following your tutorial, still no unity mode available.
I am sorry that the post is about the Unity Mode for Linux Guest.
DeleteI also recommend you to watch this ubuntu installation video.
ReplyDeletehttps://www.youtube.com/watch?v=-DLZETe0onY
I'm running xubuntu desktop 15.04 on VMware Workstation 10.0.7. After reinstalling VMware tools several times it still does not work: desktop does not resize automatically, cannot enter unity mode, clipboards are not synchronized. /usr/bin/vmware-xdg-detect-de returns XFCE. What should I do?
ReplyDeleteSimply replacing the script with the one in github worked for me on Workstation 11 with Trusty guest. Thanks!
ReplyDeleteSimply replacing the script worked for me too. Though I ended up with the "empty menu" problem as well. Did some detective work based on Gray's recommendations above:
ReplyDelete"which vmware-xdg-detect-de" told me that system is using the one under /usr/bin/vmware-xdg-detect-de. This file was soft linked to /usr/lib/vmware-tools/bin32/vmware-xdg-detect-de*. Guess what I found when I went to "/usr/lib/vmware-tools/bin32/"? vmware-xdg-detect-de* was missing execute permissions for my account. Added the permission and restarted the VM. Voila - menu is back in Unity. Thanks for the help!
I am trying metacity on Ubuntu 16.04. When I look at the libraries used by metacity, I am seeing libunity-gtk*.so*
ReplyDeletefgrep unity /proc/`pidof metacity`/smaps
Is an updated gnome flashback now based on Ubuntu unity? If so, that seems to mean even metacity will not work with VMware Unity.
Hello, Mr. Chen, I'm a Chinese student, my name is Liu Kun, English is not good can only use Google translation, please understanding.
ReplyDeleteMy installation environment:
Linux d-virtual-machine 4.2.0-27-generic #32~14.04.1-Ubuntu SMP UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
VMware Tools daemon, version 10.0.6.1643 (build-3595377)
gnome-session 3.9.90 (Metacity)
After the execution of your script, there is no successful open vmware unity mode.
Could you help me? Thanks
(1) which version of VMWare are you using?
Delete(2) can you resize the guest system (virtual machine) window?
(1)version : 11.0.0 build-2305329
Delete(2)yes
When I use the default Toolkit VMwareTools-9.9.0-2304977.tar.gz ,it worked .
But the shared folder (/mnt/hgfs) not work.
So I referred to this method.(Links are as follows)
URL:https://github.com/rasa/vmware-tools-patches
And then put the script vmware-xdg-detect-de in vmware-tools-distrib/lib/bin32
(Note:The VMware Tools version is VMwareTools-10.0.6-3595377.tar.gz rather than VMwareTools-9.9.0-2304977.tar.gz )
reinstall the vmware-install.pl
The result is a shared file work, VMware Unity does not work.
post the log:
DeleteURL :https://drive.google.com/file/d/0B5g16c2UwEZPa25ZbjdidFVpaVk/view?usp=sharing
VMWare has dropped the Linux support of the Unity mode. Try in in older versions, such as, Workstation 10 or VMware Player 7 (https://my.vmware.com/en/web/vmware/free#desktop_end_user_computing/vmware_player/7_0|PLAYER-714|product_downloads).
DeleteMaybe this is the best way. Thank you very much for your patience.
DeleteThis comment has been removed by the author.
ReplyDeleteThis comment has been removed by the author.
ReplyDeleteThanks for sharing & Its Great information. And Look on right now!
ReplyDeleteCan help you BlogSpot Blog, Sbcglobal email not working on iPhone/Mac/Phone, and Sbcglobal.net not sending and receiving emails| How to Reset My Spotify Password? How to Recover My Spotify Password?