Installing Ubuntu on a ThinkPad R60e

From ThinkWiki
Revision as of 13:56, 11 October 2006 by 12foo (Talk | contribs) (Xorg.config for two screens)
Jump to: navigation, search


There are no particular problems installing Ubuntu Dapper (6.06.1) or Edgy Knot2 (6.10 alpha) on a R60e.

All notes here refer to 6.06.1 install disk and subsequent updates. I am currently testing Edgy on the basis of a knot2 install and updates but without any modification of config files. Significant changes that apply to the 'as it comes' edgy are noted.

Partition and Boot

If the Windows and Service Partitions are to be retained then the Gnome Partition Editor can be used from the live cd to shrink the Windows partition (sda1). The IBM recovery partition is placed at the end of the HD disk and contains a cut down version of WinNT. Note that the Recovery partion is not located on a cylinder boundary and is placed between 'unused' disk areas, 3MB in front and 7MB behind. These appear to contain the diagnostics programs and should not be moved or resized if the diagnostics and R&R programs are required.

To repartion: boot to Windows and immediately create a Rescue and Recover disk set. The first disc of the set must be a CD (though if you put a DVD in it will be formatted and writen as a CD disc); this is a bootable disc. The second stage of the disc writing process will write to either one DVD or 5 CDs. Restoring from these disks will restore to factory state, which means the entire hard drive is reformatted. After the disc set is created it is not possible to create a second set.

However, if you have a USB HD you can also create a Rescue and Recovery copy on that. I have not tried (sucessfully) but I it should be possible to boot and restore from a USB HD recovery set and preserve any new partitions provided that: the windows partition is not too small, and the Recovery partition is preserved.

boot with Ubuntu live CD, use Gnome Partition editor to shrink the IBM_PRELOAD (sda1) partition.

reboot to Windows and let it run chkdsk

boot Ubuntu Live CD and install

The live CD will install GRUB to the MBR, this is ok, the installer will identify both IBM_PRELOAD and the service partition and provide boot options for both. Edit /boot/grub/menu.lst to add the hide and unhide lines (this will prevent Windows showing the Service Partition).

 # This entry automatically added by the Debian installer for a non-linux OS
 # on /dev/sda1
 title           Microsoft Windows XP Professional
 hide            (hd0,1)
 root            (hd0,0)
 chainloader     +1
 # This entry automatically added by the Debian installer for a non-linux OS
 # on /dev/sda2
 title         IBM/Lenovo Maintenance
 unhide        (hd0,1)
 root          (hd0,1)
 chainloader   +1


The default kernel at install will be linux-image-386. Install Base System linux-image-686 for full support of the core-duo processor including SMP. (The older linux-image-SMP kernel is not required and may not perform as well as it is intended for servers and does not have the pre-emption patches.) You will also need Base System (restricted) linux-restricted-modules-686 as the Intel wireless card driver loads binary firmware.

For Edgy-Eft (6.10) the default kernel linux-image-generic will fully support SMP so installing a kernel should not be necessary.

Xorg.config for two screens

Intel 945GM The config options are described in the driver man page $ man i810. The following sections are for a configuration with the laptop screen as the primary display and an second display on the D-SUB15 analog VGA port. The second display is expected to be a flat panel or a data projector ('beamer').

   Section "Device"
   	Identifier	"Intel 945GM Internal LCD"
   	Driver		"i810"
   	BusID		"PCI:0:2:0"
   	Screen 0
   	Option 	"MonitorLayout" 	"CRT,LFP"
   Section "Device"
   	Identifier	"Intel 945GM External D-SUB15"
   	Driver		"i810"
   	BusID		"PCI:0:2:0"
   	Screen 1
   # some additional possibilities
   #	Option	"CheckLid" 	"no"
   # 	Option 	"Clone" 	"no"
   #	Option 	"CloneRefresh"	"60"
   # 	Option 	"FlipPrimary" 	"no"
   # 	Option  "DisplayInfo" 	"yes"
   #	Option 	"Rotate" 	"CCW"	

Resolution and timing

X and the graphics adaptor will detect an external screen if present and attempt to auto negotiate an appropriate resolution and refresh rate. It is unclear from the Xorg/XFree documentation how the useable video modes are selected/rejected but it appears that if a monitor is connected to the VGA connector the highest available VESA resolution will not be selected unless it has a refresh rate of 75Hz or more. As the optimum refresh rate for a flat panel display is usualy 60Hz, and often the highest (native) resolution only available at this rate, it may be necessary to set a mode line for best performance.

In the case of a data projector, these appear designed to accept inputs for resolutions and refresh rates far in excess of their native SVGA or XGA capabilities and automaticaly convert down, which may entail a loss of image quality. Thus, for these also, forcing a reasonable resolution and refresh rate is desirable.

The possible modes for a connected monitor can be discovered by looking at the X log file $ sudo nano -w /etc/X11/xorg.conf or by running $ xvidtune.

   Section "Modes"
   	Identifier 	"V75"
   	ModeLine "VGA 75"   31.50  640  656  720  840  480  481  484  500 
    	ModeLine "SVGA 75"  49.50  800  816  896 1056  600  601  604  625 
   	ModeLine "XGA 75"   78.80 1024 1040 1136 1312  768  769  772  800 
   	Modeline "SXGA 75" 135.00 1280 1296 1440 1688 1024 1025 1028 1066
   Section "Modes"
   	Identifier 	"V60"
   	Modeline "XGA 60"   65.00 1024 1048 1184 1344  768  771  777  806 
   	ModeLine "SXGA 60" 108.00 1280 1328 1440 1688 1024 1025 1028 1066
   	ModeLine "UXGA 60" 160.00 1600 1664 1856 2160 1200 1201 1204 1250 

The monitor Most recent monitors will supply X with data on available built in modes, and this will overide the HorizSync and VertRefresh values in the config file. However some projectors do not supply this information and fail to display unless the HorizSync and VertRefresh are configured.

   Section "Monitor"
   	Identifier	"LCD on D-SUB15"
   	Option		"DPMS"
   	HorizSync	31-75
   	VertRefresh 	59-75
    	UseModes 	"V60"
   	UseModes	"V75"


   Section "Screen"
   	Identifier	"External Screen"
   	Device		"Intel 945GM External D-SUB15"
   	Monitor		"LCD on D-SUB15"
   	DefaultDepth	24
   	SubSection "Display"
   		Depth		24
   #		Modes		"1024x768" "1280x1024" "1600x1200" "640x480" "600x800"
   		Modes 		"XGA 60" "SXGA 60" "UXGA 60" "VGA 75" "SVGA 75"
   Section "Screen"
   	Identifier	"Laptop LCD"
   	Device		"Intel 945GM Internal LCD"
   	Monitor		"Lenovo 15in LCD"
   	DefaultDepth	24
   	SubSection "Display"
   		Depth		24
   		Modes		"1024x768"
   #		Virtual         1600 1200
   #		ViewPort 	0 0


   Section "ServerLayout"
   	Identifier	"Default Layout"
   	Screen		0 "Laptop LCD" Absolute 0 0
   	Screen		1 "External Screen" RightOf "Laptop LCD"
   #	Screen 		1 "External Screen" Absolute 1024 0
   	InputDevice	"Generic Keyboard"
   	InputDevice	"Configured Mouse"

Note 1 With this layout the mouse will move off the right hand edge of the laptop screen and make an entrance on the left of the external monitor. If you can't find the mouse it may be on the other screen, try moving it top left.

Note 2 The gnome desktop can be configured for each monitor. But it is not possible to transfer a window from on display to the other. Trying to start Firefox on one desktop when it is opened on another monitor will give a message: "Firefox is already running, but is not responding. To open a new window you must first close the existing Firefox process, or restart your system".

Connected Screens: To be able to drag windows from one screen to another and fix the problem in Note 2, just enable the Xinerama extension like so:

   Section "ServerLayout"
   	Identifier	"Default Layout"
   	Screen		0 "Laptop LCD"
   	Screen		1 "External Screen" RightOf "Laptop LCD"
   	Option		"Xinerama" "true"
   	InputDevice	"Generic Keyboard"
   	InputDevice	"Configured Mouse"

However with Xinerama enabled it is not possible to use different screen resolutions on each display ("The X Server does not support the XRandR extension. Runtime resolution changes to the display size are not available"), nor will Gnome provide a separate desktop task bar etc. note [here]

[Different resolutions work for me. Have you enabled the DRM module? Here's my xorg.conf --phil]


There is an option in the BIOS setup to disable the modem which seems a good idea if the modem is not needed. Do not do this, if the modem is disabled then sound will not work with Ubuntu (6.06 and Edgy knot2). (Sound does however work in WinXP with the modem disabled)

Mouse and TrackPoint

see How to configure the TrackPoint Note however that to modify sensitivity and scroll rate on R60e with Ubuntu 6.06 the commands are:

    # echo -n 96 > /sys/devices/platform/i8042/serio0/speed
    # echo -n 200 > /sys/devices/platform/i8042/serio0/sensitivity

This needs to be typed in a root window; using sudo gives a permission denied.

to be continued

Wireless [works]

Bluetooth [setup appears ok, untested due to lack of bluetooth device]

FnF2 lock Screen working

FnF3 Display Battery Condition

FnF4 Sleep can be configured in Gnome power save option, but seems to disable fn+F12 hibernate; 'blank screen' sets screensaver)

FnF5 toggle Wireless/Bluetooth on/off

FnF7 Switch Screen? (no ibm/hotkey shown with $ acpi_listen only effective if cloned displays?)

FnF8 TrackPoint? No Effect (ibm/hotkey HKEY 00000080 00001008)

FnF9 (ibm/hotkey HKEY 00000080 00001009) (Easy Eject in WinXP)

FnF12 Suspend to disk, seems to work, but not entirely reliable, some scrambling of text console display during restart Sometimes restart hangs after reading disk, need to deactivate/reactivate wireless.

FnHome screen brighter (ibm/hotkey HKEY 00000080 00001010)

FnEnd screen dims (no ibm/hotkey shown with $ acpi_listen)

FnPgUp ThinkLight on/off

Modem [not used, but see above re sound]