I’ve put off upgrading my XBMC media center forever, as it has Just Worked for years, and I was using an old hw raid box that newer kernels didn’t like.

Then a drive in my raid went bad, and I realized I’d better upgrade or die. I started by copying the system to a second drive and trying to reboot off of that. But the root was ext3 and the second drive was ext4 and it wasn’t going to work without some tweaking, which is hard on an oooold system. So it was “put up or shut up” time…

Here are the adventures of me brutalizing my old gentoo box into upgrading (let’s see you do THAT with any other three-year-old distro)…

emerge -avu portage
emerge -avu system
(check world file for possible removals)
emerge -DvuN world --keep-going; emerge -DvuN world --keep-going; emerge --depclean && revdep-rebuild
(rinse and repeat)

And FIX FIX FIX along the way. 🙂

Fixes included:

  • Aggressively get rid of everything along the way that blocks or that you don’t recognize as a top-level world package. Portage will cover you, preserving old library files still in use, and re-filling dependencies during the world upgrade. Yay portage!
    emerge --unmerge blah blah blah
  • gcc – you have to select the new one to get it – and you better pick a new one if you wipe out the old! heh
    gcc-config -l # "dash-el"  :-)
    gcc-config 1  # "select one"
  • samba – looks like smb2 is mo betta and available – go there?
    max protocol = smb2
  • tired of the stupid hoops to get official proprietary Java installed, let’s kick the tires of iced-tea on this XMBC box and hope it’s good enough
    emerge -av dev-java/icedtea-bin
    eselect java-vm set 1 # icedtea-bin-6
    eselect java-nsplugin set 64bit 1 # icedtea-bin-6
  • ATI and AMD apparently dropped video driver support for my HD 3000. You seriously suck. On to the open source radeon driver
    emerge -C x11-drivers/ati-drivers
    eselect opengl set xorg-x11
    # change /etc/make.conf from VIDEO_CARDS="flxwhatevea" to VIDEO_CARDS="radeon"
    emerge -DavuN world # will pick up radeon driver
    emerge -av media-libs/libtxc_dxtn # needed by radeon i guess
  • Also added support for my shiny new eSata tower – 8 bays of SATA goodness with two cables and a port-multiplier addonics card, how sweet is that?? In all, here were the kernel changes made along the way…
    CONFIG_DEVTMPFS must be on
    CONFIG_DRM isn't what it sounds like, it's for the Direct Rendering Infrastructure needed by radeon
    CONFIG_DRM_RADEON is what we need specifically
    BACKLIGHT_LCD_SUPPORT is desired by the radeon driver for some reason
    CONFIG_SATA_SIL, CONFIG_SATA_SIL24 adding to support my new Addonics SATA card with port multiplication functionality
    CONFIG_IDE removed - it says deprecated - but has all the functionality been replaced in CONFIG_ATA?  trying... and it seems to have been
  • qt – what a beautiful beast it is…
    Warning| This obviously will break everything using the Qt libraries until they have finished emerging.
    1. List all installed qt packages:
    export INSTALLED_QT_PACKAGES=$(eix --only-names -IC dev-qt)
    2. Save tarballs of the old versions should we have to roll back:
    3. Unmerge old version and emerge new version:
    emerge -Ca ${INSTALLED_QT_PACKAGES} && emerge -av1 ${INSTALLED_QT_PACKAGES}
    Should we need to roll back, then we can emerge the packaged versions:
    emerge -av1 --usepkgonly ${INSTALLED_QT_PACKAGES}
  • fix up the router to properly serve up static IPs by MAC address – this is really helpful with all the multi-booting I do
  • other stuff that may or may not be done yet…
    get all drives working, change label on raid drive #2 (or #1), reraid (software this time)
    mceusb is set in kernel, only partially working, need lirc to get all the keys??
    imon via lirc
    fix dune ubuntu grub management, bump ubuntu
    photo management on tdm (bump gallery, fix up raid photos, import more, set up screensavers/xbmc/photoframe)

And soon (as in, TWO DAYS OF COMPILING 1000 packages, hahaha!) we have the shiny, and it’s beautiful. XBMC Frodo is looking good, thanks XMBC team.

Leave a Reply