I was playing with a similar situation, I did use git clones and NO packages, I get tired of chasing distribution issues before I even know if it will work. But I have working TV in xbmc with my HDHomerun dual tuner.
Plenty of work left to do to improve the support of HDHomerun, No scan , Channels mapping is very tedious, then map again to EPG. Right now I have many mismatched EPG data to channels due to program numbers not listing low to high when adding in custom. I was considering just building out the configs under <user>.hts/tvheadend to line everything up correctly.
I notices that you have userhdhomerun -f starting then dvbhdhomerun-utils , I do not have the upstart service packaging but there are only kernel modules and the userhdhomerun so I believe that dvbhdhomerun-utils actually starts userhdhomerun. For my testing I have:
more /etc/modules
# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.
dvb_hdhomerun
( Note this is to load the kernel dvb_* modules to "talk to the hardware " )
more /etc/dvbhdhomerun
[1015C1F0-0]
tuner_type=ATSC
use_full_name=true
[1015C1F0-1]
tuner_type=ATSC
use_full_name=true
(To set the HDHomerun dvb drivers to use ATSC )
more /etc/rc.local
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
/bin/plymouth --quit
.... some in home stuff
/usr/local/bin/userhdhomerun -f > /var/log/dvbhdhomerun_stdout.log 2> /var/log/dvbhdhomerun_stderr.log
/usr/local/bin/tvheadend -f -u root -g video -s -C -w 9981 -e 9982
exit 0
( to start the core services outside of upstart )
I have a "media" user that everything will run under ie. xbmc and added that user to tvheadend access and to the video group (/etc/group). I did run into a very wierd situation where tvheadend started with NO listener ports so no web access, lsof showed NO OPEN SOCKETS on the tvheadend process and no errors about it.
See a "normal" list below the broken one had no (LISTEN) entries:
mediacenter .hts # lsof -p 2637
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
tvheadend 2637 root cwd DIR 8,5 4096 128 /
tvheadend 2637 root rtd DIR 8,5 4096 128 /
tvheadend 2637 root txt REG 8,5 2933068 1075644231 /usr/local/bin/tvheadend
tvheadend 2637 root mem REG 8,5 52120 1073887168 /lib/x86_64-linux-gnu/libnss_files-2.15.so
tvheadend 2637 root mem REG 8,5 47680 1073887172 /lib/x86_64-linux-gnu/libnss_nis-2.15.so
tvheadend 2637 root mem REG 8,5 97248 1073887162 /lib/x86_64-linux-gnu/libnsl-2.15.so
tvheadend 2637 root mem REG 8,5 35680 1073887164 /lib/x86_64-linux-gnu/libnss_compat-2.15.so
tvheadend 2637 root mem REG 8,5 276392 1075187237 /lib/x86_64-linux-gnu/libdbus-1.so.3.5.8
tvheadend 2637 root mem REG 8,5 1802936 1073887115 /lib/x86_64-linux-gnu/libc-2.15.so
tvheadend 2637 root mem REG 8,5 1022320 1073887149 /lib/x86_64-linux-gnu/libm-2.15.so
tvheadend 2637 root mem REG 8,5 135366 1073887197 /lib/x86_64-linux-gnu/libpthread-2.15.so
tvheadend 2637 root mem REG 8,5 14768 1073887128 /lib/x86_64-linux-gnu/libdl-2.15.so
tvheadend 2637 root mem REG 8,5 31752 1073887205 /lib/x86_64-linux-gnu/librt-2.15.so
tvheadend 2637 root mem REG 8,5 68416 2150704145 /usr/lib/x86_64-linux-gnu/libavahi-client.so.3.2.9
tvheadend 2637 root mem REG 8,5 47856 2150704147 /usr/lib/x86_64-linux-gnu/libavahi-common.so.3.5.3
tvheadend 2637 root mem REG 8,5 92720 1073887230 /lib/x86_64-linux-gnu/libz.so.1.2.3.4
tvheadend 2637 root mem REG 8,5 1852792 1075615874 /lib/x86_64-linux-gnu/libcrypto.so.1.0.0
tvheadend 2637 root mem REG 8,5 149280 1073887095 /lib/x86_64-linux-gnu/ld-2.15.so
tvheadend 2637 root 0u CHR 1,3 0t0 1029 /dev/null
tvheadend 2637 root 1u CHR 1,3 0t0 1029 /dev/null
tvheadend 2637 root 2u CHR 1,3 0t0 1029 /dev/null
tvheadend 2637 root 3r REG 8,5 2933068 1075644231 /usr/local/bin/tvheadend
tvheadend 2637 root 4u unix 0xffff8800cbdfee80 0t0 13249 socket
tvheadend 2637 root 5u 0000 0,9 0 6821 anon_inode
tvheadend 2637 root 7u IPv4 13252 0t0 TCP
:9981 (LISTEN)
tvheadend 2637 root 8u unix 0xffff8800cbdfeb40 0t0 13272 /root/.hts/tvheadend/epggrab/xmltv.sock
tvheadend 2637 root 9u IPv4 13273 0t0 TCP :9982 (LISTEN)
tvheadend 2637 root 10r FIFO 0,8 0t0 16546 pipe
tvheadend 2637 root 12w FIFO 0,8 0t0 16546 pipe
tvheadend 2637 root 13u unix 0xffff8800b8cb5e40 0t0 16547 socket
tvheadend 2637 root 18u IPv4 3457090 0t0 TCP mediacenter.myhome.org:9981->192.168.0.10:53102 (ESTABLISHED)
I assume some security blocking maybe but a reboot cleared it up.
Lastly, I enabled the external xmltv unix domain socket to feed my existing EPG data. I had to manually map the EPGname from the xml files to each channel in the gui this is a PITA since the display is inconsistent based on what the broadcast sends. The feed worked pretty good however:
cat xmltv.xml | tv_sort --by-channel | socat - UNIX-CONNECT:/root/.hts/tvheadend/epggrab/xmltv.sock
tvheadend is listening on that socket from the webui field ( NOTE: The directory epggrab had to be made manually before it worked right ! )
I have this in a cron.daily job to update each night from way back to my mythtv set up.
PS. The bizarre formatting is all the forum web code auto choosing -- badly.