Difference between revisions of "Installing Fedora Core 6 on a ThinkPad T60"
(→Wireless Networking: add links to Thinkpad 11a/b/g and 11a/b/g/n pages) |
m (→Installation) |
||
Line 6: | Line 6: | ||
'''Note''' : According to Red Hat, if you boot the install disk using 'linux i686' when installing, then the i686 kernel will be installed. This does not work when upgrading. | '''Note''' : According to Red Hat, if you boot the install disk using 'linux i686' when installing, then the i686 kernel will be installed. This does not work when upgrading. | ||
+ | |||
+ | '''Note''' : [unverified] This may be outdated information - Retail copy of FC6 DVD install image installed the i686 kernel by default. | ||
=== Keeping ThinkVantage Functionality === | === Keeping ThinkVantage Functionality === |
Revision as of 20:15, 23 March 2007
Contents
Installation
Installation of Fedora Core 6 (Zod) on a Thinkpad T60 (2623). The installation completes successfully but installs the i586 kernel instead of the required i686 kernel. The wrong kernel is due to a known bug in the Anaconda installer. Work-arounds and instructions for checking your kernel are on this page.
Note : The installer on disc still does not correctly install the i686 kernel. Use the available updates.img patch or a network install. Check your kernel version before you proceed. --Whizkid 13:15, 19 December 2006 (CET)
Note : According to Red Hat, if you boot the install disk using 'linux i686' when installing, then the i686 kernel will be installed. This does not work when upgrading.
Note : [unverified] This may be outdated information - Retail copy of FC6 DVD install image installed the i686 kernel by default.
Keeping ThinkVantage Functionality
See the Rescue and Recovery page for details about the recovery partition and retaining access to it.
Works Out of the Box
- Dual Cores (SMP processing)
- As of Kernel 2.6.18, used in Fedora Core 6, there is no loger a single cpu and smp kernel image. SMP is now configured on-the-fly. FC6's kernel will automatically discover the T60's dual core cpu and bring up CPU0 and CPU1.
- Wired Networking
- Kernel recognizes eth0 and correctly loads the e1000 driver.
- Video at 1400x1050
- Fedora does not ship the proprietary ATi driver, as a reult the VESA driver is used. Installation of the ATi fgrlx driver is described later in this article.
- Touchpad / Mouse
- The TrackPoint middle button does not work as a scroll wheel by default.
- PFPS: Note that although the touchpad and trackpoint work, Fedora Core 6 does a bad job of setting up xorg.conf. It is better to fix it up (see below).
- Sound
- The first-boot sound test fails to play the test sound. However, sound support is correctly configured and the snd-hda-intel driver is loaded at startup.
- Important: The modem must be enabled in the BIOS. Make sure it is, or you may search a long time for the reason that you have no sound. I presume this is a driver bug.
- Suspend to RAM
- Works out of the box under Gnome. Gnome power management intregrates with HAL (Linux's hardware abstraction layer) and DBUS, which correctly put this computer into a suspsend to RAM state and wake it up correctly.
Requires Tweaking
- Wireless Networking (Requires ipw3945 driver)
- ATi OpenGL Direct Rendering
- Hibernate
- IrDA
Post Install
Replacing the Kernel
Note : The steps below will not be required if the i686 version is already installed, which you can achieve using the notes above( Upon boot up type "linux i686" at the prompt).
As previously mentioned, the i586 kernel is installed on this machine instead of the i686 version. The i686 version is required to install the ATI video drivers and Intel Wireless drivers required to get this machine 100% operational. It is best to do this first, before updating any packages.
Installing the new kernel can be done by various methods as documented on the Red Hat Bugzilla bug. The safest method is to just to find the i686 kernel on your Fedora Core disk, and install it with the command:
# rpm -Uvh --replacefiles --replacepkgs kernel-$(uname -r).i686.rpm
However, if you the kernal version of the i686 kernel if different that the i586 kernel you have installed and you do not use LVM, you might risk the following method using yum to do the kernel swap.
Note : When I tried the yum method, I had to download 1GB worth of dependancies to reinstall. Afterwards the swap my system did not boot. Backing up grub did not help, because the problem was the initrd, and I did not have a good way or restoring the old version. However, using the Fedora Core 6 disk to "upgrade" from Fedora Core 6 to Fedora Core 6 did restore grub.
To swap kernels:
- Open up a terminal window are become root.
- Execute: yum remove kernel
- Make note of any other packages that will be removed due to dependency issues. The packages will have to be reinstalled in the next step.
- Install the kernel.i686 package and any other packages removed in the previous step.
- Fix your Grub configuration
- Reboot
On a minimal install, the only dependencies removed were gnome-session, compiz, gnome-volume-manager, and pcmciautils. Getting things back on track required:
# yum install kernel.i686 gnome-session compiz gnome-volume-manager pcmciautils
After [Yum] completes, you will have to fix the boot loader or you will be unable to boot after a restart.
If you have not used Fedora's default installation using LVM partitions, you can use the following configuration for grub. As root, fire up your favorite text editor and add the following lines to your grub configuration (/boot/grub/grub.conf) just below the initial comments:
title FC6 2.6.18-1.2798 kernel /vmlinuz-2.6.18-1.2798.fc6 ro root=LABEL=/ rhgb quiet initrd /initrd-2.6.18-1.2798.fc6.img
If you have an LVM partition, use the method detailed at Redhat's site.
Getting Up to Date
Before completing installation, it's best to get up to date by running yum update as root or by using the new graphical updater, Pup, that ships with Fedora Core 6. After all updates are installed, reboot before continuing the post-install tasks.
Setting Up Additional Repositories
In order to get the ATI driver and the Intel Wireless working, you will need to add two repositories to your computer; Livna RPMs and AT-RPMs.
- Enabling Livna's Repository
- As root, rpm -ivh http://rpm.livna.org/livna-release-6.rpm .
- Enabling AT-RPMs Repository
- As root, use your favorite editor to create /etc/yum.repos.d/atrpms.repo and type in:
[atrpms] name=Fedora Core $releasever - $basearch - ATrpms baseurl=http://dl.atrpms.net/fc$releasever-$basearch/atrpms/stable gpgkey=http://ATrpms.net/RPM-GPG-KEY.atrpms gpgcheck=1 enabled=0
Important: Disabling the AT-RPMs repository by default (using enabled=0) in the above configuration is important. Some repositories have been known not to play well together. See this post on the Fedora Forms for more information. However, AT-RPMs does provide a packaged version of the Intel wireless drivers and firmware that we'll use to set up wireless networking later. As long as AT-RPMs is disabled by default, Yum won't install software from their repository unless we explicitly tell it to do so.
ATi Video Driver (fglrx)
First check that your T60 has FireGL, this can be determined either by using scanpci or looking at your xorg.conf file. If you see in your /etc/X11/xorg.conf file:
#Driver "i810"
you have an ThinkPad T60 X or CTO series, and you can not install the ATI driver. If you see:
#Driver "vesa"
you probably have an ATI driver, and the following instructions should work.
Installing the fglrx driver is easy if you've enabled the Livna.org RPM repository as discribed earlier in this article. Unfortunately, the proprietary ATi driver currently does not support desktop effects or composite rendering used by default in Fedora Core 6.
To install the drivers, as root:
[root@scottt60 ~]# yum install kmod-fglrx.i686 xorg-x11-drv-fglrx
While the driver installs, X fails to use direct Open GL rendering. There are two things that need to be done to get the driver working. First, we must disable effects by adding these lines to the bottom of /etc/X11/xorg.conf:
Section "ServerFlags" Option "AIGLX" "off" EndSection Section "Extensions" Option "Composite" "Disable" EndSection
Next, we need to add ATi's driver directory to dynamic linker (ld) search path and update the linker configuration:
[root@scottt60 ~]# echo "/usr/lib/ati-fglrx/" > /etc/ld.so.conf.d/ati-fglrx.conf [root@scottt60 ~]# ldconfig
After ldconfig completes, restart X. You can check if you've completed your installation correctly by running fglrxinfo. Your output should look like this:
[scott@scottt60 ~]$ fglrxinfo display: :0.0 screen: 0 OpenGL vendor string: ATI Technologies Inc. OpenGL renderer string: ATI Mobility Radeon X1400 Generic OpenGL version string: 2.0.6174 (8.31.5)
Congratulations, your video configuration is complete.
Note : The following steps do not seem consistent with the previous section which is suppose to replace vesa with fglrx... However, the settings in the "InputDevice" section do seem to work. So perhaps it is better to just swap device settings and not replace tho whole xorg.conf file.
To get the touchpad to work right, it is much better to change /etc/X11/xorg.conf. There is quite a bit of information on how to do this scattered over the web, but very little information on why various changes have to be made. (I expect that the changes I made here are not specific to the T60, but would work on most Thinkpads with an UltraNav.)
I ended up crafting my own xorg.conf, which does the job, and produces no (extra) errors or warnings. (Note that the generated xorg.conf is very sparse, and generates warnings due to missing monitors and font directories. These appear to be benign.)
# Xorg configuration created by pyxf86config # modified by pfps for Synaptics touchpad Section "ServerLayout" Identifier "Default Layout" Screen 0 "Screen0" 0 0 InputDevice "Keyboard0" "CoreKeyboard" InputDevice "Mouse0" "CorePointer" InputDevice "TouchPad" "AlwaysCore" EndSection Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "us" EndSection # synaptics touchpad device Section "InputDevice" Identifier "TouchPad" Driver "synaptics" Option "Device" "/dev/input/mouse0" # may not be needed Option "Protocol" "auto-dev" # automatically find device? Option "LeftEdge" "1700" Option "RightEdge" "5300" Option "TopEdge" "1700" Option "BottomEdge" "4200" Option "FingerLow" "25" Option "FingerHigh" "30" Option "MaxTapTime" "0" # turn off tapping Option "MaxTapMove" "220" Option "VertScrollDelta" "100" Option "MinSpeed" "0.09" Option "MaxSpeed" "0.18" Option "AccelFactor" "0.0015" Option "SHMConfig" "on" EndSection # default mouse - handles other pointing devices, including trackpoint Section "InputDevice" Identifier "Mouse0" Driver "mouse" Option "Device" "/dev/input/mice" Option "Protocol" "Auto" Option "Emulate3Buttons" "no" Option "Buttons" "3" EndSection Section "Device" Identifier "Videocard0" Driver "vesa" EndSection Section "Screen" Identifier "Screen0" Device "Videocard0" DefaultDepth 24 SubSection "Display" Viewport 0 0 Depth 24 EndSubSection EndSection
Hibernation
Instructions for getting hibernate to work are available at https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=205144
Wireless Networking
Note: The instructions below are for the Intel PRO/Wireless 3945ABG Mini-PCI Express Adapter. Instructions for ThinkPad 11a/b/g Wireless LAN Mini Express Adapter (currently using Madwifi) and ThinkPad 11a/b/g/n Wireless LAN Mini Express Adapter (using ndiswrapper) are available via their respective pages.
To use the T60's built in wireless networking driver, you will need to install ipw3945 driver. The AT-RPMs repository, mentioned earlier in this article, provides the necessary packages. ATRpms does not always keep the older versions, and there will be some delay after a new kernel is released until the required kernel module is available. Patience is appreciated.
If you are running a x86_64 architecture, it is sometimes best to use the ipw3945 instruction guide from sourceforge, ignoring any build errors during make, and start ipw3945d with the below script.
ATRpms has recently made this process very simple. As root:
# yum --enablerepo=atrpms install ipw3945
If you get an error stating "GPG key parsing failed: can't set attribute" then you need to import the key. Do so by
rpm --import http://ATrpms.net/RPM-GPG-KEY.atrpms
Check that /etc/init.d/ipw3945d was created. You can use this as a template.
#! /bin/bash # # ipw3490d Load / unload Intel ipw3490 daemon # # chkconfig: 2345 09 90 # description: Load / unload Intel ipw3490 daemon # ### BEGIN INIT INFO # Provides: ipw3490d ### END INIT INFO # Source function library. . /etc/init.d/functions if [ ! -f /etc/sysconfig/network ]; then exit 0 fi case "$1" in start) echo -n "Starting ipw3945d: " /sbin/ipw3945d > /dev/null 2>&1 echo ;; stop) echo -n "Stopping ipw3945d: " killproc ipw3945d echo ;; status) status ipw3945d ;; restart) cd "$CWD" $0 stop $0 start ;; *) echo $"Usage: $0 {start|stop|restart|status}" exit 1 esac exit 0
Now, make it executable and add the script with chkconfig to be started on boot:
# chmod 750 /etc/init.d/ipw3945d # chkconfig --add ipw3945d
Make sure things are setup correctly by running chkconfig --list ipw3945d. Your output should look something like:
# chkconfig --list ipw3945d ipw3945d 0:off 1:off 2:on 3:on 4:on 5:on 6:off
If everything looks okay, reboot. Once restarted you should be able to run ifconfig eth1
and see information about your wireless card. If you prefer a GUI, you can run the network configuration tool (System, Administration, Network). Click New on the Devices tab, then Wireless Connection. "Intel Corporation PRO/Wireless 3945ABG Network Connection(eth1)" or something similar should appear in the list of wireless devices.
Infrared (IrDA)
By default, Fedora will make the IR device appear as ttyS2, but the BIOS has the port default to COM2, or ttyS1. Paste this text into /etc/sysconfig/irda:
IRDA=yes DEVICE=/dev/ttyS1 #DONGLE=actisys+ DISCOVERY=yes
Start (or restart) the irda service. Then ensure it starts for your favorite runlevel using either chkconfig or the Service Configuration tool. You can then use irdadump (as root) to confirm your configuration is correct by monitoring port activity when another IR device is near.
External Sources
- This guide is listed at the TuxMobil Linux laptop and notebook installation survey (IBM/Lenovo).