First step is to ensure your pacman configuration is good. So view your /etc/pacman.conf. Then do the following:
pacman -Syy # (Forces a reload of the package repositories)
pacman -Syu # (Update the installed packages)
groupadd xbmc
useradd -m -d /home/xbmc -g xbmc -G audio,video xbmc
passwd xbmc
New Password: xxxxx
pacman -S xbmc # (Download the xbmc packages)
pacman -S unrar udisks upower pulseaudio pulseaudio-alsa consolekit
Install X-windows Video Drivers
This was a bit of a problem for me on Arch Linux 64-bit. As the new nvidia driver direct from nvidia would install fine, however, I couldn’t use it with xbmc. Anytime I attempted to run xbmc it would error, complaining about an ELF class in the wrong format or something in relation to glxinfo. I figured this was in relation to it’s handling of the 32-bit libraries. In the end, I installed a 32-bit version of Arch Linux due to some time constraints. I may re-visit at some point, in the future as I’m not too keen on the gui xbmc screen disappearing upon tty swap.
Setup system to boot into X-Windows via default
This can be done via following this url. However, the addition to the /etc/inittab file specifically the call to: x:5:wait:login -f /dev/tty7
didn’t operate how I liked. The moment you swapped to another virtual terminal (tty) you would lose the xbmc graphical window. To alleviate this, I removed everything after . That way it keeps the graphical window functional upon swapping to another terminal and back. One side effect I’ve noticed thus far, is the tty1 window behaves a little strange, and brings you back to a login screen (without automatically refreshing the screen) after you “exit xbmc”. Not a big deal though, just swap to another tty and login as YOUR_XBMC_USERNAME, and it will automatically run xbmc again.
NOTE: Hitting ctrl-c on this window will effectively close xbmc in tty7. If this is undesirable, a trap might be a way around it. I haven’t dealt with traps much, so I can’t say how effective this will be.
Some additional packages you may wish to grab.
Pacman -S gstreamer2 gstreamer2-plugins-bad gstreamer2-plugins-good gstreamer2-plugins-ugly
Also, do a search for xvid, divx and mp4 and mpeg4. You will find some good packages, which you will find will be useful for decoding the audio/video streams.