For the most part, Ubuntu ( Dapper Flight-7 ), installed nicely. The only exceptions were the video and the wireless card.
Probably the biggest stumbling block is that there are customizations for the Inspiron 6400 that makes searching just for the model number insufficient. For instance, my laptop has the Intel graphics controller and the Dell (Broadcom 4311) wireless card. If the consumer wants, however, Inspiron 6400s can be had with an ATI Radeon video card and an Intel 3945 wireless card.
The video was a minor annoyance: it only used “normal” resolutions, not widescreen. Although a dpkg-reconfigure xserver-xorg generated X configuration files that were attempting widescreen resolutions, it didn’t display that way. It was easy to search the web for a fix, though:
915resolution is a program that will temporarily modify the video BIOS of the Intel video card to “trick” the system into displaying wide screen.
This blog entry on running Ubuntu on the Inspiron 6400 describes what to do.
The wireless card was trouble. Having fallen into the trap that I could just search for “ubuntu” and “inspiron 6400″ and find a solution, I started thinking my laptop had the Intel 3945 wireless card, and trying those solutions. Waste of a couple evenings, especially since I could clearly see that lspci indicated a Broadcom network controller of some sort. I shouldn’t have doubted myself.
The key blog entry about Ubuntu and the Dell 1390 (the “official” name of the wireless card) helped quite a bit. It pointed me to the use of ndiswrapper. The version of ndiswrapper that came with Dapper Flight-7 wasn’t recent enough; the blog entry indicated that 1.15 was needed. I picked up the source from the ndiswrapper sourceforge site. The instructions are pretty clear on what to do to build it and use it. As I’ve been using Debian for awhile, it had been awhile since I compiled a kernel. While I remembered to apt-get the appropriate linux headers for my kernel (uname -r) and install gcc, I didn’t figure out to apt-get the development version of libc, libc6-dev, until a few web/newsgroup searches later and looking closely at the make errors. Even then, I had to use wajig whichpkg to figure where stdio.h should come from. What can I say, it’s been awhile since C.
Following the ndiswrapper usage instructions went smoothly, and iwconfig displayed a running wlan0 device. Huzzah!