Installing Debian Sid (October 2008) on a ThinkPad X200
Contents
Introduction
Amazing machine: light, quiet, large battery life, ideal for travels, great value for money compared to X200T and X300.
Creating installation device
The X200 has no cd/dvd but can boot from USB. On the X200 BIOS settings, the USB disk boot option needed to be raised to be used first. Using F1 at boot gives access to the BIOS.
I created an USB bootable iso from another linux installation. I had an usb stick with a FAT32 partition on /dev/sdc1. I dowloaded the boot and iso file and installed the image using:
wget http://people.debian.org/~joeyh/d-i/images/daily/hd-media/boot.img.gz wget http://cdimage.debian.org/cdimage/daily-builds/daily/arch-latest/i386/iso-cd/debian-testing-i386-netinst.iso zcat boot.img.gz >/dev/sdc1 mkdir /mnt/sdc1 mount /dev/sdc1 /mnt/sdc1 cp debian-testing-i386-netinst.iso /mnt/sdc1
The boot stick will use the network to install the package but a more complete ISO image can be dowloaded.
The wifi will not work (see Installing_Debian_on_an_X200) but the Ethernet card will. In theory it should be possible build custom Debian Live USB stick, using the latest package and install from there, I didn't manage so far. Bold text
Sid installation
To install sid use the expert installation support and choose unstable for the repository.
Backup hard drive data
In order to save the hard drive content, I created complete hard drive image on another hard disk. During the installation procedure I activated another shell with CTRL-ALT-F3, mounted an external HD (/dev/sdb1) and copied the image with:
mkdir /mnt/sdb1 mount /dev/sdb1 /mnt/sdb1/ dd if=/dev/sda of=/mnt/sdb1/sda-image
In principle partimage is better option but the installation image does not have it. Also gzipping the partition on the fly would have bin better, but the gzip or bzip2 were not present. Using a custom Debian Live installation image would solve the problem.
Kernel
Some kernel options here:
root=/dev/sda1 ro acpi_sleep=s3_bios vga=360 video=vesafb,mtrr
Video
Video driver 2:2.3.2-2+lenny5 is not stable enough. Video get garbled from time to time. Vesa driver is not that slow.
This is a simple xorg.conf:
$ cat /etc/X11/xorg.conf Section "InputDevice" Identifier "Generic Keyboard" Driver "kbd" Option "XkbRules" "xorg" Option "XkbModel" "pc104" Option "XkbLayout" "us,us(intl)" Option "XkbOptions" "compose(lwin),compose(rwin),grp:shifts_toggle,grp_led:scroll" EndSection Section "InputDevice" Identifier "Configured Mouse" Driver "mouse" Option "CorePointer" Option "Device" "/dev/input/mouse0" Option "Protocol" "ImPS/2" Option "EmulateWheel" "on" Option "EmulateWheelButton" "2" Option "EmulateWheelTimeout" "250" Option "XAxisMapping" "6 7" Option "YAxisMapping" "4 5" EndSection Section "Screen" Identifier "Default Screen" Monitor "Configured Monitor" Defaultdepth 24 SubSection "Display" Modes "1280x800" # Virtual 2048 864 EndSubSection EndSection Section "Monitor" Identifier "Configured Monitor" DisplaySize 231 233.5 #fake smaller dpi EndSection Section "Monitor" Identifier "HDMI-1" Option "Ignore" "True" EndSection Section "Monitor" Identifier "HDMI-2" Option "Ignore" "True" EndSection Section "Device" Identifier "Configured Video Device" # Driver "intel" Driver "vesa" Option "monitor-HDMI-1" "HDMI-1" Option "monitor-HDMI-2" "HDMI-2" EndSection
Fonts
Default fonts are a bit ugly. Things get better by creating some symbolic link:
cd /etc/fonts/conf.d ln -s ../conf.avail/10-autohint.conf ln -s ../conf.avail/10-sub-pixel-rgb.conf ln -s ../conf.avail/70-no-bitmaps.conf
For GTK and Firefox
Fonts size are too large. Solution:
$cat ~/.gtkrc-2.0 # -- THEME AUTO-WRITTEN DO NOT EDIT include "/usr/share/themes/Industrial/gtk-2.0/gtkrc" include "/home/rdemaria/.gtkrc-2.0.mine" # -- THEME AUTO-WRITTEN DO NOT EDIT
$cat ~/.gtkrc-2.0.mine gtk-font-name = "Sans 8"
Bold font are also ugly on xvrt (in xterm the bold font control seems always broken). See below for the solution.
Terminal
I tried several terminals. But I found rxvt-unicode the easiest and fastest. This resources allow 4 terminals in one window. Bold font (unreadable to me) are disabled.
$cat ~/.Xresources rxvt*cutchars: \$:[] rxvt*visualBell: true rxvt*foreground: white rxvt*background: black rxvt*geometry: 80x27 rxvt*jumpScroll: true rxvt*skipScroll: true rxvt*scrollBar: false rxvt*boldFont: rxvt*boldItalicFont: rxvt*saveLines: 9096 rxvt*mouseWheelScrollPage: false
Wifi
Put in the /etc/apt/source.list
deb http://kernel-archive.buildserver.net/debian-kernel trunk main
Installed linux-image-2.6.27-1 and firmware
wget http://intellinuxwireless.org/iwlwifi/downloads/iwlwifi-5000-ucode-5.4.A.11.tar.gz tar xvfz iwlwifi-5000-ucode-5.4.A.11.tar.gz cp iwlwifi-5000-ucode-5.4.A.11/iwlwifi-5000-1.ucode /lib/firmware aptitude install linux-image-2.6.27-1-686 hal
Suspend
Suspend to disk works using the button Fn+F12.
Suspend to ram (Fn+F4) does not work with intel driver. Using vesa driver, it seemed it worked, but now I have the lcd back light not switching on.
I tried some of the remedies in Problem_with_display_remaining_black_after_resume but without success.
The trackpoint occasionally stops working after a resume. Apparently it is enough to move it a little bit during the resume.
Special keys
Some keys are intercepted by X Windows. The keycodes are
227 Fn 234 Tab left 233 Tab right 176 Volume up 174 Volume dn
Mute switch the hardware volume which is not controlled by ALSA.
ACPI links suspend to ram and to disc to Fn+F4 and Fn+F12 respectively. Screen brightness, thinklight, bluetooth works as well.
Sound
Everything works, but in a strange way. The hardware volume control is managed by acpi
$ cat /proc/acpi/ibm/volume level: 8 mute: off commands: up, down, mute commands: level <level> (<level> is 0-15)
The mute button is linked to the mute command, but volume up and down are passed to X with keycode 176 174. I thought that acpi was intercepting the key and send them to X using fakekey. I played in /etc/acpi/events but I didn't managed to change the behavior.
Skype
Everything works downloading the skype version for Etch. After suspending and resuming the video does not work anymore. The error message is:
Skype V4L2: Could not find a suitable capture format
Several people propose to update the uvcvideo driver.
svn checkout http://svn.berlios.de/svnroot/repos/linux-uvc/ cd linux-uvc/linux-uvc/trunk/ make make install modprobe uvcvideo
But I didn't tried yet cause I'm still using the experimental kernel that does not come with packages for compiling modules.
GTK and Firefox
Fonts size are too large. Solution:
$cat /home/rdemaria/.gtkrc-2.0 # -- THEME AUTO-WRITTEN DO NOT EDIT include "/usr/share/themes/Industrial/gtk-2.0/gtkrc" include "/home/rdemaria/.gtkrc-2.0.mine" # -- THEME AUTO-WRITTEN DO NOT EDIT
$cat /home/rdemaria/.gtkrc-2.0.mine gtk-font-name = "Sans 8"
Printer and scanner
Usb printer and scanner (HP Officejet J4580) works perfectly using cups, hpoj, xsane, hplib.