Ubuntu 8.10 and VMware Workstation 6.5 – Virtual Unity

UPDATE: Read full post for the edit containing a much better alternative!

I am loving the new VMware Workstation 6.5 with Unity mode(among other features) I hope to be rid of the need for a dedicated boot entry for Windows. If you haven’t checked it out yet, Unity mode alows you to have access to your Guest OS’ applications menu in order to start and run those apps in the ‘space’ of your Host OS’ desktop. Not the most technical explanation, but it essentially allows the focus to be on what you’re doing with your VM as opposed to the OS itself – cool stuff.

Which brings me to the reason for this post – it seems as though the latest release of Ubuntu (Intrepid Ibex – 8.10) doesn’t play well with VMware Workstation(or vice versa). Then throw in the added complication of an Acer laptop that I’m dealing with (TravelMate 3260), and it becomes more complex.

Of course I searched around the internet for answers, and found bits and pieces. I was able to fix my keymap issue here. I made use of compiz-check to verify my hardware was capable of running Compiz and then installed it.

So, now I am pretty much set, from what I have read and can tell that I should be able to utilize Unity mode in my VM now. (Of course, I have already created my Windows XP VM, installed updates/VMware Tools, etc.)

Well, I booted up the VM and once it was up and ready, clicked the Unity button. I was finally ready to try this puppy out. VMware Workstation minimized and the Unity “Start” button was created at the top left, just under the top Applications bar in Ubuntu. I clicked the button for my VM and… nothing! It did absolutely nothing. Well, the first thing I tried to do was bring up my VMware Workstation window again, and it came up all gray and was basically not responding.

Well, this was all after a bit of time trying to get this thing to work, so I was dissapointed. I searched the net again to no avail, just turning up post after post of different people having the same issues (apparently not this guy). So, I tried different combinations of VM settings in displays, Unity settings, etc. It still would just show the button, almost defiantly.

I decided to try something else – I noticed that while in VMware Workstation preferences, there are a couple options that are grayed out unless you are running VMware Workstation as root. So, I opened up a terminal and ran:

sudo /usr/bin/vmware

It opened up the VMware Workstation window, and I started my Windows VM once more. I just knew it was going to work this time. Once loaded I again pressed the Unity button and it minimized VMware Workstation; leaving my Unity Menu at the top left again. I pressed the Menu button this time with added confidence, only to find that the result was the same.

However, I noticed that in the terminal window, there was a message:

VMware Workstation Hint:
A language-specific mapping from X keysyms to machine scancodes will be used,
based on the detected keyboard type of "us101", because you are not using an
XFree86 server running on the local machine.
However, this program's language-specific mapping may not be correct for your
keyboard in all the details, because X keyboard mappings vary.
You can override specific key mappings in the virtual-machine configuration.
For more information, please see VMware Workstation documentation available
on our Web site at "http://vmware.com/info?id=10".

0) OK

Please choose a number [0-0]:

Obviously, I had grown weary of this “Hint” earlier on and had already set it to not show this again. As soon as I typed in 0 and hit Enter, a game of Solataire popped up on my screen in all it’s Compiz-enabled, Windows 95 prowess.

I was finally enjoying Unity mode and bouncing back and forth between windows(literally), apps, OSes. It was a touching moment to see such vastly different OS models come together like that!

Ok, maybe not that touching, but it’s sure nice to have my proprietary apps running side by side with the open-source goodness that it Linux.

Anyone else have issues like this? Any tips, or suggestions? I am just glad I got this far on it, as I’m by no means a Linux guru. Maybe this will help some others that have struggled with the same issues as I.

Kudos to VMware for another slick release of Workstation, and Ubuntu with a nice release of Interpid Ibex – And to all those whose information helped me along the way, Thank You!

EDIT: Just as an update to anyone reading this, I found out that there is a much better way to do this. Instead of using the “xkeymap.nokeycodeMap” line in your VMware workstation config file, if you manually specify the keymap instead of simply having it ignore it, you can actually run Workstation 6.5 as your user and no need to have a terminal window open, so it’s much more fluid.

Look at this post on the VMware Community site.

Hope this helps someone!

David Markley

Well, I was born to my parents... and did the school thing, and then work. So, pretty standard humanoid setup... :-)

  • Eric Bandel

    Thanks a lot for this tip.
    It helping me a lot!

  • Eric Bandel

    Thanks a lot for this tip.
    It helping me a lot!

  • Glad I could help, also, make sure you check out the edited information at the bottom, it should make your experience much better with VMware Workstation 6.5 and Unity.

  • Glad I could help, also, make sure you check out the edited information at the bottom, it should make your experience much better with VMware Workstation 6.5 and Unity.

  • kikker46

    solve by putting this line in .vmware/preferences
    (general file /etc/vmware/config not working)

    xkeymap.language = “us101”

    so all together it is

    xkeymap.nokeycodeMap = true
    xkeymap.language = “us101”
    xkeymap.keycode.108 = 0x138 # Alt_R
    xkeymap.keycode.106 = 0x135 # KP_Divide
    xkeymap.keycode.104 = 0x11c # KP_Enter
    xkeymap.keycode.111 = 0x148 # Up
    xkeymap.keycode.116 = 0x150 # Down
    xkeymap.keycode.113 = 0x14b # Left
    xkeymap.keycode.114 = 0x14d # Right
    xkeymap.keycode.105 = 0x11d # Control_R
    xkeymap.keycode.118 = 0x152 # Insert
    xkeymap.keycode.119 = 0x153 # Delete
    xkeymap.keycode.110 = 0x147 # Home
    xkeymap.keycode.115 = 0x14f # End
    xkeymap.keycode.112 = 0x149 # Prior
    xkeymap.keycode.117 = 0x151 # Next
    xkeymap.keycode.78 = 0x46 # Scroll_Lock
    xkeymap.keycode.127 = 0x100 # Pause
    xkeymap.keycode.133 = 0x15b # Meta_L
    xkeymap.keycode.134 = 0x15c # Meta_R
    xkeymap.keycode.135 = 0x15d # Menu

  • kikker46

    solve by putting this line in .vmware/preferences
    (general file /etc/vmware/config not working)

    xkeymap.language = “us101”

    so all together it is

    xkeymap.nokeycodeMap = true
    xkeymap.language = “us101”
    xkeymap.keycode.108 = 0x138 # Alt_R
    xkeymap.keycode.106 = 0x135 # KP_Divide
    xkeymap.keycode.104 = 0x11c # KP_Enter
    xkeymap.keycode.111 = 0x148 # Up
    xkeymap.keycode.116 = 0x150 # Down
    xkeymap.keycode.113 = 0x14b # Left
    xkeymap.keycode.114 = 0x14d # Right
    xkeymap.keycode.105 = 0x11d # Control_R
    xkeymap.keycode.118 = 0x152 # Insert
    xkeymap.keycode.119 = 0x153 # Delete
    xkeymap.keycode.110 = 0x147 # Home
    xkeymap.keycode.115 = 0x14f # End
    xkeymap.keycode.112 = 0x149 # Prior
    xkeymap.keycode.117 = 0x151 # Next
    xkeymap.keycode.78 = 0x46 # Scroll_Lock
    xkeymap.keycode.127 = 0x100 # Pause
    xkeymap.keycode.133 = 0x15b # Meta_L
    xkeymap.keycode.134 = 0x15c # Meta_R
    xkeymap.keycode.135 = 0x15d # Menu

  • kikker46
  • kikker46