Sunday, August 3, 2008

VMWare on XOrg 6.3

A couple of months ago, after I emerged xorg 6.3, I noticed that my vmware started acting up quite a bit. It doesn't seem to recognize my correct keymap, and when I switch back into my host, my ctrl/alt/shift keybindings are all gone. I managed to put in some workarounds which I'll share here:

For the keybindings in VMWare, I added to following to my /opt/vmware/workstation/lib/config file:
xkeymap.keycode.117 = 0x151
xkeymap.keycode.112 = 0x149
xkeymap.keycode.118 = 0x152
xkeymap.keycode.119 = 0x153
xkeymap.keycode.110 = 0x147
xkeymap.keycode.115 = 0x14f

xkeymap.keycode.111 = 0x148
xkeymap.keycode.116 = 0x150
xkeymap.keycode.113 = 0x14b
xkeymap.keycode.114 = 0x14d

xkeymap.keycode.133 = 0x15b


To handle the loss of my modifiers, I wrote a script that I execute with a hotkey:

#! /bin/sh

xmodmap -e 'add Shift = Shift_L Shift_R '
xmodmap -e 'add lock = Caps_Lock'
xmodmap -e 'add control = Control_L Control_R '
xmodmap -e 'add mod1 = Alt_L Alt_L Meta_L'
xmodmap -e 'add mod2 = Num_Lock'
xmodmap -e 'add mod4 = Super_L Hyper_L'
xmodmap -e 'add mod5 = Mode_switch ISO_Level3_Shift'

2.6.26.1 Kernel and my D830

Today, I decided it was time to load up the latest kernel onto my laptop(Dell Latitude D830), because I heard that the WiFi LED finally works, and I didn't feel like doing any real work.

Whenever there is a new kernel, my two biggest fears are the Cisco VPN client and VMWare modules. Both of those always break, and sure enough, they were busted. Fortunately, I was able to fix the Cisco issue by applying this patch. That was the easy part....

VMWare ended up being more of a pain, because of some additional changes in 2.6.26.1 proc-fs. The first thing I had to do was get the latest any-any VMWare modules from here. This works fine on 2.6.26, but to make it work on 2.6.26.1, I hacked up a quick patch to vmblock. You have to untar the vmblock.tar in the any-any package, and apply this patch. Tar it back up, run vmware-config.pl, and you might be in business. The last thing that got me was that I needed to change a couple of kernel config parameters for modules that I never noticed before. If your modules are compiling, but not loading, go to menuconfig for your kernel, check Enable loadable module support->Forced module loading and Module versioning support. Make sure they are selected and recompile. You'll have to rebuild the other modules too. That did it for me!

Now I have my WiFi LED!

Links: VMWare Module Topic, Cisco VPN Topic

First!

Welcome! Here, you'll find a little bit of everything I find interesting. I enjoy building interesting systems and to do that I only use Linux and Python. You can expect the bulk of the posts on this blog to be related to one of those two topics. Hope you stick around and I hope I can keep it interesting.