Some people have interpersonal drama issues. No matter what they do, or how much they try, they always seem to be involved in some kind of clusterfuck or another. You’ve known these people: everything they get near turns into a disaster, and no matter how nice they seem, they are best avoided.
Me? I have computer drama issues.
I have completely dysfunctional relationships with machines. The simplest thing, that normal people do every day, starts a big screaming fight. I only rarely find myself in situations where I’m genuinely angry at a person, and yet, computers leave me in a blind rage on a pretty regular basis. It’s been worse in the last few weeks, but there have been a couple times in very recent memory where I had to make a conscious effort to close my eyes, breathe deeply and talk myself out of smashing things…
Today, I spent several hours trying to do something *completely
simple*: install a second video card in a Linux box. Some highlights:
The obvious solution (
X -configure) crashed with an inexplicable error message:
*** If unresolved symbols were reported above, they might not
*** be the reason for the server aborting.
0: X(xf86SigHandler+0×88) [0×80897b8]
2: X(xf86DriverlistFromCompile+0×29) [0×80813b9]
3: X(DoConfigure+0×11) [0×8073dc1]
4: X(InitOutput+0×655) [0×8071a05]
5: X(main+0×239) [0×80d6589]
6: /lib/tls/libc.so.6(__libc_start_main+0xd0) [0xb7e6ced0]
7: X [0×8070131]
Fatal server error:
Caught signal 11. Server aborting
Heaven forbid that this should be that easy. (When
X -configure works, it actually works.)
I tried two different PCI video cards, then no PCI video card. No
luck. I tried upgrading the kernel (and everything else). No
luck. Signal 11. Looks like I had to do it the hard way.
So I dinked around with settings for a while before realizing that one
of these cards was just not going to work. I switched to the
steam-powered TI Permedia 2 card, for which I had an old copy of the
correct Display settings (which had been spit out by
X before it decided to die on me. For those of you who
have this card:
VendorName "Texas Instruments"
BoardName "Permedia 2"
I’m not sure where I came up with the BusID. It’s not the entry
lspci, which is
0000:00:0b.0 Display controller: Texas Instruments TVP4020 [Permedia 2] (rev 01)
I think I eventually gleaned it from complaints that the computer was
excreting into /var/log/Xorg.0.log (if I remember correctly, it
complained that there was no device for PCI:0:11:00, and I eventually
got the hint…)
I had to figure out the HorizSync and VertRefresh settings for the
monitor. Because I couldn’t find the manual on the Internet (there’s
no obvious relation between model number on the back and the monitors
on the manufacturer’s website, and I was too impatient to download
every 1.5MB PDF manual from the manufacturer’s dinky 30kbps Internet
link). Fortunately, the screen displayed “OVER RANGE” (instead of
blowing up) when I set the HorizSync too high, so I just
binary-searched it down to the right range, restarting X over and over
and over and over and over.
As a final kick in the crotch, I couldn’t get it to shift to the
native resolution (1024×768, I assume). Below a certain HorizSync, it
would go to 800×600, above it, it would go to an ugly 1152×864 (!?). I
couldn’t figure out how to force 1024×768, so I eventually just gave
up and left it at 800×600. At least it’s easy to read.
(Yes, I realize that switching to the Mac or Windows would have made
this easy. Of course, those platforms introduce a host of their own
disgusting problems which pushed me to Linux to begin with. I’m wondering
if I should just go back to punched cards and paper tape.)