LINUX on a Dell XPS M1530 Laptop

June 26, 2009





Introduction: Above is a screenshot of SAS 9.2 running under Fedora Core 10. I use the Fedora distribution for historical reasons; long ago, Dell actually installed Red Hat 7.2 on Latitude laptops (worked well, too, and they will install Ubuntu for you on their little notebooks, and that also works well), and now I am used to the Fedora world, so I am relatively uninterested in alternative flavors.  YMMV.  I would prefer a Mac if SI distributed SAS for OS X, and I use SAS because I speak it fluently, while I can only say, “Excuse me, where is the American Embassy? As you can see, my pants are on fire” in R. The M1530 has a very bright 15" screen, and looks fabulous. The CPU runs at 2.6GHz, there is 4GB RAM and a 250GB 5400RPM drive, which my redoubtable SysAdmin, Eric Taylor, tells me is too slow, but somehow I think I will live with it. The GUI in FC10 is extremely responsive; I'm not sure why, but the system boots and shuts down fast, and windows open and close very quickly, even faster than on the Dell Optiplex in my office, which also runs FC10 and allegedly has a faster CPU. SAS is also screaming fast.  The nuts and bolts of FC10 look very similar to Mac OS X under the hood. Making SAS run on OS X would surely be an interesting research project. Eric did the installation, and then I tweaked it.  All the usual disclaimers apply; nothing is my fault, and certainly not the fault of my employers!

Install This was a virgin install on a machine on which Dell thoughtfully installed something called "Vista Ultimate," which I guess means "the last time you'll ever use anything like that." Let
anaconda determine the partition at install; we had trouble when we imposed a custom partition.  Otherwise, the install from DVD was uneventful.  We did the 32-bit PAE version of the kernel, rather than the 64-bit version, to minimize maintenance; according to the various listservs, 64-bit updates are not yet as automatic as one would wish.

Yum repos  I have the following repos activated:

    adobe-linux-i386.repo          
    atrpms.repo                    
    dell-community-repository.repo 
    dell-firmware-repository.repo  
    fedora-rawhide.repo            
    fedora.repo                    
    fedora-updates.repo         
    fedora-updates-testing.repo 
    livna.repo                  
    livna.repo.rpmnew           
    rpmfusion-free-updates.repo
    rpmfusion-free-updates-testing.repo
    rpmfusion-nonfree-rawhide.repo
    rpmfusion-nonfree.repo
    rpmfusion-free-rawhide.repo 
    rpmfusion-nonfree-updates.repo
    rpmfusion-free.repo         
    rpmfusion-nonfree-updates-testing.repo

Too many?  Maybe, who knows.  I have wireless, the Nvidia driver and DVD playback activated (see below), which I think is why all these repos accumulated.  I feel very up-to-date.

Wireless    I fearlessly (i.e., without appropriate forethought) purchased a laptop with internal wireless because I trusted this had all been figured out by now. Well, mostly, it has, the wireless is working, but by no means does it just work yet.

The wireless chipset is from Broadcom; using lspci | grep 802, we see:

    0b:00.0 Network controller: Broadcom Corporation BCM4328 802.11a/b/g/n (rev 03)

irrespective of what the Dell spec sheet says.  Broadcom does share some drivers, although they are still proprietary, so the situation is not perfect, but could be worse.  There are rpms on the RPM Fusion repository; I suppose one could do this via yum, but I wasn't quite that smart--I tried it, and it replaced the kernel with the non-PAE version, was not what I wanted.  To get the appropriate drivers, determine the exact kernel by uname -r :

    2.6.27.21-170.2.56.fc10.i686.PAE

I googled about and found a kmod-wl rpm with that string at http://download1.rpmfusion.org/nonfree/fedora/updates/10/i386/ named kmod-wl-2.6.27.21-170.2.56.fc10.i686.PAE-5.10.79.10-2.fc10.i686.rpm which meant I needed a broadcom-wl driver broadcom-wl-5.10.79.10-1.fc10.noarch.rpm.  There is a discrepancy there I don't understand; why is the module -2.fc10, and the driver -1.fc10?  But, apparently, they are close enough.  There is also a "payloadless" kmod-wl-PAE-5.10.79.10-2.fc10.i686.rpm which has something to do with maintaining dependencies.  So that's the deal, get the three rpms that should hook together like this (I highlighted PAE to emphasize that I needed exactly these, but YMMV):

    broadcom-wl-5.10.79.10-1.fc10.noarch.rpm
    kmod-wl-2.6.27.21-170.2.56.fc10.i686.PAE-5.10.79.10-2.fc10.i686.rpm
    kmod-wl-PAE-5.10.79.10-2.fc10.i686.rpm

And, remember that the kmod-wl rpm has to match up with your kernel.  Put them in a directory, run them all at once:

    yum localinstall *rpm

"Localinstall" causes yum to behave like rpm, but to integrate the update with the yum database, so that, one hopes, subsequent updates of the various parts observe the relevant dependencies.  If that part doesn't work, I don't know what to tell you.  At that point, I thought I was home free, but there was no joy; I could see access points using iwlist eth1 scan, but I could not get any DHCPOFFERS.  After two days  of swearing (that always helps), I determined by trial and error that the /etc/sysconfig/network-scripts/ifcfg-eth1 that has worked before for madwifi was setting parameters the driver wanted to negotiate all by itself.  This ifcfg file appears to work (at least, MY wireless works):

TYPE=Wireless
DEVICE=eth1
HWADDR=00:24:2b:93:2b:6b
BOOTPROTO=dhcp
ONBOOT=no
MODE=Managed
USERCTL=yes
PEERDNS=no
IPV6INIT=no
NM_CONTROLLED=no
RATE=auto
ESSID=gadzooks
SEARCH=opendns.com
DNS1=208.67.222.222
DNS2=208.67.220.220
CHANNEL=

You can effect these changes using system-config-network command, but check to make sure the file is right and edit by hand if necessary.  Wireless should start on the command ifconfig eth1 localhost up; dhclient .

Now, having said all this, I have updated the kernel, the wifi and (below) the Nvidia driver via yum twice now without issue.



Video Driver  I installed the Nvidia driver after reading an autoritative statement (i.e., some clown with an internet connection) that it demonstrated superior performance to the Fedora-supplied driver, although, now having installed it, I can't say that I see the difference.  YMMV, and this machine is really fast.  So far, nothing has blown up.  Determining my kernel using uname -r (see above), after some trial and error, I obtained the following from ATrpms:

nvidia-graphics180.44-180.44-111.fc10.i386.rpm
nvidia-graphics180.44-kmdl-2.6.27.21-170.2.56.fc10.PAE-180.44-111.fc10.i686.rpm
nvidia-graphics180.44-libs-180.44-111.fc10.i386.rpm
nvidia-graphics-devices-1.0-6.fc10.noarch.rpm
nvidia-graphics-helpers-0.0.29-30.fc10.i386.rpm

As above, I have highlighted the parts of the filenames that have to match up.  Collect 'em all in a directory.  Then, install 'em with yum localinstall n*rpm.  Reboot and everything should come up roses.

DNS  I like opendns.com as a DNS.  I found that, irrepsective of what DNS I specified in Network Manager, the system  would let the IP choose the DNS until I specifed the following in /etc/dhclient-eth1.conf:

interface "eth1"
{
        supersede domain-name-servers 127.0.0.1,208.67.222.222,208.67.220.220;
}


DVDs
    FC 10 will actually play encrypted DVDs! Not that I really need that service--I have a dedicated HOME THEATER in my house--OK, it's a $69 DVD player, a thirty-year-old stereo, and a 19" Trinitron--but it just tweezed me that DVD playback was so damn difficult, just because those guys in Redmond have so much money to spend on lawyers. You have to be root to do all this stuff:

Activate the RPM Fusion repository:
# rpm -Uvh http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm\
# http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm
Install xine:
# yum install xine
Install codecs:
# yum install xine-lib-extras-nonfree
Install a media player:
# yum install vlc
Install DVD playback:
# yum install libdvdread
Install Windows codecs:
# yum install wget # cd /tmp
# wget http://www1.mplayerhq.hu/MPlayer/releases/codecs/all-20071007.tar.bz2
# tar -jxvf all-20071007.tar.bz2
# mkdir -p /usr/local/lib/codecs
# cp all-20071007/* /usr/local/lib/codecs
# rm -rf /tmp/all-20071007*
# ln -sf /usr/local/lib/codecs /usr/lib/codecs
# ln -sf /usr/local/lib/codecs /usr/local/lib/win32
# ln -sf /usr/local/lib/codecs
Install an MP3 Player (gstreamer):
# yum install gstreamer-plugins-ugly libmad libid3tag id3v2
Launch xine and see what happens.

System Monitor
    The Krell in the upper-left-hand corner of the screenshot is a piece of eye-candy that is also very useful for immediately assessing the state of affairs.  I have it configured to track both CPUs, all three file systems (I use two external USB drives, one for my life, and a backup, since one's life should have at least one backup), the eth1 traffic, free RAM, and free disc space on the external and primary USB drive.   The multiple workspaces, accessed through the little sextant in the tool bar, are necessary for those of us with ADD who must keep half a dozen applications open simultaneously, and I don't think I could function without them. All the damn icons that clutter up the Windoze desktop are stored neatly in the drawer marked 'f'.  LINUX is not only viable as an application programming platorm, but I feel that the interface is superior for scientific computing, and security issues are greatly reduced.  Why any statistician insists on using Windoze is to me just one of those mysteries of life.  I can see why people would use a Mac with OS X as an alternative (especially since it's UNIX under the hood), and I would too, except I have too much intellectual capital invested in SAS to abandon it, and SAS still does not run on the Mac.  You can get more detailed information, written by people who actually know about this stuff, for this and other laptops and distributions at the very useful LINUX Laptop and Notebook Installation Survey.


Return to main page