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