Today’s pain in the ass gold-level sponsors are gentoo, ATI and xorg…
Somehow I initially managed to get ATI drivers working on the [dune] media center, but I’m not sure how – stable kernel and driver do NOT work together. As of today, the ATI-provided [ati-drivers] package does not work – the stable version doesn’t compile with the latest stable [gentoo-sources] kernel, and the soft-masked version doesn’t compile without soft-unmasking half of X.
Well, I opted to soft-unmask half of X, yuck. Here’s what it took in [package.keywords]…

x11-drivers/ati-drivers
x11-apps/ati-drivers-extra
# and deps... sigh...
x11-base/xorg-server
x11-libs/pixman
x11-libs/libpciaccess
x11-proto/xproto
x11-apps/xauth
x11-libs/libXrender
x11-proto/renderproto
x11-proto/xextproto
x11-libs/libXau
x11-libs/libXext
x11-libs/libXfont
x11-proto/inputproto
x11-libs/xtrans
x11-misc/xkeyboard-config
media-libs/mesa
x11-libs/libdrm
x11-libs/libX11
x11-proto/xf86driproto
x11-libs/libXxf86vm
x11-apps/rgb
x11-apps/xinit
x11-proto/randrproto
x11-drivers/xf86-input-keyboard
x11-drivers/xf86-input-mouse
x11-drivers/xf86-input-evdev

When I got done, I lost my 1080p resolution and my mouse and keyboard (!). Digging in, I found that the newer xorg-server autodetects things, and when autodetect is on, it turns off any mouse and keyboard that are specified in xorg.conf. Well… I hadn’t realized up until this point that I wasn’t running HAL (I had it installed but had not yet added it to a run level). Therefore, X would disable my mouse and keyboard specified in xorg.conf, because it expected them to be autodetected. But without hal running, it doesn’t happen. You also have to have the [xf86-input-evdev] package installed and add the [input_devices_evdev] USE flag to [xorg-server] – evdev is what can actually successfully autodetect. Moral of the story: run hal with the latest xorg-server! And run dbus and add users to plugdev group to get hot-plugging.
Next I needed to figure out why I was dropping back to 1600×1200 from 1080p. The xorg log showed this error:

(EE) AIGLX error: fglrx exports no extensions (/usr/lib64/dri/fglrx_dri.so: undefined symbol: __driDriverExtensions)
(EE) AIGLX: reverting to software rendering

This bug indicates that older [ati-drivers] appear to leave broken symlinks that prevent update. Do this:

emerge -C ati-drivers
eselect opengl set xorg-x11 (and remove any files that cause problems)
emerge -av ati-drivers
eselect opengl set ati

Now get your shit together, gentoo… I’d much prefer a stable [ati-drivers]… rrr… I get depressed when “those that hack on linux” cause this much pain to the end user trying to accomplish the most basic tasks… I don’t want to spend so many cycles tweaking and hammering on linux basics… makes me consider a jump to Ubuntu… steady on…

The latest media center, [dune], is up and running with the following features:

  • mythtv trunk on gentoo, including development environment
  • Sharp 52″ 10,000:1 1080p HDTV
  • Hauppage PVR-350 (upgrade to WinTV-HVR-2250 when a driver is released)
  • 1080p-ready mobo w/ onboard ATI Radeon HD3200, HDMI-out
  • Athlon Phenom quad-core CPU
  • 1.5tb of local Sata storage
  • 1.5tb of raid1 eSata storage

…so remove it! 😛

For some reason, the emerge of wordpress overwrote my wp-config.php. Fixed in two seconds since I keep all my config files under version control. Silly cvs diff command (makes you grateful for git’s use of the carat):

cvs log myfile
cvs diff -r 1.4 myfile