Fedora Core 2 on my legendary Compaq Presario 1245

Pingu
I write this, so it may be useful for my future Fedora Core 3 installation. It may also be useful for somebody.

Things that needed to be fixed after installing Fedora Core 2 include:

  1. MOUSE. The external mouse did not work.
  2. BOOT LOADER. It caused my Redhat 9 in another partition to be not working.
  3. INTERNET ACCESS. Very slow in resolving hosts. For example, accessing google.co.uk took 20 seconds.
  4. SOUND. It disappeared.
  5. WIRELESS CARD. It failed even to have its led on.

What I did to sort out the above problems:

1. MOUSE
========
Simply put “psmouse.proto=imps” as a kernel parameter in the /boot/grub/grub.conf file. Here is my grub.conf:

# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You do not have a /boot partition. This means that
# all kernel and initrd paths are relative to /, eg.
# root (hd0,4)
# kernel /boot/vmlinuz-version ro root=/dev/hda5
# initrd /boot/initrd-version.img
#boot=/dev/hda
default=1
timeout=10
splashimage=(hd0,4)/boot/grub/splash.xpm.gz
title Fedora Core 2 (2.6.8-1.521.stk16)
root (hd0,4)
kernel /boot/vmlinuz-2.6.8-1.521.stk16 ro root=LABEL=/1 [B]psmouse.proto=imps[/B] rhgb quiet
initrd /boot/initrd-2.6.8-1.521.stk16.img
title Redhat 9 (2.4.20-8)
root (hd0,2)
kernel /boot/vmlinuz-2.4.20-8 ro root=/dev/hda3
initrd /boot/initrd-2.4.20-8.img
title Windows 98
rootnoverify (hd0,0)
chainloader +1

2. BOOT LOADER
==============
The Fedora Core 2 installation did not ask where the boot loader is going to be stored (either on MBR or on the boot sector of a partition). It seemed to be automatically installed in MBR, but then it does not automatically resolve other OS and so my Redhat 9 could not boot. (Well, I had no difficulty using Mandrake 10)

I had to learn grub by typing “info grub”. The RedHat 9 section of my /boot/grub/grub.conf (as shown above):

title Redhat 9 (2.4.20-8)
root (hd0,2)
kernel /boot/vmlinuz-2.4.20-8 ro root=/dev/hda3
initrd /boot/initrd-2.4.20-8.img

“root(hd0,2)” means that my RedHat 9 is at the first hard drive, on partition number 3. All numbers are counted from 0, so that ‘hd0’ indicates the first hard drive, and ‘2’ indicates partition number 3.
“kernel /boot/vmlinuz-2.4.20-8 ro root=/dev/hda3” means to load the kernel of my RedHat 9 which is located at hda3.
and “initrd /boot/initrd-2.4.20-8.img” means to execute the kernel, using the specified kernel image.

In the Windows 98 section, it is ‘root noverify’ (not just ‘root’) because the file system (FAT32) is not verified by grub.

Then, what does “root=LABEL=/1” in the Fedora Core 2 means? I’ll find out this later. Probably it tells that the grub.conf used is the one of the Fedora Core 2, not the one of the Redhat 9.

References:
grub info/manual

3. SLOW HOST RESOLVING
======================
Simply put the following line at the end of /etc/modprobe.conf to turn ipv6 off.

alias net-pf-10 off

Fedora Core 2 uses ipv6 by default to resolve hosts, but it was suggested to turned it off. Later, I’ll find out what exactly ipv6 is.

4. THE SOUND
============
Previously (Redhat 9/Fedora Core 1 backward) the sound could be tackled by “sndconfig”. In Fedora Core 2 the sound is tackled by ALSA (Advanced Linux Sound Architecture), alsa-project.org. Unfortunately, the sound module needed to be built and installed into the kernel (not done by default). But fortunately I didn’t need to recompile the kernel, because my soundcore was compiled as a module. Just follow ALSA’s instruction as follows:

First, go to the ALSA website above and download the stable release of ‘Driver’, ‘Library’ and ‘Utilities’.

Next, identify my sound device. From the compaq website, I know that my sound card is “es18xx”. Click the “Supported soundcards” link at the ALSA homepage, choose “ESS Technology”, and click “Details” of “ES18xx”.

Then, follow the instructions. So, firstly I ‘configure’, ‘make’ and ‘make install’ alsa-driver, alsa-lib and alsa-util. However, errors occurred when typing:
modprobe snd-es18xx;modprobe snd-pcm-oss; modprobe snd-mixer-oss;modprobe snd-seq-oss

It resulted in several lines of FATAL errors and WARNING errors, which means it did not insert the modules into the kernel.
Google showed me that I must use ‘alsaconfig’.
So, I typed

alsaconfig

After I answered every question, smoothly the card was detected. At the end it said that I could enjoy the sound. Then, I got out of the alsaconfig happily, and I re-typed:
modprobe snd-es18xx;modprobe snd-pcm-oss; odprobe snd-mixer-oss;modprobe snd-seq-oss
which ended successfully (the previous errors were gone).

Afterwards, continue the remaining instructions (putting some additional lines on the /etc/modprobe.conf, and created .asoundrc at home directory).

The sound is then ON clearly.

5. WIRELESS CARD
================
Mine is Netgear WG511. I finally decided to buy the driver’s permanent license from linuxant.com.

The native linux driver for the card has been provided in prism54.org, but after a looo..oooong time googling and struggling, it turns out that the card does not work in Linux because it is __Made in China__. All information to make it work are actually on the cards made in Taiwan.

Linuxant uses Windows driver. It is not native linux driver, and some people notified slight reduction on the performance. However, the installation is far from pain, and the card works beautifully. Also, buying the license is cheaper than replacing the card, at least for now.