Installing Debian Unstable on Compaq Presario 2100 (2104US)


Last updated: 4 January, 2005


General Hardware Specifications of Compaq Presario 2100:


Hardware Components

Status Under Linux

Notes

AMD Athlon 2800

Works

Worked with installation kernel. I later built a custom kernel for AMD.

1024x768 LCD

Works

-

ATI Technologies Inc Radeon Mobility U1

Works

Using vesa driver, though apparently ati and radeon both work. radeon seems to mess up my colors in text-mode

128 Mb RAM

Works

-

30 Gb IDE hard drive

Works

-

National Semiconductor Corporation DP83815 (MacPhyter) Ethernet Controller

Works

Using kernel module natsemi. Worked on installation.

Broadcom Corporation BCM4306 802.11b/g Wireless LAN Controller (rev 02)

Works

No native driver. Used ndiswrapper package with a Windows driver. Seems to work, though I have no network to test with.

CDRW/DVD

Works

-

ALi Corporation M5451 PCI AC-Link Controller Audio Device (rev 02)

Works

Worked on install after running alsaconf. Using the module snd_ali5451

Touchpad

Works

Worked on install. Now using modules: tsdev, evdev, psmouse.



General Notes

This document is intended for those with some familiarity with Linux and Debian, though anybody willing to read the documentation here-linked is welcome to sit back, relax, and enjoy learning a lot of nitty-gritty about Linux. Many of the drivers and hardware I've been able to get running are thanks to my custom kernel. There are lots of notes under that section which may be applicable to several devices, so please peruse that section.


Installation Notes

I chose to use Debian unstable because it is the Linux distribution I am most familiar with. I like it very much for its excellent package management system, ease of updatability, and general cleanliness. I used a sarge (testing) net-install CD. The ISO is available from http://www.debian.org/devel/debian-installer/. I selected the boot option to use (and install) the 2.6.8 kernel with grub. I had to disable Legacy USB support in the BIOS for the installer to work correctly. I have no turned it back on, and by USB support still works great.

One of the first things I did after installing was switch from Debian testing (sarge) to unstable (sid). I checked the mirrors list and now my /etc/apt/sources.list looks something like this:

deb ftp://debian.lcs.mit.edu/debian/ unstable main contrib non-free
deb http://security.debian.org/ testing/updates main contrib non-free
deb ftp://non-us.debian.org/debian-non-US unstable/non-US main contrib non-free

I used “dselect” to update the packages list and find extra packages that I wanted installed (such as kde, gdm, anacron, x-window-system, etc.). Installing and upgrading took a while!


Xfree86/Xwindows

I used “xf86config” to configure the system and the vesa driver, though I'm told that both the radeon and ati drivers work. In my experiments with those, I found that text-console colors would get messed up if I switched to one of my text ttys. I have not yet tried to do any 3D work, so I have nothing to report on that front.

My mouse was far too sensitive on first try, and I also wanted to disable X from making use of the console beep. Those were both solved by adding these lines to /etc/X11/xinit/xinitrc and /etc/X11/gdm/Init/Default :

/usr/bin/X11/xset -b #Disables beeping!
/usr/bin/X11/xset m 0 #Desensitize the mouse.

After installing my custom kernel, I had to add “psmouse” to /etc/modules.


Installing and Configuring Synaptics Touchpad Driver

Install the packages synaptics and qsynaptics. Follow the directions in /usr/share/doc/xfree86-driver-synaptics/README.Debian. The state that you should add:

Load “Synaptics”

to the modules section of /etc/X11/XF86Config-4. It further gives defaults for the mouse driver, such as acceleration, borders, etc. In order to set these how you like them, change the mouse section to use the defaults given:

Section "InputDevice"
Driver "synaptics"
Identifier "Mouse[1]"
Option "Device" "/dev/psaux"
Option "Protocol" "auto-dev"
Option "LeftEdge" "1700"
Option "RightEdge" "5300"
Option "TopEdge" "1700"
Option "BottomEdge" "4200"
Option "FingerLow" "25"
Option "FingerHigh" "30"
Option "MaxTapTime" "180"
Option "MaxTapMove" "220"
Option "VertScrollDelta" "100"
Option "MinSpeed" "0.06"
Option "MaxSpeed" "0.12"
Option "AccelFactor" "0.0010"
# Option "SHMConfig" "on"
# Option "Repeater" "/dev/ps2mouse"
EndSection

Be sure your Identifier matches the one in the Section "ServerLayout". Uncomment the line about SHMConfig and restart X windows. This will allow you to configure the mouse with qsynaptics in X and see your changes. I changed mine so that the right side of the touchpad scrolls (as it's designed to do). You can collect the majority of the Option lines for your custom config (so you don't lose it on reboot) by running “synclient -l”. Each line

SomeValueName = value

Must be changed to the format above....

Option "SomeValueName" "value"

My XF86Config-4 file (Be forewarned: I type using Dvorak, not Qwerty. So if you use this, change “dvorak” to “us” for your Qwerty layout)


Fonts

I noticed that all my fonts seemed to be missing, despite that I had installed several font packages (xfonts-100dpi, xfonts-75dpi, xfonts-base, xfonts-scalable, msttcorefonts). I'm using xfs-xtt for my font server. I edited my XF86Config-4 to change

FontPath "unix/:7100"

into

FontPath "unix/:7110"

Alternately, you could edit /etc/init.d/xfs-xtt to not use port 7110. I believe xfs-xtt defaults to 7100.

I also had to manually add several lines to my xfs-xtt configuration file so it could find all the fonts. See my /etc/X11/fs-xtt/config here.


Audio

I'm using alsa with my ALi card. I simply ran “alsaconf” as root. Note that alsa defaults by muting everything, so be sure to un-mute it (“alsamixer”) and save your settings (“alsactl store”). See my kernel .config under the kernel section for a driver.


Wired Ethernet

Using the natsemi module. The default installation used natsemi (auto-detected) as a module and got it's IP through DHCP. Perfect.


Wireless Ethernet

There is no native linux driver for this card, but ndiswrapper will properly install the Windows module. Download the Windows driver here. I had to download the ndiswrapper-source and ndiswrapper-utils packages and build my own module. Use the file “bcmwl5.inf” and follow the instructions on this page. Note, however, that I built a custom kernel before doing this. You may also want a kernel of your own, so you may have to do it again if you switch kernels. If a custom kernel is in your future, go ahead and start on that first. I had to add “ndiswrapper” to /etc/modules.


Custom Kernel

I just discovered the “Debian way” of making custom kernels, which is basically to use the packages “kernel-source-2.x.x” and “kernel-package” to make a Debian package for your kernel. The package installs seamlessly, adding an extra item to grub's menu. I downloaded my 2.6.9 source and built a kernel using this Debian system, which turned out to work really well, especially with grub. Instructions for kernel-package can be found here. My .config file can be found here. This includes ACPI support, which is customizable through the “acpi” and “acpid” packages and related documentation. There's a nice ACPI How-To floating around out there that will allow you to use the power button and the lid closure to perform actions. Furthermore, with this configuration, the kernel powers off the system on halt, a functionality I didn't have before.

In order for all the modules to load properly, I had to add “psmouse” to /etc/modules.

In order for ACPI to function, I had to edit /boot/grub/menu.lst to remove “acpi=off”.

Note that this kernel disables console beeps. Hooray.


USB Key, Mouse, Digital Camera

Using that XF86Config-4, the USB mouse works immediately after I plug it in. No special configuration. My /dev/mouse points to /dev/gpmdata, but I don't know how this might affect things. gpm (the console mouse software) is set to used “device=/dev/psaux” and type “type=autops2”.

The usb key always worked seamlessly. “mount /dev/sda1 /mnt/memstick -t vfat”.

I had all sorts of headaches over my new digital camera until I installed gphoto2 and digikam. I also had to add myself to the camera group in /etc/group.


Contact

e-mail me at dulles at artifex dot org with any questions you may have.


Links

You may want to check out the other docs written about this laptop at Linux on Laptops. I owe much of my success with this laptop to the other documentation about similar models.