For media playback on my Steam Box/HTPC I’m (mostly) using XBMC.  This lets me play videos from my server and watch DVDs from my DVD drive.  On top of this basic functionality I’ve installed the BBC iPlayer and YouTube plugins to allow me to stream content from the web.


I mentioned in my hardware post that I’d purchased a DVB-T2 USB dongle to allow me to watch HD TV.  For the past several years, the standard solution for TV/PVR functionality on Linux has been MythTV.  However, these days XBMC also has a good deal of this functionality in its PVR plugins, as long as you can get a backend service installed to operate the tuner.

One of these options is, of course, MythTV Backend. However, after struggling through the “Setup Wizard” being asked every question under the sun and still not getting it working, I gave up and found TVHeadEnd.  This gives you a simple web interface which detects your hardware and scans for channels with ease.  Adding the TVHeadEnd PVR plugin to XBMC gave me live TV and PVR functionality with minimum fuss.


XBMC gives you several remote control options, including a web interface and a service for other remote control apps to connect to.  I have a remote control widget on my android phone which works well enough, but I’ve found it easiest just to use the regular keys on my Rii Touch keyboard.


I’m not a particular fan of XBMC’s default Confluence theme, in particular it’s menu which only shows the selected option.  After looking around and finding this guide on Lifehacker, I switched to the Transparency theme which has a much better menu, and could be customised to have just the bits I need.

Switching Users

I mentioned in my last post that I’d written scripts using dm-tool to switch between users.  To run these from XBMC I installed the Advanced Launcher addon. This addon lets you create launchers for any executable within XBMC, and add them to the main menu in themes that support it.  Using this method I created launchers for the switch-to-steam and switch-to-lovefilm scripts on the main menu.