Make a debian xbmc box in about an hour

We're making a minimal htpc today kids. Grab your gear and follow along.

Hardware:

core2duo 2.6

1GB DDR2

200GB sata drive

Geforce 8600gt

Minimal install of debian wheezy

xbmc run from nodm

media files stored on NFS share

Install Debian

First install a minimal debian installation. Pop in a boot stick and run through the installer. Simple stuff. Only thing to note is that we are looking for MINIMAL, so when it asks you which package groups you want, don't select anything (well, maybe ssh).

Install needed packages

aptitude install xserver-xorg-video-nouveau xserver-xorg-video-vesa nodm xorg-common x11-session-utils xinit alsa nfs-common xbmc xbmc-bin xbmc-common xbmc-data xbmc-eventclients-common xbmc-eventclients-dev xbmc-eventclients-j2me xbmc-eventclients-ps3 xbmc-eventclients-wiiremote xbmc-eventclients-xbmc-send xbmc-skin-confluence xbmc-standalone

Configure nodm

Edit nodm config to start on boot, and to run as the correct user

vi /etc/default/nodm

# nodm configuration # Set NODM_ENABLED to something different than 'false' to enable nodm NODM_ENABLED=true # User to autologin for NODM_USER=silver # First vt to try when looking for free VTs NODM_FIRST_VT=7 # X session NODM_XSESSION=/etc/X11/Xsession # Options for the X server NODM_X_OPTIONS='-nolisten tcp' # If an X session will run for less than this time in seconds, nodm will wait an # increasing bit of time before restarting the session. NODM_MIN_SESSION_TIME=60

Configure NFS

Test that nfs works

mount 192.168.10.100:/home /mnt ls /mnt umount /mnt

Make a new nfs moutpoint

mkdir /penny chmod 755 /penny/

Add to fstab

echo "192.168.10.100:/home /penny nfs ro 0 0" >> /etc/fstab

Test

mount /penny/ ls /penny

Graphics setup (without touching X configs!)

Run to allow normal users to start X (Might not be needed)

dpkg-reconfigure x11-common

vi /etc/default/grub

# If you change this file, run 'update-grub' afterwards to update # /boot/grub/grub.cfg. # For full documentation of the options in this file, see: # info -f grub -n 'Simple configuration' GRUB_DEFAULT=0 GRUB_TIMEOUT=2 GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian` GRUB_CMDLINE_LINUX_DEFAULT="nomodeset" GRUB_CMDLINE_LINUX="" # Uncomment to enable BadRAM filtering, modify to suit your needs # This works with Linux (no patch required) and with any kernel that obtains # the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...) #GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef" # Uncomment to disable graphical terminal (grub-pc only) #GRUB_TERMINAL=console # The resolution used on graphical terminal # note that you can use only modes which your graphic card supports via VBE # you can see them in real GRUB with the command `vbeinfo' #GRUB_GFXMODE=640x480 # Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux #GRUB_DISABLE_LINUX_UUID=true # Uncomment to disable generation of recovery mode menu entries #GRUB_DISABLE_RECOVERY="true" # Uncomment to get a beep at grub start GRUB_INIT_TUNE="480 440 1"

update-grub

su silver cd ~ vi .xsession

#!/bin/sh xbmc

chmod +x .xsession

Reboot the box and see if it works!

At this point you should have xbmc up, and nfs mounted. You may now configure xbmc as you see fit.

This page written by someone annoyed by xbmcbuntu's massive bloat and lag, and random inability to even shut down properly.