Installing Ubuntu 9.10 (Karmic Koala) on a ThinkPad X200

From ThinkWiki
Jump to: navigation, search

Just brief info for now as I didn't have time to test all features yet. Please update if you have info on features marked as untested.

These notes also apply to the x200 tablet.


  • Installing from desktop cd:
    Works fine with external usb drive
  • Installing from USB stick:
    Works fine
  • Installing from alternate cd:
    works fine with optical drive in X200 UltraBase, just follow the steps
  • Installing via wubi:
    works fine, except hibernate (normal for wubi installations)
  • Updating from Jaunty:
    not tested

Features support


  • internal LCD: works fine
  • external VGA: works fine
  • external VGA via ultraBase: works fine
  • DisplayPort via ultraBase: works fine


The middle Scrollbutton won't work out-of-the-box, you can solve it with the help of the following Link:
I find the middle scrollbutton doesn't works very well for me by following these steps.
The solution I currently use is to automatically execute the following commands:

xinput set-int-prop "TPPS/2 IBM TrackPoint" "Evdev Wheel Emulation" 8 1
xinput set-int-prop "TPPS/2 IBM TrackPoint" "Evdev Wheel Emulation Button" 8 2
xinput set-int-prop "TPPS/2 IBM TrackPoint" "Evdev Wheel Emulation Y Axis" 8 4 5
xinput set-int-prop "TPPS/2 IBM TrackPoint" "Evdev Wheel Emugreatlation X Axis" 8 6 7

Another way to enable scrolling even if the instructions are a little older: You can also try using gpointing-device-settings instructions as described at the top of the page but it's not persistent when you go into suspend-resume.

If you want to use the middle Scrollbutton, you will also likely want to disable middle-button paste. To do so just add the following line to the above:

xinput set-button-map "TPPS/2 IBM TrackPoint" 1 0 3


  • Intel 5100: works fine

After updating the kernel to 2.6.31-15-generic, the old kernel panic problem which used to happen in ubuntu 8.04 or older release, comes up again. I don't know whether this affects a fresh installation of karmic as I update the system immediately after I get a wired connection.
I have the linux-backports-modules-wireless-karmic-generic package installed. Now it works fine.

  • Intel 5300: works fine
  • Intel 5350: works fine, kernel sees it as 5300


generally works, but see


Works fine


Works, with the installation of

Note: mbm-gpsd is not running after wake from suspend


Works perfectly.


  • internal speakers: works fine, good volume
  • headphones: works
  • headphones via ultrabase: works fine
  • internal mic: works fine, good sensitivity
  • mic via ultrabase: not tested
  • Volume up and down keys Work fine, Mute does not.

(Mute actually works but you won't find an OSD showing you it's on mute, unlike volume up and down. Additionally, plugging in your headphones even while on mute will let you hear sounds)

To get OSD working with Mute: (

Edit the file /etc/grub.d/10_linux and add acpi_osi=Linux to the line with $GRUB_CMDLINE_LINUX_DEFAULT, so it will look like this:


Then run $ sudo update-grub

Up to kernel 2.6.32 this seems to be the only way to fix the mute problem. However, this fix introduces new issues. Therefore, another, clean solution is being implemented as soon as kernel 2.6.33.


mostly work, for HDD hddtemp is needed


Doesn't work, see


I couldn't make hdaps module to use Tp smapi. It seems module-assistant does not build patched version of hdaps module from tp-smapi-source package.
Nevertheless hdaps seems to work fine with thinkpad_ec. After installing hdapsd edit /etc/default/hdapsd make sure START is set to "yes", DISK to "sda" and adjust SENSITIVITY (50 works ok for most people).

edit: use tp-smapi as in [1]


While the X200 is known for it's good cooling system, when running Ubuntu the fan seems to run constantly at around 3000rpm after it reached a certain threshold temperature. See the related bugreport on Launchpad:

For reasons of power consumption and noise reduction you might want to control the fans on your own using tp-fan, see ACPI_fan_control_script#ThinkPad_Fan_Control_GTK_GUI_tool. The Jaunty PPA seems to work fine on Karmic.

For me the following settings seem to work: Check both boxes, set all sensors to 15% and the temperature threshold of all sensors to 25°C/68°F. With this settings the fan runs constantly with 2000rpm.


Works fine as long as you don't suspend when docked.

edit: Suspend with dock works for me.


Works fine when hibernating when undocked. Not tested when docked.

Docking and Undocking

  • Docking works ok. System even tries to switch automatically to saved external monitor display configuration and sometimes it even does the smart thing
  • Before undocking you must always press "pre-undock" button on the left side of docking station and wait until green arrow allows you to proceed. Otherwise system will start to beep at you and it will probably get confused.
  • Undocking and/or pressing "pre-undock" button switches automatically display to internal LCD only so you don't have to worry about it.
  • Undocking doesn't umount automatically devices connected to docking station (usb pendrives, optical drive) so you must remember to do this manually. See
  • Suspending or hibernating when docked is not a good idea as system will probably get confused when resumed not docked also.





Automatic Brightness Controll

Possible using a script like the one at this link:
Remember to install php5-cli and php5-gd, in the cfg file: pbr=1 (or lower if preferred a brighter screen)
There is an error in the script.... some [] have to be added at the if statement (line 108 and the others)
The scrpt has to be run with sudo privileges, the password in the cfg file doesn't work (8-2010).