After getting the hardware setup, I moved onto getting the software going.
First, I installed Windows 8.1. This may seem a strange thing to do considering 99.99% of the time the box is going to be booted into linux, but it’s definitely easier to install Windows first, and let it create it’s UEFI partition, and install it’s boot manager etc.
I then resized the Windows partition, and installed Arch Linux. As we’re using UEFI to boot, the disc uses GPT partitioning, so this is a bit different from normal MBR partitioning. For a boot manager I use Refind, which I’ve had good success with in the past. After installing Refind, Windows would not boot as Secure Boot complained that the UEFI setup had been tampered with. The Arch ISO does have a Linux Foundation Secure Boot keysigning tool on it, but in the end I gave up and turned off Secure Boot in the BIOS.
After getting the basics installed and rebooting into the system for real, I started installing the necessary packages.
A lot of this is personal choice, but I went with:
- Boot manager - Refind
- Display manager - Lightdm with GTK greeter
- Window manager/ desktop - LXDE
- Browser - Chromium
- Improved fonts - Infinality bundle
- Media playback - XBMC
- Graphics drivers - open source radeon driver
- Assorted other packages: smartmontools, libcec, vlc, openssh, ntp, gvfs, plymouth, alsa, conky, base-devel, yaourt, smplayer
Resolving graphical problems
When I fired up XBMC for the first time I was pretty disappointed. Firstly the frame rate was really low. Secondly there was bad tearing near the top of the screen.
First I tried playing back the video in smplayer. No tearing, but frame rate was still bad.
I figured out that the best video acceleration API to use with the open source radeon driver is [VDPAU] (https://wiki.archlinux.org/index.php/VDPAU). Selecting this in XBMC however resulted in XBMC locking up. With acceleration set to software, there was enough CPU horsepower to decode most 1080p videos fine, but there was a nasty tear 1/5th of the way down the screen. Not good!
Eventually I ended up installing the XBMC Gotham beta (now RC) from the AUR (xbmc-beta) as well as xf86-video-ati-git. This worked better with VDPAU, but I was still getting the tear, although slightly nearer the top of the screen now.
After some research it appears that this is an issue with libsdl detailed in this bug " libsdl1.2 always uses backingstore which causes tearing in modern X servers " https://bugs.launchpad.net/ubuntu/+source/libsdl1.2/+bug/1280665
To resolve this, the easiest way is to turn off the backing store. I changed this in my lightdm config, setting
[SeatDefaults] xserver-command=X -bs -core
The version of lmsensors in Arch at the moment doesn’t support the sensors in the ITE IT8623E Super IO. Support was added in this changeset http://lm-sensors.org/changeset/6242 so hopefully they’ll release a new version soon. For the time being, I’ve taken ownership of and updated the SVN trunk package on the AUR https://aur.archlinux.org/packages/lm_sensors-svn/
HD Audio - I’ve not yet had HD Audio working, either DTS Master Audio or Dolby TrueHD working on my Onkyo PR-SC886 receiver yet. At the moment the reciever only detests the DTS core audio, or I get No Signal with Dolby TrueHD. More tweaking required!
Windows Media Center remote is sending keyboard keypresses, need to get it working as a remote properly with LIRC
No CEC (using TV remote to operate XBMC). This is not possible with AM1 based systems (and in fact most systems with integrated graphics) I was spoiled with the Raspberry Pi! At the moment the best solution is the Pulse Eight adapter: http://www.pulse-eight.com/store/products/104-usb-hdmi-cec-adapter.aspx
Turning Secure Boot back on
Changing Refind background graphics, the default image is fairly ugly.
Getting lightdm to automatically log the xbmc user into xbmc, but still showing the login prompt for a bit to enable normal logins