Setting up Fedora Core 5 on a ThinkPad Z60t

From Nearline Storage
Jump to: navigation, search

Hardware Information

This installation was done on an IBM (Lenovo) ThinkPad Z60t, type/model 2511-F4U.

Base Installation

I did the base installation from CDs. The development workstation install option failed with a missing file error so I did the default office productivity tools installation.

I use KDE and it was not installed so I did:

yum groupinstall "KDE (K Desktop Environment)"
yum groupinstall "KDE Software Development"

I did a "yum upgrade" to bring the installed software current.

I installed CrossOver Office 4.2 for WINE and MS Office support

  • The kbuildsycoca crashes started happening after the install. I renamed /etc/xdg/menus/applications-merged/cxlegacy.menu to cxlegacy.menu.orig and manually created my own menu entries.
  • Installed Internet Explorer and Microsoft Office
  • MS Office refused to activate, saying it was activated on another computer so I copied over /~/.cxoffice from another machine and that took care of that.

Wireless

The Atheros wireless device was not configured during the initial installation. The livna.org repository provides packages to support this wireless device so I did "rpm -ivh http://rpm.livna.org/livna-release-5.rpm" to add livna.org to my yum configuration. After that, "yum install madwifi kernel-module-madwifi" installed the drivers for the Atheros wireless card. With this configuration the card is known as "ath0". Video

During the initial installation I specified a generic LCD monitor capable of 1280x800 resolution and X was configured properly to support the LCD at it's max resolution of 1280x768. The i810 driver is used for the Intel display chip and Fn-F7 display switching works as it should on this model. I started up the KRandRTray app (Fedora->System->KRanRTray) to allow me to control screen resolution from the task bar.

The only problem I had was that the external display resolution was fouled up when I toggled to having both the external CRT and internal LCD displays on at the same time. Adding the following lines to the Device section of /etc/X11/xorg.conf corrected that problem:

        Option      "MonitorLayout" "CRT,LFP"
        Option      "Clone" "true"

Here's the whole xorg.conf.

Now the problem was that when I booted the laptop both displays were powered up. I prefer to have the CRT port turned off at boot to save a little battery. So, I added these two files to the system to turn off the CRT port when I log in:

/etc/X11/xinit/xinitrc.d/disableCRT.sh:

#/bin/sh
sudo /home/dlk/bin/disableCRT.sh

/home/dlk/bin/disableCRT.sh:

#/bin/sh
echo crt_disable >/proc/acpi/ibm/video

Then I found out that when I reopened the lid on my laptop after closing it, the X-windows display was all scrambled. I figured out that if I switched to a text mode virtual terminal, LeftCtrl?-Alt-F1, and then back to the virtual terminal where X was running, LeftCtrl?-Alt-F7, the display was reset. I automated this by adding the following to my /etc/acpi/actions/lid.sh script:

if [ "${lid}" = "open" ]; then
  /usr/bin/chvt 1
  /usr/bin/chvt 7
fi

ThinkPad Buttons

tpb is available from the Fedora Extras repository so "yum install tpb" installs it and its xosd dependency.

Fonts

Installed the basic Microsoft fonts using /mnt/larch/MyLibrary/software/Fonts/msttcorefonts-1.3-4.noarch.rpm

Fingerprint Authentication

I successfully set up the fingerprint reader using the instructions found on ThinkWiki.org.

Before starting this process I needed development tools support so I did:

yum groupinstall "Legacy Software Development" "Java Development" "Web Development" "Development Tools"
yum install kernel-devel
yum install pam-devel

After that the ThinkWiki automated install script worked fine.

Enabling Fingerprint Authentication for Xscreensaver

I also went through the process of patching xscreensaver as described here and that worked too although getting the USB file permissions correct stumped me agasin. With this kernel calling /opt/bioapi/bin/set_fingerprint_perms doesn't do the trick, because the device is configured by udev. Instead, you need to set the permissions on the device through a udev rules file:

/etc/udev/rules.d/90-fingerprint.rules:

# This is required to make the fingerprint reader world writeable so that
# luser applications like screensaver can use it
KERNEL=="usbdev3.2", SUBSYSTEM=="usb_device", MODE="0666"

I rebuilt the patched xscreensaver as an rpm package and installed it as a replacement for the distributed xscreensaver package. With the xscreensaver 5.00 source the process was:

  1. Create the rpmbuild directory structure
  2. $ cd ~
    $ cp -a /usr/src/redhat/rpmbuild .
    $ echo '%_topdir %(echo $HOME)/rpmbuild' >>.rpmmacros
    
  3. Obtain the latest xscreensaver source (the url is in this patch file) and put it in my SOURCES directory
  4. Obtain the patch (the url is in this patch file) and put it in my SOURCES directory
  5. Extract the xscreensaver.spec file from the source tar file and modify it. Here's a patch file with my changes
  6. Install some prereq packages
  7. yum groupinstall "X Software Development"
    yum install gtk2-devel libglade2-devel
    yum install usbutils
    
  8. Build the RPMs using the "rpmbuild -bb" command and then install them.
  9. Create /etc/pam.d/xscreensaver-alternative
  10. #%PAM-1.0
    auth        sufficient    pam_bioapi.so {5550454b-2054-464d-2f45-535320425350} /
    etc/bioapi/pam/
    
  11. Turn off screen saver in KDE Control Panel
  12. run "xscreensaver-demo" to generate ~/.xscreensaver then edit that file and set "alternativeAuth: True"
  13. Create a desktop "Link to Application" that will run "xscreensaver -nosplash" and put that in ~/.kde/Autostart

Connecting To The IBM Wireless Network

I connect to the IBM wireless network using a digital signature to authenticate.

  1. If you don't already have one, request a digital certificate from https://w3-03.ibm.com/tools/certificate
  2. Request an IBM EAP_TLS wifi userid from http://bluewireless.ibm.com/. (EAP_TLS means authentication with a digital certificate, which is not the same as LEAP which means authentication with a userid and password.)
  3. Download wpa_supplicant from http://hostap.epitest.fi/wpa_supplicant/
  4. "yum install madwifi-devel"
  5. Create a .config file in the wpa_supplicant source directory
  6. Compile and install wpa_supplicant
  7. $ make
    $ sudo make install
    
  8. Create a wpa_supplicant.conf file
  9. Create a script to execute the process

Enabling the SD/MMC reader

The Z60t includes an SD reader on its front edge. The drivers required are available in Fedora Core but the device was not automatically configured during the installation. These are the steps that I took to enable the device.

Add these two lines to /etc/modprobe.conf to load the SD/MMC drivers at boot:

install sdhci /sbin/modprobe mmc_block ; /sbin/modprobe --ignore-install sdhci
remove sdhci /sbin/modprobe -r --ignore-remove sdhci ; /sbin/modprobe -r mmc_block

Added a file called /etc/udev/rules.d/90-mmc.rules that causes a device and a symbolic link to be created automatically when an SD/MMC card is inserted:

KERNEL=="mmcblk*", NAME="mmc/%n", SYMLINK+="sandisk", MODE="0777"

Added a line to my autofs definitions file, /etc/autofs.mnt, to automatically mount this device when I access it:

sandisk   -fstype=vfat,sync,gid=floppy,umask=002  :/dev/sandisk

Setting up a GDM autologon

To autologon a user during system start, add the following to the [daemon] section of /etc/X11/gdm/custom.conf:

[daemon]
# Automatic login, if true the first local screen will automatically logged
# in as user as set with AutomaticLogin key.
AutomaticLoginEnable=true
AutomaticLogin=dlk