Installing Linux on a Compaq Presario 2100 (2104US) Laptop
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
|
Hardware |
Status Under Linux |
Notes |
|---|---|---|
|
AMD Athlon |
Works |
Worked with |
|
1024×768 |
Works |
- |
|
ATI |
Works |
Using vesa |
|
128 Mb RAM |
Works |
- |
|
30 Gb IDE hard drive |
Works |
- |
|
National |
Works |
Using |
|
Broadcom |
Works |
No native driver. Used ndiswrapper |
|
CDRW/DVD |
Works |
- |
|
ALi |
Works |
Worked on |
|
Touchpad |
Works |
Worked on |
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.






On the same basic Compaq system as above I installed Ubuntu 8.04 LTS after downloading the ISO file. The basic h/w configuration consists of 512 MB memory, 160GB hard drive, ps2 mouse and USB for 8GB memory stick. The configuration is a dual-boot W_XP configuration. Everything worked perfectly as-is except for my need of a wireless network card. I insisted on an 802.11n card and finally found an Airlink 101 pcmcia card with a Windows driver that works very well through ndiswrapper and utilities, with no special modifications or setups (I was totally Linux/Ubuntu novice at the time). Everything works fine without any special actions. I have upgraded progressively through 9.10 through Package Management, successfully.
I am having a problem with Ubuntu 10.04 installation as a third OS (retained the U9.10 system and WinXP); there is a GRUB problem which I will be documenting elsewhere as I proceed to understand this and hopefully resolve it (something totally new to me).