In my mythtv kernel configuration HOWTO, there are several kernel modules that must be re-emerged after a new kernel is installed. [ivtv] was particularly troublesome, because each version of ivtv only applied to a specific kernel version. To install a new kernel, you’d have to first make sure you could get the right version of [ivtv], typically through version-specific masking (pita), then install the kernel, then re-install [ivtv], hoping you didn’t run into any problems. So it’s a lot easier now that [ivtv] is included in the kernel – just configure it into the kernel and you’re good to go. See gentoo’s [ivtv] web page for details, it’s just starting to get documented. But gentoo packages are all good to go! Yay gentoo!

I was trying to find a better alternative to elogviewer, because it doesn’t come up sorted by reverse date. [kelogviewer] was the candidate, so I unmasked it, but the deps are creeping. Kill it…

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! 😛