summaryrefslogtreecommitdiffstats
path: root/abs
diff options
context:
space:
mode:
Diffstat (limited to 'abs')
-rw-r--r--abs/mv-core/MythVantage-config/.kdbgrc.mythinstall12
-rwxr-xr-xabs/mv-core/MythVantage-config/MythVantage.sh3
-rwxr-xr-xabs/mv-core/MythVantage-config/PKGBUILD66
-rwxr-xr-xabs/mv-core/MythVantage-config/add_service.sh15
-rwxr-xr-xabs/mv-core/MythVantage-config/autocard.py302
-rwxr-xr-xabs/mv-core/MythVantage-config/bpopup-ui.xml164
-rwxr-xr-xabs/mv-core/MythVantage-config/build_diskless.sh162
-rw-r--r--abs/mv-core/MythVantage-config/builddir1
-rwxr-xr-xabs/mv-core/MythVantage-config/copy-back.sh8
-rwxr-xr-xabs/mv-core/MythVantage-config/copy-to-mythbase.sh12
-rwxr-xr-xabs/mv-core/MythVantage-config/create_master.sh104
-rwxr-xr-xabs/mv-core/MythVantage-config/install-ui.xml175
-rwxr-xr-xabs/mv-core/MythVantage-config/install_db_chroot.sh51
-rwxr-xr-xabs/mv-core/MythVantage-config/install_functions.sh479
-rwxr-xr-xabs/mv-core/MythVantage-config/install_proxy.sh504
-rw-r--r--abs/mv-core/MythVantage-config/issue1
-rwxr-xr-xabs/mv-core/MythVantage-config/live-install.sh28
-rw-r--r--abs/mv-core/MythVantage-config/live.install57
-rw-r--r--abs/mv-core/MythVantage-config/mythvantage-release1
-rw-r--r--abs/mv-core/MythVantage-config/networkconfig.sh285
-rwxr-xr-xabs/mv-core/MythVantage-config/remove_service.sh8
-rwxr-xr-xabs/mv-core/MythVantage-config/restore_default_settings.sh325
-rwxr-xr-xabs/mv-core/MythVantage-config/soundconfig.sh248
-rwxr-xr-xabs/mv-core/MythVantage-config/startx29
-rwxr-xr-xabs/mv-core/MythVantage-config/systemconfig.sh1254
-rw-r--r--abs/mv-core/MythVantage-config/templates/LCD/Shuttle-SG33/LCDd.conf869
-rw-r--r--abs/mv-core/MythVantage-config/templates/LCD/Silverstone/LCDd.conf869
-rw-r--r--abs/mv-core/MythVantage-config/templates/LCD/Silverstone/modules1
-rw-r--r--abs/mv-core/MythVantage-config/templates/LCD/antec_fusion/LCDd.conf869
-rw-r--r--abs/mv-core/MythVantage-config/templates/LCD/antec_fusion/lircd.conf38
-rw-r--r--abs/mv-core/MythVantage-config/templates/LCD/antec_fusion/lircrc15
-rw-r--r--abs/mv-core/MythVantage-config/templates/LCD/antec_fusion/modules1
-rw-r--r--abs/mv-core/MythVantage-config/templates/LCD/xosd/LCDd.conf957
-rw-r--r--abs/mv-core/MythVantage-config/templates/audio/space_battle_A.wavbin0 -> 3782844 bytes
-rwxr-xr-xabs/mv-core/MythVantage-config/templates/cc.orig.sh35
-rwxr-xr-xabs/mv-core/MythVantage-config/templates/cc.sh5
-rwxr-xr-xabs/mv-core/MythVantage-config/templates/cc_vol.sh5
-rwxr-xr-xabs/mv-core/MythVantage-config/templates/change_chan.sh19
-rw-r--r--abs/mv-core/MythVantage-config/templates/cron.template4
-rw-r--r--abs/mv-core/MythVantage-config/templates/etcnet/eth/ipv4address2
-rw-r--r--abs/mv-core/MythVantage-config/templates/etcnet/eth/ipv4route2
-rw-r--r--abs/mv-core/MythVantage-config/templates/etcnet/eth/iwconfig2
-rw-r--r--abs/mv-core/MythVantage-config/templates/etcnet/eth/options7
-rw-r--r--abs/mv-core/MythVantage-config/templates/evrouter/MythVantage-40
-rw-r--r--abs/mv-core/MythVantage-config/templates/evrouter/MythVantage-80
-rw-r--r--abs/mv-core/MythVantage-config/templates/evrouter/MythVantage-Full0
-rw-r--r--abs/mv-core/MythVantage-config/templates/evrouter/MythVantage8-minipac3
-rw-r--r--abs/mv-core/MythVantage-config/templates/evrouter/MythVantage8-uhid3
-rw-r--r--abs/mv-core/MythVantage-config/templates/exports.template8
-rwxr-xr-xabs/mv-core/MythVantage-config/templates/fstab.conf.template16
-rw-r--r--abs/mv-core/MythVantage-config/templates/mysql.service13
-rwxr-xr-xabs/mv-core/MythVantage-config/templates/mysql.txt29
-rwxr-xr-xabs/mv-core/MythVantage-config/templates/ncid.conf.template51
-rw-r--r--abs/mv-core/MythVantage-config/templates/ncidd.conf.template143
-rwxr-xr-xabs/mv-core/MythVantage-config/templates/real_change_chan.sh19
-rw-r--r--abs/mv-core/MythVantage-config/templates/remotes/ATI_wonder/lircd.ATI.conf357
-rw-r--r--abs/mv-core/MythVantage-config/templates/remotes/ATI_wonder/lircrc-atiwonder.txt922
-rw-r--r--abs/mv-core/MythVantage-config/templates/remotes/ATI_wonder/preview.jpgbin0 -> 63480 bytes
-rw-r--r--abs/mv-core/MythVantage-config/templates/remotes/MX-500-jams/lircd.conf.MX-500-JAMS115
-rw-r--r--abs/mv-core/MythVantage-config/templates/remotes/MX-500-jams/lircrc832
-rw-r--r--abs/mv-core/MythVantage-config/templates/remotes/MX-500-jams/preview.jpgbin0 -> 10473 bytes
-rw-r--r--abs/mv-core/MythVantage-config/templates/remotes/MythVantage-one/lircd.conf115
-rwxr-xr-xabs/mv-core/MythVantage-config/templates/remotes/MythVantage-one/lircrc857
-rw-r--r--abs/mv-core/MythVantage-config/templates/remotes/MythVantage-one/preview.jpgbin0 -> 88727 bytes
-rw-r--r--abs/mv-core/MythVantage-config/templates/remotes/RadioShack_15-2116-Jarod_Wilson/lircd-rs.conf87
-rw-r--r--abs/mv-core/MythVantage-config/templates/remotes/RadioShack_15-2116-Jarod_Wilson/lircrc-rs539
-rw-r--r--abs/mv-core/MythVantage-config/templates/remotes/RadioShack_15-2116-Jarod_Wilson/preview.jpgbin0 -> 7504 bytes
-rw-r--r--abs/mv-core/MythVantage-config/templates/remotes/gr8zap/lircd.conf.streamzap69
-rw-r--r--abs/mv-core/MythVantage-config/templates/remotes/gr8zap/lircrc472
-rw-r--r--abs/mv-core/MythVantage-config/templates/remotes/gr8zap/preview.jpgbin0 -> 83195 bytes
-rw-r--r--abs/mv-core/MythVantage-config/templates/remotes/hauppauge/lircd.conf.hauppauge274
-rw-r--r--abs/mv-core/MythVantage-config/templates/remotes/hauppauge/lircmd.conf.hauppauge33
-rw-r--r--abs/mv-core/MythVantage-config/templates/remotes/hauppauge/preview.jpgbin0 -> 45763 bytes
-rw-r--r--abs/mv-core/MythVantage-config/templates/remotes/imon-pad/lircd.conf88
-rw-r--r--abs/mv-core/MythVantage-config/templates/remotes/imon-pad/lircrc240
-rw-r--r--abs/mv-core/MythVantage-config/templates/remotes/imon-pad/preview.jpgbin0 -> 33321 bytes
-rw-r--r--abs/mv-core/MythVantage-config/templates/remotes/mceusb/lircd-mceusb.conf88
-rw-r--r--abs/mv-core/MythVantage-config/templates/remotes/mceusb/lircrc-mceusb393
-rw-r--r--abs/mv-core/MythVantage-config/templates/remotes/mceusb/preview.jpgbin0 -> 12551 bytes
-rw-r--r--abs/mv-core/MythVantage-config/templates/remotes/no_remote/preview.jpgbin0 -> 3087 bytes
-rw-r--r--abs/mv-core/MythVantage-config/templates/remotes/one-for-juski/lircd.conf.juski59
-rw-r--r--abs/mv-core/MythVantage-config/templates/remotes/one-for-juski/lircrc394
-rw-r--r--abs/mv-core/MythVantage-config/templates/remotes/one-for-juski/preview.jpgbin0 -> 17751 bytes
-rw-r--r--abs/mv-core/MythVantage-config/templates/remotes/receiver_usb.id4
-rw-r--r--abs/mv-core/MythVantage-config/templates/remotes/snapstream_firefly/lircd.snapstrm.conf127
-rw-r--r--abs/mv-core/MythVantage-config/templates/remotes/snapstream_firefly/lircrc-snapstrm.txt590
-rw-r--r--abs/mv-core/MythVantage-config/templates/remotes/snapstream_firefly/preview.jpgbin0 -> 63750 bytes
-rw-r--r--abs/mv-core/MythVantage-config/templates/remotes/streamzap/lircd.conf.streamzap69
-rwxr-xr-xabs/mv-core/MythVantage-config/templates/remotes/streamzap/lircrc832
-rw-r--r--abs/mv-core/MythVantage-config/templates/remotes/streamzap/preview.jpgbin0 -> 83195 bytes
-rwxr-xr-xabs/mv-core/MythVantage-config/templates/samba/smb.conf.home10
-rwxr-xr-xabs/mv-core/MythVantage-config/templates/samba/smb.conf.media10
-rw-r--r--abs/mv-core/MythVantage-config/templates/samba/smb.conf.template125
-rw-r--r--abs/mv-core/MythVantage-config/templates/settings/default_1/keybindings.txt209
-rw-r--r--abs/mv-core/MythVantage-config/templates/settings/default_1/settings.txt320
-rw-r--r--abs/mv-core/MythVantage-config/templates/settings/default_2/keybindings.txt209
-rw-r--r--abs/mv-core/MythVantage-config/templates/settings/default_2/settings.txt320
-rw-r--r--abs/mv-core/MythVantage-config/templates/sources/mv-core2
-rw-r--r--abs/mv-core/MythVantage-config/templates/sources/mv-core-testing2
-rw-r--r--abs/mv-core/MythVantage-config/templates/sources/mv-extra2
-rw-r--r--abs/mv-core/MythVantage-config/templates/sources/mv-extra-testing2
-rw-r--r--abs/mv-core/MythVantage-config/templates/sources/svc_pkg3
-rwxr-xr-xabs/mv-core/MythVantage-config/templates/transmit/Time_Warner_SA3250/lircd.conf413
-rw-r--r--abs/mv-core/MythVantage-config/templates/xine.config.template754
-rw-r--r--abs/mv-core/MythVantage-config/templates/xorg/modeline.ATSC33
-rw-r--r--abs/mv-core/MythVantage-config/templates/xorg/modeline.DVD9
-rw-r--r--abs/mv-core/MythVantage-config/templates/xorg/modeline.NTSC10
-rw-r--r--abs/mv-core/MythVantage-config/templates/xorg/modeline.VESA163
-rw-r--r--abs/mv-core/MythVantage-config/templates/xorg/modeline.custom1
-rw-r--r--abs/mv-core/MythVantage-config/templates/xorg/xorg.conf.ati94
-rw-r--r--abs/mv-core/MythVantage-config/templates/xorg/xorg.conf.intel148
-rwxr-xr-xabs/mv-core/MythVantage-config/templates/xorg/xorg.conf.nvidia90
-rw-r--r--abs/mv-core/MythVantage-config/templates/xorg/xorg.conf.via77
-rwxr-xr-xabs/mv-core/MythVantage-config/templates/xorg/xorg.conf.vmware72
-rwxr-xr-xabs/mv-core/MythVantage-config/timezip.py185
-rwxr-xr-xabs/mv-core/MythVantage-config/xconfig.sh233
-rw-r--r--abs/mv-core/MythVantage-system/45-event.rules1
-rw-r--r--abs/mv-core/MythVantage-system/PKGBUILD43
-rw-r--r--abs/mv-core/MythVantage-system/STB-start160
-rw-r--r--abs/mv-core/MythVantage-system/STB.install113
-rw-r--r--abs/mv-core/MythVantage-system/STBWINDOWMANAGER2
-rwxr-xr-xabs/mv-core/MythVantage-system/backend_control.sh34
-rwxr-xr-xabs/mv-core/MythVantage-system/backup_job63
-rwxr-xr-xabs/mv-core/MythVantage-system/file_time_offset.py39
-rwxr-xr-xabs/mv-core/MythVantage-system/firstboot.sh44
-rwxr-xr-xabs/mv-core/MythVantage-system/grabkey.py109
-rw-r--r--abs/mv-core/MythVantage-system/imdb-bulk-update.pl720
-rw-r--r--abs/mv-core/MythVantage-system/initial_db_run24
-rw-r--r--abs/mv-core/MythVantage-system/inittab34
-rwxr-xr-xabs/mv-core/MythVantage-system/load-modules-mythvantage.sh32
-rw-r--r--abs/mv-core/MythVantage-system/mbegdbcommands.txt8
-rw-r--r--abs/mv-core/MythVantage-system/mfegdbcommands.txt8
-rwxr-xr-xabs/mv-core/MythVantage-system/myth_mtc.py139
-rwxr-xr-xabs/mv-core/MythVantage-system/myth_mtc.sh12
-rwxr-xr-xabs/mv-core/MythVantage-system/notify.py29
-rwxr-xr-xabs/mv-core/MythVantage-system/optimize_mythdb.py16
-rwxr-xr-xabs/mv-core/MythVantage-system/playmedia.sh53
-rwxr-xr-xabs/mv-core/MythVantage-system/repo_sync.sh11
-rwxr-xr-xabs/mv-core/MythVantage-system/restartfrontend.sh4
-rwxr-xr-xabs/mv-core/MythVantage-system/restore_job.sh39
-rwxr-xr-xabs/mv-core/MythVantage-system/saytime.sh14
-rw-r--r--abs/mv-core/MythVantage-system/smolt.cron11
-rwxr-xr-xabs/mv-core/MythVantage-system/startfrontend147
-rwxr-xr-xabs/mv-core/MythVantage-system/update_system52
-rwxr-xr-xabs/mv-core/MythVantage-system/update_system_all10
-rw-r--r--abs/mv-core/MythVantage-system/wmaker2
146 files changed, 21304 insertions, 0 deletions
diff --git a/abs/mv-core/MythVantage-config/.kdbgrc.mythinstall b/abs/mv-core/MythVantage-config/.kdbgrc.mythinstall
new file mode 100644
index 0000000..fed082f
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/.kdbgrc.mythinstall
@@ -0,0 +1,12 @@
+[General]
+DebuggerCmdStr=
+DriverName=GDB
+FileVersion=1
+OptionsSelected=
+ProgramArgs=
+TTYLevel=7
+WorkingDirectory=
+
+[Memory]
+ColumnWidths=80,0
+NumExprs=0
diff --git a/abs/mv-core/MythVantage-config/MythVantage.sh b/abs/mv-core/MythVantage-config/MythVantage.sh
new file mode 100755
index 0000000..286c908
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/MythVantage.sh
@@ -0,0 +1,3 @@
+export MV_ROOT=/usr/MythVantage
+export PATH=$PATH:$MV_ROOT/bin
+export TEMPLATES=$MV_ROOT/templates
diff --git a/abs/mv-core/MythVantage-config/PKGBUILD b/abs/mv-core/MythVantage-config/PKGBUILD
new file mode 100755
index 0000000..722f80b
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/PKGBUILD
@@ -0,0 +1,66 @@
+pkgname=MythVantage-config
+pkgver=3.2
+pkgrel=130
+pkgdesc="The Gui-installer"
+depends=(bc mysql-python expect curl dnsutils sg3_utils parted)
+arch=('i686')
+source=(mythinstall.bin install-ui.xml bpopup-ui.xml mythbeselect.bin install_proxy.sh install_functions.sh startx systemconfig.sh install_db_chroot.sh restore_default_settings.sh live-install.sh xconfig.sh timezip.py soundconfig.sh mythvantage-release issue autocard.py MythVantage.sh create_master.sh build_diskless.sh networkconfig.sh )
+install=live.install
+build() {
+
+
+ mkdir -p $startdir/pkg/etc
+ mkdir -p $startdir/pkg/usr/local/share/mythtv/themes/default
+
+# new stuff
+ MVDIR=$startdir/pkg/usr/MythVantage
+ mkdir $startdir/pkg/etc/profile.d
+ install -m 0755 MythVantage.sh $startdir/pkg/etc/profile.d/MythVantage.sh
+ mkdir -p $startdir/pkg/root/
+
+
+ mkdir -p $MVDIR/bin
+ mkdir -p $MVDIR/templates
+ mkdir -p $MVDIR/etc
+#copy in all the installer specific stuff
+ #cp -rp ../templates $MVDIR/
+ rsync -r --exclude=.svn ../templates $MVDIR/
+ install -m 0755 install_proxy.sh $MVDIR/bin/install_proxy.sh
+ install -m 0755 install_functions.sh $MVDIR/bin/install_functions.sh
+ install -m 0755 systemconfig.sh $MVDIR/bin/systemconfig.sh
+ install -m 0755 xconfig.sh $MVDIR/bin/xconfig.sh
+ # install -m 0755 startx $MVDIR/bin/startx
+ install -m 0755 live-install.sh $MVDIR/bin/live-install.sh
+ install -m 0755 install_db_chroot.sh $MVDIR/bin/install_db_chroot.sh
+ install -m 0755 restore_default_settings.sh $MVDIR/bin/restore_default_settings.sh
+ install -m 0755 timezip.py $MVDIR/bin/timezip.py
+ install -m 0755 autocard.py $MVDIR/bin/autocard.py
+ install -m 0755 soundconfig.sh $MVDIR/bin/soundconfig.sh
+ install -m 0755 networkconfig.sh $MVDIR/bin/networkconfig.sh
+ install -m 0755 create_master.sh $MVDIR/bin/create_master.sh
+ install -m 0755 build_diskless.sh $MVDIR/bin/build_diskless.sh
+
+
+ #copy in the branding stuff
+ install -m 0755 mythvantage-release $startdir/pkg/etc/mythvantage-release
+
+ install -m 0755 issue $startdir/pkg/etc/issue
+
+# copy over the ui files
+ install -m 0755 install-ui.xml $startdir/pkg/usr/local/share/mythtv/themes/default/
+ install -m 0755 bpopup-ui.xml $startdir/pkg/usr/local/share/mythtv/themes/default/
+#copy in the binaries
+ install -g mythtv -m 4750 mythinstall.bin $MVDIR/bin/MythVantage
+ cd $MVDIR/bin
+ ln -s MythVantage mythvantage
+ ln -s MythVantage mythinstall
+ cd -
+ install -g mythtv -m 4750 mythbeselect.bin $MVDIR/bin/mythbeselect
+
+ #install -g mythtv -m 750 mythinstall.bin $MVDIR/bin/mythinstall
+# mkdir -p $startdir/pkg/usr/share/templates
+ #cp -rp ../templates $startdir/pkg/usr/share/
+ install -m 0755 startx $startdir/pkg/root/startx
+ install -m 0755 live-install.sh $startdir/pkg/root/live-install.sh
+}
+
diff --git a/abs/mv-core/MythVantage-config/add_service.sh b/abs/mv-core/MythVantage-config/add_service.sh
new file mode 100755
index 0000000..190d604
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/add_service.sh
@@ -0,0 +1,15 @@
+#!/bin/bash
+SERVICE_DIR=/var/service
+SCRIPT_DIR=/etc/sv
+if [ -d $SCRIPT_DIR/$1 ]
+then
+ if [ -d $SERVICE_DIR/$1 ]
+ then
+ echo "$1 already there"
+ else
+ ln -s $SCRIPT_DIR/$1 $SERVICE_DIR/$1
+ echo "adding $1"
+ fi
+else
+ echo "couldn't find $SCRIPT_DIR/$1"
+fi
diff --git a/abs/mv-core/MythVantage-config/autocard.py b/abs/mv-core/MythVantage-config/autocard.py
new file mode 100755
index 0000000..b59b8d6
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/autocard.py
@@ -0,0 +1,302 @@
+#!/usr/bin/python
+# import MySQL module
+#jm
+import MySQLdb
+import sys
+import getopt
+import socket
+import os
+import time
+import string
+import glob
+from string import letters
+from string import digits
+
+def INSERTCARD_INTOMYTH(Device,Driver,Cardvendor):
+ global currenthostname
+ print Device
+ print Driver,
+ print Cardvendor
+ cursor = db.cursor()
+ insert = "false"
+ if Driver == "ivtv" :
+ cardtype="MPEG"
+ defaultinput="Tuner 1"
+ insert="true"
+ if Cardvendor == "pcHDTV HD3000 HDTV":
+ insert="false"
+ cardtype ="whocares"
+
+ #print insert
+ if insert == "true" :
+ cursor.execute("INSERT INTO capturecard (videodevice,cardtype,defaultinput,hostname) VALUES(%s,%s,%s,%s);",(Device,cardtype,defaultinput,currenthostname))
+
+def INSERTHDR_INTOMYTH(deviceid,tuner_number):
+ cardtype='HDHOMERUN'
+ defaultinput='MPEG2TS'
+ global currenthostname
+ print deviceid
+ print cardtype
+ print defaultinput
+ print tuner_number
+ cursor = db.cursor()
+ #print insert
+ cursor.execute("INSERT INTO capturecard (videodevice,cardtype,defaultinput,dbox2_port ,hostname) VALUES(%s,%s,%s,%s,%s);",(deviceid,cardtype,defaultinput,tuner_number,currenthostname))
+
+def INSERTAUTOCARD():
+ global cardlist
+ global currenthostname
+ # create a cursor
+ cursor = db.cursor()
+
+
+ for i in range( 1 , len(cardlist)):
+ insert = "false"
+# print cardlist[i]
+ Device=cardlist[i][0]
+ Driver=cardlist[i][1]
+ Cardvendor=cardlist[i][2]
+ Businfo=cardlist[i][3]
+ if Driver == "ivtv" :
+ insert="true"
+ devicestatus="unused"
+ if Cardvendor == "pcHDTV HD3000 HDTV":
+ insert="false"
+ cardtype ="whocares"
+ if Driver == "hdr":
+ insert="true"
+ devicestatus="unused"
+
+ if insert == "true" :
+ cursor.execute("delete from autocard where uniqid=%s;",(Businfo))
+ if Driver=="hdr":
+ Cardvendor="HDHOMERUN Tuner 1"
+ cursor.execute("INSERT INTO autocard (dev,driver,description,uniqid,devicestatus,hostname) VALUES(%s,%s,%s,%s,%s,%s);",(Device,Driver,Cardvendor,Businfo,devicestatus,currenthostname))
+ Cardvendor="HDHOMERUN Tuner 2"
+ cursor.execute("INSERT INTO autocard (dev,driver,description,uniqid,devicestatus,hostname) VALUES(%s,%s,%s,%s,%s,%s);",(Device,Driver,Cardvendor,Businfo,devicestatus,currenthostname))
+
+ else:
+ cursor.execute("INSERT INTO autocard (dev,driver,description,uniqid,devicestatus,hostname) VALUES(%s,%s,%s,%s,%s,%s);",(Device,Driver,Cardvendor,Businfo,devicestatus,currenthostname))
+
+
+
+def PRINTINFO():
+ global cardlist
+
+ for list in cardlist:
+ if list != "_placeholder_":
+ print list
+ #print "-------------"
+
+def GATHER_HDR():
+ global cardlist
+ command="/usr/bin/hdhomerun_config --discover"
+ results=os.popen(command,'r')
+ line=results.readline()
+ if line.strip().split()[0] == "no":
+ print "HDHOMERUN not detected"
+ else:
+ print line
+ hdrdevice=line.strip().split()[2]
+ print hdrdevice
+ Driver="hdr"
+ Device=hdrdevice
+ Cardtype="HDHOMERUN"
+ Businfo=hdrdevice
+ cardprops = [Device,Driver , Cardtype , Businfo]
+ cardlist.append(cardprops)
+
+
+def GATHER_v4l_CARDS():
+ global cardlist
+ cardlist=["_placeholder_"]
+ # print "Looking for v4l cards"
+ try:
+ filelist = os.listdir('/dev/v4l/')
+ except OSError:
+ filelist=" "
+ #fakelist=['/dev/v4l/video3', 'ivtv', 'WinTV PVR 500 (unit #2)', '0000:04:09.0']
+ #cardlist.append(fakelist)
+ try:
+ filelist = glob.glob("/dev/v4l/video?")
+ Driver=""
+ Cardtype=""
+ Businfo=""
+ numcards = 0
+ for Device in filelist:
+ #print card
+ numcards = numcards+1
+ cmd = 'v4l2-ctl -D -d' + Device
+ for line in os.popen(cmd).readlines():
+ #print line
+ pos = string.find(line,"Driver name")
+ if pos >=0:
+ splitline= line.split(':')
+ Driver=splitline[1].strip()
+ pos = string.find(line,"Card type")
+ if pos >=0:
+ splitline= line.split(':')
+ Cardtype=splitline[1].strip()
+
+ pos = string.find(line,"Bus info")
+ if pos >=0:
+ splitline= line.split(':',1)
+ Businfo=splitline[1].strip()
+
+ #print Device,Driver , Cardtype , Businfo,numcards
+ cardprops = [Device,Driver , Cardtype , Businfo]
+ cardlist.append(cardprops)
+ except IOError:
+ print "no v4l cards found"
+ sys.exit(2)
+
+
+def WRITEUDEV_IVTV():
+ global insertmyth
+ cursor = db.cursor()
+ #add ivtv,cid lookup loop through until empty.
+ cursor.execute("select distinct(uniqid) from autocard where driver='ivtv' and devicestatus='will-add'")
+ cidrows = cursor.fetchall()
+ for row in cidrows:
+ cid=row[0]
+ cursor.execute("select dev,driver,description,devicestatus,hostname from autocard where uniqid=%s limit 1;",(cid))
+ result = cursor.fetchone()
+ description=result[2]
+ driver='DRIVERS==\"ivtv\"'
+ ATTRNAME='ATTR{name}=="ivtv? encoder MPG"'
+ KERNELS='KERNELS==\"'
+ KERNELS+=cid
+ KERNELS+="\""
+ #filter out non digit or chars
+ keep=letters.join(digits)
+ description=filter(lambda c: c in keep, description)
+ devnode="ivtv/"
+ #devnode+=description + "_"
+ udevcid=cid.partition(":")
+ devnode+=udevcid[2]
+ devnode+="_video"
+ UDEV_RULE=driver +', '+ATTRNAME+', '+ KERNELS +', ' + 'NAME=\"' + devnode + '"'
+ print "Here is the udev rule"
+ print UDEV_RULE
+ filename='/etc/udev/rules.d/11-ivtv-'+cid+'.rules'
+ file = open(filename,'w')
+ file.write(UDEV_RULE)
+ if ( insertmyth == "true"):
+ devnode="/dev/"+devnode
+ INSERTCARD_INTOMYTH(devnode,"ivtv",description)
+ cursor.execute("update autocard set devicestatus='done' where uniqid=%s;",(cid))
+#now insert HDR
+ cursor.execute("select distinct(uniqid),description from autocard where driver='hdr' and devicestatus='will-add'")
+ cidrows = cursor.fetchall()
+ for row in cidrows:
+ if ( insertmyth == "true"):
+ deviceid=row[0]
+ #cardtype="HDHOMRUN"
+ #defaultinput="MPEG2TS"
+ dbox2_port=row[1]
+ tuner_number=dbox2_port.rpartition(' ')[2]
+ INSERTHDR_INTOMYTH(deviceid,tuner_number)
+ cursor.execute("update autocard set devicestatus='done' where uniqid=%s and description=%s;",(deviceid,dbox2_port))
+
+
+
+def CLEARAUTOCARD():
+ cursor = db.cursor()
+ cursor.execute("delete from autocard")
+
+def RELOADUDEV():
+ print "relaoding udev rules"
+ os.system('udevcontrol reload_rules')
+ os.system('rmmod ivtv')
+ os.system('udevtrigger')
+
+
+def usage():
+ print " -h help"
+ print " -g gather and print out the found cards"
+ print " -w write out the udev rules"
+ print " -i insert cards into myth that are marked will-add(only used with -w)"
+ print " -r reload udev rules"
+ print " -c clear the autocard db"
+
+def main(argv):
+ global db
+ global cardlist
+ global currenthostname
+ currenthostname=""
+ writeudev="false"
+ global insertmyth
+ insertmyth ="false"
+
+ db = MySQLdb.connect(host="localhost", user="mythtv", passwd="mythtv", db="mythconverg")
+ try:
+ cursor = db.cursor()
+ cursor.execute("describe autocard;")
+ except MySQLdb.Error, e:
+ cursor.execute("create table autocard(dev varchar(50),driver varchar(50),description varchar(50),uniqid varchar(50), devicestatus varchar(50),hostname varchar(50));")
+ print "table created"
+
+ if ( currenthostname == "" ):
+ currenthostname = socket.gethostname()
+
+
+ try:
+ opts, args = getopt.getopt(argv, "hgwirc", ["help", "gathercards", "writeudev" ,"insert" , "reloadudev" , "clearautocard"] )
+ except getopt.GetoptError:
+ sys.exit(2)
+ for opt, arg in opts:
+ if opt in ("-h", "--help"):
+ usage()
+ sys.exit()
+ elif opt in ( "-g" , "--gathercards"):
+ GATHER_v4l_CARDS()
+ GATHER_HDR()
+ INSERTAUTOCARD()
+ PRINTINFO()
+ elif opt in ("-w", "--writeudev"):
+ writeudev="true"
+ elif opt in ("-i", "--insert"):
+ insertmyth="true"
+ elif opt in ( "-r" , "--reloadudev"):
+ RELOADUDEV()
+ elif opt in ( "-c" , "--clearautocard"):
+ CLEARAUTOCARD()
+
+
+ if ( writeudev == "true"):
+ WRITEUDEV_IVTV()
+
+
+
+
+
+
+if __name__ == "__main__":
+ main(sys.argv[1:])
+
+
+
+
+
+#mysql> create table autocard(dev varchar(50),driver varchar(50),description varchar(50),uniqid varchar(50), devicestatus varchar(50),hostname varchar(50));
+#Query OK, 0 rows affected (0.14 sec)
+
+#mysql> describe autocard;
+#+--------------+-------------+------+-----+---------+-------+
+#| Field | Type | Null | Key | Default | Extra |
+#+--------------+-------------+------+-----+---------+-------+
+#| dev | varchar(50) | YES | | NULL | |
+#| driver | varchar(50) | YES | | NULL | |
+#| description | varchar(50) | YES | | NULL | |
+#| uniqid | varchar(50) | YES | | NULL | |
+#| devicestatus | varchar(50) | YES | | NULL | |
+#| hostname | varchar(50) | YES | | NULL | |
+#+--------------+-------------+------+-----+---------+-------+
+
+
+
+
+
+
+
+
diff --git a/abs/mv-core/MythVantage-config/bpopup-ui.xml b/abs/mv-core/MythVantage-config/bpopup-ui.xml
new file mode 100755
index 0000000..df0598b
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/bpopup-ui.xml
@@ -0,0 +1,164 @@
+<!--
+
+ This is a myth style theme file for mythwelcome
+
+ (c) 2005 by a whole bunch of people associated with MythTV
+
+-->
+<mythuitheme>
+
+ <window name="welcome_screen">
+
+ <!--
+
+ First, define all the fonts we need on this screen
+
+ -->
+ <font name="title" face="Arial">
+ <color>#ffff00</color>
+ <dropcolor>#000000</dropcolor>
+ <size>24</size>
+ <shadow>3,3</shadow>
+ <bold>yes</bold>
+ </font>
+
+ <font name="time" face="Arial">
+ <color>#9999cc</color>
+ <size>18</size>
+ <bold>yes</bold>
+ </font>
+
+ <font name="label" face="Arial">
+ <color>#ffff00</color>
+ <dropcolor>#000000</dropcolor>
+ <size>18</size>
+ <shadow>3,3</shadow>
+ <bold>yes</bold>
+ </font>
+
+ <font name="info" face="Arial">
+ <color>#ffffff</color>
+ <size>18</size>
+ <bold>yes</bold>
+ </font>
+
+ <font name="biginfo" face="Arial">
+ <color>#ffffff</color>
+ <size>50</size>
+ <bold>yes</bold>
+ </font>
+ <font name="warning" face="Arial">
+ <color>#ff0000</color>
+ <dropcolor>#000000</dropcolor>
+ <size>16</size>
+ <shadow>2,2</shadow>
+ <bold>yes</bold>
+ </font>
+
+ <font name="buttons" face="Arial">
+ <color>#ffff00</color>
+ <size>14</size>
+ <bold>yes</bold>
+ </font>
+
+ <container name="main_display">
+ <area>0,0,800,600</area>
+
+ <textarea name="title" draworder="0" align="center">
+ <multiline>no</multiline>
+ <font>title</font>
+ <area>50,40,700,40</area>
+ <value></value>
+ </textarea>
+
+ <!--
+ time
+ -->
+ <textarea name="time_text" draworder="0" align="right">
+ <multiline>no</multiline>
+ <font>time</font>
+ <area>660,520,110,30</area>
+ <value></value>
+ </textarea>
+
+ <textarea name="date_text" draworder="0" align="center">
+ <multiline>no</multiline>
+ <font>time</font>
+ <area>0,60,800,70</area>
+ <value></value>
+ </textarea>
+
+ <!--
+ current myth status
+ -->
+
+ <textarea name="status_text" draworder="1" align="center">
+ <multiline>yes</multiline>
+ <font>info</font>
+ <area>20,70,760,60</area>
+ <value>MythTV is idle and will shutdown shortly.</value>
+ </textarea>
+
+ <!--
+ current recordings status
+ -->
+
+ <textarea name="recording_label" draworder="1" align="center">
+ <font>label</font>
+ <area>20,110,760,30</area>
+ <!--<value>Percent Complete </value>-->
+ <value></value>
+ </textarea>
+
+ <textarea name="recording_text" draworder="1" align="hcenter">
+ <multiline>yes</multiline>
+ <font>biginfo</font>
+ <area>20,110,760,150</area>
+ <value></value>
+ </textarea>
+
+ <!--
+ next scheduled recording status
+ -->
+
+ <textarea name="scheduled_label" draworder="1" align="center">
+ <font>label</font>
+ <area>20,320,760,30</area>
+ <value></value>
+ </textarea>
+
+ <textarea name="scheduled_text" draworder="1" align="hcenter">
+ <multiline>yes</multiline>
+ <font>biginfo</font>
+ <area>20,400,760,120</area>
+ <value></value>
+ </textarea>
+
+ <!--
+ scheduled recordings conflict warning
+ -->
+
+ <textarea name="conflicts_text" draworder="1" align="center">
+ <font>warning</font>
+ <area>20,490,760,30</area>
+ <value>WARNING: There are conflicting scheduled recordings!</value>
+ </textarea>
+
+ <!--
+ start frontend button
+
+ <textbutton name="startfrontend_button" draworder="1">
+ <position>81,535</position>
+ <font>buttons</font>
+ <image function="on" filename="mw_text_button_on.png"></image>
+ <image function="off" filename="mw_text_button_off.png"></image>
+ <image function="pushed" filename="mw_text_button_pushed.png"></image>
+ </textbutton>
+
+ -->
+
+ </container>
+
+ </window>
+
+</mythuitheme>
diff --git a/abs/mv-core/MythVantage-config/build_diskless.sh b/abs/mv-core/MythVantage-config/build_diskless.sh
new file mode 100755
index 0000000..c6cce57
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/build_diskless.sh
@@ -0,0 +1,162 @@
+#!/bin/bash
+#CD=/mnt/cd
+. /etc/profile
+. /etc/systemconfig
+current_hostname=`hostname`
+echo $@ > /tmp/diskless_build.call
+TFTP=/data/srv/tftp
+CD=/data/srv/tftp/live
+DESTCD=/data/srv/tftp/CD
+BASE=/data/srv/tftp/masterbuild
+
+MODULES=$DESTCD/MythVantage/base/
+#only supports eth0 at this point
+myip=`ifconfig | grep 'inet addr:'| grep -v '127.0.0.1' | cut -d: -f2 | awk '{ print $1}'|head -n1`
+SRCFILES=$BASE/.livesys/medium
+
+function log () {
+echo $1
+}
+
+function check_xvfb () {
+export DISPLAY=127.0.0.1:25
+ Xvfb -ac :25 &
+
+}
+
+
+function create_base_image() {
+echo $SRCFILES
+if [ -f $SRCFILES/system.sqf ]
+then
+ mkdir $HOST_IMG_DIR
+ cd $SRCFILES
+ echo "Creating image..." > $BASE/tmp/.install_state
+ echo "Transferring system"
+ unsquashfs -i -f -d \/$HOST_IMG_DIR $DESTCD/system.sqf
+
+ for i in sys proc dev tmp
+ do
+ mkdir /$HOST_IMG_DIR/$i
+ done
+
+ chmod 777 /$HOST_IMG_DIR/tmp
+ mknod /$HOST_IMG_DIR/dev/null c 1 3
+ mknod /$HOST_IMG_DIR/dev/null c 1 5
+ mknod /$HOST_IMG_DIR/dev/console c 5 1
+ chmod +s /$HOST_IMG_DIR/usr/bin/Xorg
+ chmod +s /$HOST_IMG_DIR/usr/bin/crontab
+ chmod +s /$HOST_IMG_DIR/usr/bin/sudo
+ chmod +s /$HOST_IMG_DIR/bin/mount
+ echo "configuring boot" > $BASE/tmp/.install_state
+ sed -ie 's/^MODULES=.*$/MODULES="nfs"/g' $HOST_IMG_DIR/etc/mkinitcpio.conf
+ sed -ie 's/^HOOKS=.*$/HOOKS="base net udev autodetect pata scsi sata filesystems"/g' $HOST_IMG_DIR/etc/mkinitcpio.conf
+ #chroot $DEST mkinitcpio -p kernel26
+ #copy fstab from masterbuild
+ cp -f $BASE/etc/fstab /$HOST_IMG_DIR/etc/fstab
+ echo "Done: installing data" > $BASE/tmp/.install_state
+ return 0
+else
+ echo "Error: no modules" > $BASE/tmp/.install_state
+ log "couldn't find modules to install"
+ return 1
+fi
+}
+
+function configure_image () {
+ echo "Configuring system" > $BASE/tmp/.install_state
+ cp -f $BASE/etc/systemconfig $HOST_IMG_DIR/etc/systemconfig
+ chown root:mythtv $HOST_IMG_DIR/etc/systemconfig
+ chmod 775 "$HOST_IMG_DIR" /etc/systemconfig
+ cp /etc/mtab $HOST_IMG_DIR/etc/mtab
+ mount --bind /dev $HOST_IMG_DIR/dev
+# mount --bind /dev/pts $HOST_IMG_DIR/dev/pts
+ mount --bind /proc $HOST_IMG_DIR/proc
+ mount --bind /sys $HOST_IMG_DIR/sys
+
+ chroot "$HOST_IMG_DIR" $MV_ROOT/bin/systemconfig.sh misc,hostype,network,this_is_install,NETINSTALL
+#copy syssettings template to here.
+ SE=$BASE$TEMPLATES/settings/syssettings
+ mkdir -p $HOST_IMG_DIR/$TEMPLATES/settings/syssettings
+ cp -rp $SE/* ${HOST_IMG_DIR}/$TEMPLATES/settings/syssettings
+ chown root:mythtv $HOST_IMG_DIR/etc/systemconfig
+ chown -R mythtv:mythtv $HOST_IMG_DIR/$TEMPLATES/settings/syssettings
+ chmod -R 775 $HOST_IMG_DIR/$TEMPLATES/settings/syssettings
+#update remotedb with this host settings
+ OLDDISPLAY=$DISPLAY
+ check_xvfb
+ echo "Running MythVantage to restore settings"
+ DISPLAY=$DISPLAY HOME=/root chroot $HOST_IMG_DIR $MV_ROOT/bin/MythVantage -t restore,default_1
+ chroot $HOST_IMG_DIR $MV_ROOT/bin/restore_default_settings.sh -c restore -t syssettings
+ if [ ! $? = 0 ]
+ then
+ touch $mountpoint/tmp/.dbsysfailed
+ chmod 777 $mountpoint/tmp/.dbsysfailed
+ else
+ #Run second time
+ chroot "$HOST_IMG_DIR" $MV_ROOT/bin/systemconfig.sh misc,hostype,network,this_is_install,NETINSTALL
+ chroot "$HOST_IMG_DIR" $MV_ROOT/bin/restore_default_settings.sh -c ACCESSCONTROL
+ fi
+chroot "$HOST_IMG_DIR" $MV_ROOT/bin/systemconfig.sh advanced,this_is_install,NETINSTALL
+cp -f $BASE/etc/X11/xorg.conf $HOST_IMG_DIR/etc/X11/xorg.conf
+echo "Done" > $BASE/tmp/.install_state
+DISPLAY=$OLDDISPLAY
+#umount $HOST_IMG_DIR/dev/pts
+umount $HOST_IMG_DIR/dev
+#umount $HOST_IMG_DIR/dev/pts
+#umount $HOST_IMG_DIR/dev
+umount $HOST_IMG_DIR/proc
+umount $HOST_IMG_DIR/sys
+#umount $HOST_IMG_DIR/sys
+
+#cp /tmp/mythvantage_install.log $HOST_IMG_DIR/var/log/
+}
+
+function create_tftp_boot () {
+
+ CFGFILE=$TFTP/pxelinux.cfg/01-$2
+ echo "DEFAULT mythfe" > $CFGFILE
+ echo "LABEL mythfe" >> $CFGFILE
+ echo "kernel masterbuild/boot/vmlinuz26" >> $CFGFILE
+ echo "append vga=normal root=/dev/nfs rw netboot nfsroot=$myip:/data/srv/tftp/$1 ip=dhcp init=/sbin/runit initrd=masterbuild/boot/kernel26.img" >> $CFGFILE
+ echo "TIMEOUT 2" >> $CFGFILE
+}
+
+function create_nfs_export () {
+grep -q "/data/srv/tftp/$1" /etc/exports
+status=$?
+if [ ! $status = 0 ]
+then
+ echo "adding $1 to nfs exports"
+ echo "/data/srv/tftp/$1 *(rw,no_root_squash,anonuid=1000,anongid=1000) " >> /etc/exports
+ exportfs -arv
+fi
+
+}
+
+#-------------------------------------------------------------------------------MAIN PROGRAM ---------------------------------------------------------------------
+if [ x$1 = x -o x$2 = x ]
+then
+ echo "usage: hostname macaddress"
+ echo "example: Love 00-0C-29-E6-8A-A9"
+ exit 1
+fi
+
+image_name=$1
+mac_address=`echo $2| tr "[:upper:]" "[:lower:]"`
+
+echo "using image_name of $image_name"
+echo "using mac_address of $mac_address"
+
+HOST_IMG_DIR=$TFTP/$1
+
+create_base_image $image_name
+configure_image
+hostname $current_hostname
+umount $HOST_IMG_DIR/dev
+create_tftp_boot $image_name $mac_address
+create_nfs_export $image_name
+
+echo "Finshed!"
+#create_dhcp_entry $mac_address
+
diff --git a/abs/mv-core/MythVantage-config/builddir b/abs/mv-core/MythVantage-config/builddir
new file mode 100644
index 0000000..7f0bd78
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/builddir
@@ -0,0 +1 @@
+cd ../../multimedia/mythsvn/mythtv/mythtv-svn/src/mythtv/programs/mythinstall
diff --git a/abs/mv-core/MythVantage-config/copy-back.sh b/abs/mv-core/MythVantage-config/copy-back.sh
new file mode 100755
index 0000000..1c92d89
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/copy-back.sh
@@ -0,0 +1,8 @@
+#!/bin/bash
+DATADIR="../../../local/multimedia/mythtv/trunk/mythtv-svn/src/mythtv/programs/"
+PRGDIR="../../../../../../../system/live-installer/"
+#cd $DATADIR
+#ln -s $PRGDIR/mythinstall-src mythinstall
+#cd -
+cp -rp $DATADIR/mythinstall/* mythinstall-src/
+cp -rp $DATADIR/mythbeselect/* mythbeselect-src
diff --git a/abs/mv-core/MythVantage-config/copy-to-mythbase.sh b/abs/mv-core/MythVantage-config/copy-to-mythbase.sh
new file mode 100755
index 0000000..a0d2ad0
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/copy-to-mythbase.sh
@@ -0,0 +1,12 @@
+#!/bin/bash
+#DATADIR="../../multimedia/mythtv/trunk/mythtv-svn/src/mythtv/programs"
+DATADIR="../../multimedia/mythtv/release_fixes/mythtv-release-fixes/src/mythtv/programs"
+mkdir $DATADIR/mythinstall
+mkdir $DATADIR/mythbeselect
+rm mythinstall.bin
+rm mythbeselect.bin
+ln -n `pwd`/mythinstall/* $DATADIR/mythinstall
+ln -n `pwd`/mythbeselect/* $DATADIR/mythbeselect
+
+ln -s $DATADIR/mythbeselect/mythbeselect ./mythbeselect.bin
+ln -s $DATADIR/mythinstall/mythinstall ./mythinstall.bin
diff --git a/abs/mv-core/MythVantage-config/create_master.sh b/abs/mv-core/MythVantage-config/create_master.sh
new file mode 100755
index 0000000..b7b7648
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/create_master.sh
@@ -0,0 +1,104 @@
+#!/bin/bash
+CD=/media/cdrom
+#CD=/data/srv/tftp/live
+DESTCD=/data/srv/tftp/CD
+DEST=/data/srv/tftp/masterbuild
+#MODULES=$DESTCD/MythVantage/base/
+
+#ONLY SUPPORTS ETH0
+myip=`ifconfig | grep 'inet addr:'| grep -v '127.0.0.1' | cut -d: -f2 | awk '{ print $1}'|head -n1`
+if [ x$myip = x ]
+then
+ echo "couldn't find a ipaddress to use for NFS server"
+fi
+
+
+mkdir -p $DESTCD
+mkdir -p $DEST
+
+mount $CD
+status=0
+if [ -f $CD/system.sqf ]
+then
+ status=0
+else
+ status=1
+ echo "couldn't find system.sqf"
+ exit 1
+fi
+
+if [ x$status = x0 ]
+then
+ echo "copying to disk"
+ cp -rvp $CD/*.sqf $DESTCD
+ cp -rvp $CD/overlay.ovl $DESTCD
+ echo "creating master copy at $DESTCD"
+ unsquashfs -f -d /$DEST $DESTCD/system.sqf
+ cd $DEST
+ lzop -d < $DESTCD/overlay.ovl |tar -xf -
+ cp -rp overlay/etc/* etc/
+ cd -
+
+ for i in sys proc dev tmp
+ do
+ mkdir $DEST/$i
+ done
+ chmod 777 /$DEST/tmp
+ mknod $DEST/dev/null c 1 3
+ mknod $DEST/dev/null c 1 5
+ mknod $DEST/dev/console c 5 1
+ chmod +s $DEST/usr/bin/Xorg
+ chmod +s $DEST/usr/bin/crontab
+ chmod +s $DEST/usr/bin/sudo
+ chmod +s $DEST/bin/mount
+fi
+
+if [ ! -f $DEST/etc/fstab.bak ]
+then
+ cp $DEST/etc/fstab $DEST/etc/fstab.bak
+fi
+
+tac $DEST/etc/fstab.bak|tail +4|tac > $DEST/etc/fstab
+echo "$myip:/data/srv/tftp/masterbuild / nfs" >> $DEST/etc/fstab
+
+grep -q "/data/srv/tftp/masterbuild" /etc/exports
+status=$?
+if [ ! $status = 0 ]
+then
+ echo "adding masterbuild to nfs exports"
+ echo "/data/srv/tftp/masterbuild *(rw,no_root_squash,anonuid=1000,anongid=1000)" >> /etc/exports
+ exportfs -arv
+fi
+
+echo "configuring the kernel"
+sed -ie 's/^MODULES=.*$/MODULES="nfs"/g' $DEST/etc/mkinitcpio.conf
+sed -ie 's/^HOOKS=.*$/HOOKS="base net udev autodetect pata scsi sata filesystems"/g' $DEST/etc/mkinitcpio.conf
+chroot $DEST mkinitcpio -p kernel26
+
+#change rc.local for masterbuild
+cd $DEST/etc
+patch <<EOF
+--- rc.local.orig 2008-09-27 09:17:42.000000000 -0500
++++ rc.local 2008-09-27 09:21:47.000000000 -0500
+@@ -2,6 +2,9 @@
+ . /etc/profile
+ . ${MV_ROOT}/bin/install_functions.sh
+ #install initial database
++rm -f /etc/sysconfig
++mysql -c "drop database mythconverg"
++pacman -R --noconfirm mythdb-initial 2>/dev/null
+ pacman -S --noconfirm mythdb-initial 2>/dev/null
+
+ init_network
+
+EOF
+
+cd -
+
+
+
+echo "copy in modules for net install"
+#copy in the modules/.livesys/medium/system.sqf
+mkdir -p $DEST/.livesys/medium
+cp $DESTCD/* $DEST/.livesys/medium/
+
diff --git a/abs/mv-core/MythVantage-config/install-ui.xml b/abs/mv-core/MythVantage-config/install-ui.xml
new file mode 100755
index 0000000..8cebd11
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/install-ui.xml
@@ -0,0 +1,175 @@
+<!--
+
+ This is a myth style theme file for mythwelcome
+
+ (c) 2005 by a whole bunch of people associated with MythTV
+
+-->
+<mythuitheme>
+
+ <window name="welcome_screen">
+
+ <!--
+
+ First, define all the fonts we need on this screen
+
+ -->
+ <font name="title" face="Arial">
+ <color>#ffff00</color>
+ <dropcolor>#000000</dropcolor>
+ <size>24</size>
+ <shadow>3,3</shadow>
+ <bold>yes</bold>
+ </font>
+
+ <font name="time" face="Arial">
+ <color>#9999cc</color>
+ <size>18</size>
+ <bold>yes</bold>
+ </font>
+
+ <font name="label" face="Arial">
+ <color>#ffff00</color>
+ <dropcolor>#000000</dropcolor>
+ <size>18</size>
+ <shadow>3,3</shadow>
+ <bold>yes</bold>
+ </font>
+
+ <font name="info" face="Arial">
+ <color>#ffffff</color>
+ <size>18</size>
+ <bold>yes</bold>
+ </font>
+
+ <font name="biginfo" face="Arial">
+ <color>#ffffff</color>
+ <size>50</size>
+ <bold>yes</bold>
+ </font>
+ <font name="warning" face="Arial">
+ <color>#ff0000</color>
+ <dropcolor>#000000</dropcolor>
+ <size>16</size>
+ <shadow>2,2</shadow>
+ <bold>yes</bold>
+ </font>
+
+ <font name="buttons" face="Arial">
+ <color>#ffff00</color>
+ <size>14</size>
+ <bold>yes</bold>
+ </font>
+ <font name="tinyinfo" face="Arial">
+ <color>#9999cc</color>
+ <size>12</size>
+ <bold>no</bold>
+ </font>
+
+ <container name="main_display">
+ <area>0,0,800,600</area>
+
+ <textarea name="title" draworder="0" align="center">
+ <multiline>no</multiline>
+ <font>title</font>
+ <area>50,40,700,40</area>
+ <value>Welcome to MythVantage! </value>
+ </textarea>
+
+ <!--
+ time
+ -->
+ <textarea name="time_text" draworder="0" align="right">
+ <multiline>no</multiline>
+ <font>time</font>
+ <area>660,520,110,30</area>
+ <value></value>
+ </textarea>
+
+ <textarea name="date_text" draworder="0" align="hcenter">
+ <multiline>yes</multiline>
+ <font>time</font>
+ <area>20,75,740,100</area>
+ <value></value>
+ </textarea>
+
+ <!--
+ current myth status
+ -->
+
+ <textarea name="status_text" draworder="1" align="center">
+ <multiline>yes</multiline>
+ <font>info</font>
+ <area>20,100,760,60</area>
+ <value>MythTV is idle and will shutdown shortly.</value>
+ </textarea>
+
+ <!--
+ current recordings status
+ -->
+
+ <textarea name="recording_label" draworder="1" align="center">
+ <font>label</font>
+ <area>20,140,760,30</area>
+ <!--<value>Percent Complete </value>-->
+ <value></value>
+ </textarea>
+
+ <textarea name="recording_text" draworder="1" align="hcenter">
+ <multiline>yes</multiline>
+ <font>biginfo</font>
+ <area>20,140,760,150</area>
+ <value></value>
+ </textarea>
+
+ <!--
+ next scheduled recording status
+ -->
+
+ <textarea name="scheduled_label" draworder="1" align="center">
+ <font>label</font>
+ <area>20,320,760,30</area>
+ <value></value>
+ </textarea>
+
+ <textarea name="scheduled_text" draworder="1" align="hcenter">
+ <multiline>yes</multiline>
+ <font>biginfo</font>
+ <area>20,400,760,120</area>
+ <value></value>
+ </textarea>
+
+ <textarea name="mythvantage_text" draworder="1" align="right">
+ <multiline>no</multiline>
+ <font>tinyinfo</font>
+ <area>20,560,760,30</area>
+ <value></value>
+ </textarea>
+ <!--
+ scheduled recordings conflict warning
+ -->
+
+ <textarea name="conflicts_text" draworder="1" align="center">
+ <font>warning</font>
+ <area>20,490,760,30</area>
+ <value>WARNING: There are conflicting scheduled recordings!</value>
+ </textarea>
+
+ <!--
+ start frontend button
+
+ <textbutton name="startfrontend_button" draworder="1">
+ <position>81,535</position>
+ <font>buttons</font>
+ <image function="on" filename="mw_text_button_on.png"></image>
+ <image function="off" filename="mw_text_button_off.png"></image>
+ <image function="pushed" filename="mw_text_button_pushed.png"></image>
+ </textbutton>
+
+ -->
+
+ </container>
+
+ </window>
+
+</mythuitheme>
diff --git a/abs/mv-core/MythVantage-config/install_db_chroot.sh b/abs/mv-core/MythVantage-config/install_db_chroot.sh
new file mode 100755
index 0000000..15b6a20
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/install_db_chroot.sh
@@ -0,0 +1,51 @@
+#!/bin/bash
+. /etc/profile
+. /etc/systemconfig
+#myhost=`cat /etc/hostname`
+myhost=$hostname
+hostname $myhost
+mount -t proc none /proc
+pacman --noconfirm -Sf mysql
+/etc/rc.d/mysqld
+
+status=1
+mysqlstatus=1
+while [ ! $status = 0 ]
+do
+ /etc/rc.d/mysqld stop
+ sleep 1
+ /etc/rc.d/mysqld start
+ mysqlstatus=$?
+ if [ $mysqlstatus = 0 ]
+ then
+ mysql -e "show databases;"
+ showstatus=$?
+ if [ $showstatus = 0 ]
+ then
+ pacman --noconfirm -R mythdb-initial
+ pacman --noconfirm -S mythdb-initial
+ $MV_ROOT/bin/restore_default_settings.sh -c load
+ DISPLAY=127.0.0.1:0 $MV_ROOT/bin/MythVantage -t restore,default_1
+ $MV_ROOT/bin/restore_default_settings.sh -c restore -t syssettings
+ $MV_ROOT/bin/systemconfig.sh misc,hostype,this_is_install
+ if [ $SystemType = "Master_backend" ]
+ then
+ $MV_ROOT/bin/restore_default_settings.sh -c BECONFIG -s master -a $dbhost
+ fi
+ #update database to allow user jobs on this host.
+ $MV_ROOT/bin/restore_default_settings.sh -c USERJOBALLOW
+ $MV_ROOT/bin/restore_default_settings.sh -c ACCESSCONTROL
+ if [ -d /data/srv/mysql/mythconverg ]
+ then
+ pacman --noconfirm -R webcalendar
+ pacman --noconfirm --nodeps -S webcalendar
+ status=0
+ fi
+ fi
+ fi
+done
+#/etc/rc.d/mysqld stop
+#umount /proc
+
+
+
diff --git a/abs/mv-core/MythVantage-config/install_functions.sh b/abs/mv-core/MythVantage-config/install_functions.sh
new file mode 100755
index 0000000..cf247cb
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/install_functions.sh
@@ -0,0 +1,479 @@
+#!/bin/bash
+. /etc/profile
+disk=$2
+mountpoint=new_boot
+
+#-------------------------------------------
+MYTHDBUSER=mythtv
+MYTHTVPASSWD=mythtv
+CMDLINE=$(cat /proc/cmdline)
+hostname=`hostname`
+MYSQLCMD_C="mysql -u$MYTHDBUSER -p$MYTHTVPASSWD mythconverg -B --exec"
+BASE=""
+
+function update_db_settings () {
+
+ $MYSQLCMD_C "delete from settings where value='${1}' and hostname=\"$hostname\";"
+ $MYSQLCMD_C "REPLACE INTO settings set value='${1}', data='${2}' , hostname=\"$hostname\";"
+}
+
+function random_theme () {
+THEMES="basic-blue
+basic-green
+basic-red
+basic-purple
+basic-amber"
+
+theme=($THEMES) # Read into array variable.
+
+num_themes=${#theme[*]} # Count how many elements.
+
+pick=${theme[$((RANDOM%num_themes))]}
+echo "Selected $pick as the theme"
+update_db_settings Theme "$pick"
+}
+
+
+function setupremote {
+ mv $BASE/etc/lircd.conf $BASE/etc/lircd.conf.`date +%Y-%m-%d-%H-%M`
+ if [ -d $TEMPLATES/remotes/$Remotetype ]
+ then
+ cd $TEMPLATES/remotes/$Remotetype
+ for i in lircd*
+ do
+ cat $i >> $BASE/etc/lircd.conf
+ done
+ cp lircrc $BASE/etc/lircrc
+ chmod 755 /etc/lircrc
+ update_db_settings HostRemoteType "$Remotetype"
+ /usr/sbin/lircd -d /dev/lirc0
+ mkdir /root/.mythtv
+ ln -s /etc/lircrc /root/.mythtv/lircrc
+ fi
+}
+
+function scan_for_usb_remote () {
+echo "Scanning for usb receiver/remote"
+while read line
+do
+ USBID=`echo "$line"|cut -f1`
+ lsusb -d "$USBID" > /dev/null 2>/dev/null
+ if [ $? = 0 ]
+ then
+ Remotetype=`echo "$line"|cut -f2`
+ echo "found $Remotetype"
+ setupremote
+ break
+ fi
+done <$BASE/$TEMPLATES/remotes/receiver_usb.id
+}
+
+function rest_of_network () {
+ #netmask
+ echo $CMDLINE | grep -q netmask
+ if [ $? = 0 ]
+ then
+ TEMPVAR=${CMDLINE#*netmask=}
+ NETMASK=${TEMPVAR%% *}
+ /sbin/ifconfig eth0 $IP netmask $NETMASK
+ nm=`/usr/bin/nmconv.py -obits $NETMASK`
+ NETMASK="/$nm $NETMASK"
+ echo $NETMASK
+ update_db_settings HostNETMASK${MYTHDEFAULT} "$NETMASK"
+ else
+ echo "netmask not found"
+ fi
+ #gateway
+ echo $CMDLINE | grep -q gateway
+ if [ $? = 0 ]
+ then
+ TEMPVAR=${CMDLINE#*gateway=}
+ GATEWAY=${TEMPVAR%% *}
+ /sbin/route add default gw $GATEWAY
+ update_db_settings HostGW${MYTHDEFAULT} "$GATEWAY"
+
+ else
+ echo "gateway not found"
+ fi
+
+ #dns
+ echo $CMDLINE | grep -q dns
+ if [ $? = 0 ]
+ then
+ TEMPVAR=${CMDLINE#*dns=}
+ DNS=${TEMPVAR%% *}
+ echo "nameserver $DNS" >> /etc/resolv.conf
+ update_db_settings HostDNS${MYTHDEFAULT} "$DNS"
+ else
+ echo "DNS not found"
+ fi
+}
+
+function init_network {
+ echo $CMDLINE |grep -q netdev
+ if [ $? = 0 ]
+ then
+ TEMPVAR=${CMDLINE#*netdev=}
+ MYTHDEFAULT=${TEMPVAR%% *}
+ else
+ MYTHDEFAULT="eth0"
+ fi
+
+
+
+ echo $CMDLINE | grep -q ip
+ if [ $? = 0 ]
+ then
+ update_db_settings HostDefaulteth0 0
+ update_db_settings HostDefault${MYTHDEFAULT} 1
+
+ update_db_settings HostActiveonbooteth0 0
+ update_db_settings HostActiveonboot${MYTHDEFAULT} 1
+ update_db_settings HostNetDevice ${MYTHDEFAULT}
+
+ TEMPVAR=${CMDLINE#*ip=}
+ IP=${TEMPVAR%% *}
+ if [ x$IP = xdhcp ]
+ then
+ /sbin/dhcpcd $MYTHDEFAULT
+ update_db_settings HostUseDHCP${MYTHDEFAULT} 0
+ else
+ /sbin/ifconfig ${MYTHDEFAULT} $IP
+ update_db_settings HostUseDHCP${MYTHDEFAULT} 1
+ update_db_settings HostIP${MYTHDEFAULT} "$IP"
+ rest_of_network
+ fi
+ fi
+}
+
+function init_remote {
+ echo $CMDLINE | grep -q remoteport
+ if [ $? = 0 ]
+ then
+ TEMPVAR=${CMDLINE#*remoteport=}
+ REMOTEPORT=${TEMPVAR%% *}
+ if [ x"$ReceiverType" = "xSerial" ]
+ then
+ if [ -e /dev/$REMOTEPORT ]
+ then
+ /usr/bin/setserial /dev/$REMOTEPORT uart none
+ /sbin/modprobe lirc_serial
+ update_db_settings HostReceiverType Serial
+ update_db_settings HostSerialPortlirc "$REMOTEPORT"
+ fi
+ fi
+
+ fi
+
+ echo $CMDLINE | grep -q remote
+ if [ $? = 0 ]
+ then
+ TEMPVAR=${CMDLINE#*remote=}
+ Remotetype=${TEMPVAR%% *}
+ setupremote
+ else
+ scan_for_usb_remote
+ fi
+}
+
+#-----------------------
+
+#set -x
+
+partition_it () {
+ROOT=$1
+DATA=$2
+SWAP=$3
+
+if [ ! x$SWAP = xNO ]
+ then
+ SWAPLINE=",$SWAP,S"
+ MKSWAPCMD="mkswap /dev/${disk}2"
+ else
+ SWAPLINE=",0,0"
+ MKSWAPCMD=""
+ fi
+
+if [ x$DATA = xALL ]
+then
+ DATALINE=",,,"
+ EXTRALINE=""
+else
+ DATALINE=",$DATA,,"
+ EXTRALINE=",0,,"
+fi
+sfdisk /dev/$disk -uM << EOF
+,$1,,*
+$SWAPLINE
+$DATALINE
+$EXTRALINE
+;
+EOF
+
+$MKSWAPCMD
+#sfdisk -l /dev/$disk
+}
+
+
+function fscmd () {
+
+case $1 in
+ reiserfs) FSCMDC="mkreiserfs -q -l ROOT"
+ ;;
+
+ xfs) FSCMDC="mkfs -t $1 -f"
+ ;;
+ ext3) FSCMDC="mkfs.ext3"
+ ;;
+ jfs) FSCMDC="mkfs.jfs -q "
+ ;;
+ *) FSCMDC="echo $1"
+ ;;
+
+esac
+}
+
+format_it () {
+ fscmd $1
+ $FSCMDC /dev/${disk}1| tr -s [:cntrl:] \\n
+ fscmd $2
+ $FSCMDC /dev/${disk}3| tr -s [:cntrl:] \\n
+}
+
+mount_it () {
+ if [ ! -d \/$mountpoint ]
+ then
+ mkdir \/$mountpoint
+ fi
+ mount /dev/${disk}1 \/$mountpoint
+ mkdir \/$mountpoint/data
+ mount /dev/${disk}3 \/$mountpoint/data
+}
+
+unmount_it () {
+ umount /dev/${disk}1
+ umount /dev/${disk}3
+}
+
+#linux-live version of copy_it
+# copy_it () {
+# #rsync -rvp --exclude=/mnt --exclude=\/$mountpoint / \/$mountpoint
+# lzmdir=`find /mnt/live/mnt -name data.lzm -execdir pwd \;| tail -1`
+# cd $lzmdir
+# if [ x$1 = xALL ]
+# then
+# LIST=`ls *.lzm`
+# else
+# LIST=`echo $1 | tr , " " `
+# fi
+#
+# for i in $LIST
+# do
+# echo "Transferring $i"
+# lzm2dir $i \/$mountpoint
+# done
+# for i in sys proc dev tmp
+# do
+# mkdir /$mountpoint/$i
+#
+# done
+# chmod 777 /$mountpoint/tmp
+# mknod /$mountpoint/dev/null c 1 3
+# mknod /$mountpoint/dev/null c 1 5
+# mknod /$mountpoint/dev/console c 5 1
+# chmod +s /$mountpoint/usr/bin/Xorg
+# chmod +s /$mountpoint/usr/bin/crontab
+# chmod +s /$mountpoint/usr/bin/sudo
+# chmod +s /$mountpoint/bin/mount
+#
+# }
+
+copy_it () {
+
+ if [ x$1 = xALL ]
+ then
+ echo "Transferring system"
+ unsquashfs -f -d /$mountpoint /.livesys/medium/system.sqf
+ else
+ echo "Upgrading system"
+ unsquashfs -e $1 -f -d /$mountpoint /.livesys/medium/system.sqf
+ fi
+
+ for i in sys proc dev tmp
+ do
+ mkdir /$mountpoint/$i
+
+ done
+ chmod 777 /$mountpoint/tmp
+ mknod /$mountpoint/dev/null c 1 3
+ mknod /$mountpoint/dev/null c 1 5
+ mknod /$mountpoint/dev/console c 5 1
+ chmod +s /$mountpoint/usr/bin/Xorg
+ chmod +s /$mountpoint/usr/bin/crontab
+ chmod +s /$mountpoint/usr/bin/sudo
+ chmod +s /$mountpoint/bin/mount
+
+}
+
+
+device_node () {
+ cd /dev
+ mknod hda b 3 0
+ mknod hda1 b 3 1
+ mknod hda2 b 3 2
+ mknod hda3 b 3 3
+ mknod hda4 b 3 4
+ mknod hda5 b 3 5
+ mknod hda6 b 3 6
+ mknod hda7 b 3 7
+ mknod hda8 b 3 8
+ mknod sda b 8 0
+ mknod sda1 b 8 1
+ mknod sda2 b 8 2
+ mknod sda3 b 8 3
+ mknod sda4 b 8 4
+ mknod sda5 b 8 5
+ mknod sda6 b 8 6
+ mknod sda7 b 8 7
+ mknod sda8 b 8 8
+ mknod sdb b 8 16
+ mknod sdb1 b 8 17
+ mknod sdb2 b 8 18
+ mknod sdb3 b 8 19
+ mknod sdb4 b 8 20
+ mknod sdb5 b 8 21
+ mknod sdb6 b 8 22
+ mknod sdb7 b 8 23
+ mknod sdb8 b 8 24
+ cd -
+ }
+
+
+function create_fstab()
+{
+echo "creating fstab"
+cat > /$mountpoint/etc/fstab << EOF
+# <file system> <dir> <type> <options> <dump> <pass>
+none /dev/pts devpts defaults 0 0
+none /dev/shm tmpfs defaults 0 0
+/dev/cdrom /media/cdrom auto ro,user,noauto,unhide 0 0
+/dev/dvd /media/dvd auto ro,user,noauto,unhide 0 0
+UUID=ROOTUID / auto defaults 0 1
+UUID=DATAUID /data auto defaults 0 1
+UUID=SWAPUID swap swap defaults 0 0
+EOF
+
+
+}
+
+
+function find_uuid() {
+ uuid=`blkid -s UUID /dev/$1 |cut -d= -f2|cut -d\" -f2`
+ echo $uuid for $1
+ FOUNDUUID=$uuid
+
+}
+
+
+case $1 in
+ partition_it )
+ #drive ROOT DATA(ALL) SWAP(NO)
+ for i in `mount | grep $disk | awk ' { print $1 } '`
+ do
+ umount $i
+ done
+ swap=`cat /etc/fstab |grep $disk|grep swap|awk ' { print $1 } '`
+ swapoff $swap
+ partition_it $3 $4 $5
+ exit 0
+
+ ;;
+ format_it )
+ device_node
+
+ format_it $3 $4
+ exit 0
+ ;;
+ mount_it )
+ mount_it
+ ;;
+ copy_it )
+ copy_it $3
+
+ ;;
+
+
+ fstab_fix_it)
+ echo $@ >> /tmp/fstab.input
+ if [ ! -f /$mountpoint/etc/fstab ]
+ then
+ create_fstab
+ fi
+
+ if [ x$3 = xUPGRADE ]
+ then
+ echo "copying old fstab"
+ cp -f /tmp/etc/fstab /$mountpoint/etc/fstab
+ FOUNDUUID=""
+ find_uuid ${2}1
+ ROOTUUID=$FOUNDUUID
+ sed -i -e "s/.*\/\ .*$/UUID=$ROOTUUID \/ auto defaults,noatime 0 1/g" /$mountpoint/etc/fstab
+ else
+ #search for UUID
+ FOUNDUUID=""
+ find_uuid ${2}1
+ ROOTUUID=$FOUNDUUID
+
+ echo "--"
+ echo $ROOTUUID
+ echo "--"
+
+ FOUNDUUID=""
+ find_uuid ${2}2
+ SWAPUUID=$FOUNDUUID
+
+ FOUNDUUID=""
+ find_uuid ${2}3
+ DATAUUID=$FOUNDUUID
+ sed -i -e "s/.*\/\ .*$/UUID=$ROOTUUID \/ auto defaults,noatime 0 1/g" /$mountpoint/etc/fstab
+ sed -i -e "s/.*\/data\ .*$/UUID=$DATAUUID \/data auto defaults,noatime 0 1/g" /$mountpoint/etc/fstab
+ sed -i -e "s/.*swap\ .*$/UUID=$SWAPUUID swap swap defaults 0/g" /$mountpoint/etc/fstab
+ fi
+
+ ;;
+
+ grub_it )
+ #linux-live
+ #grub-install --recheck --no-floppy --root-directory=/$mountpoint /dev/$disk
+ grub-install --recheck --no-floppy --root-directory=/$mountpoint "(hd0)"
+
+
+ #fixing fstab
+# if [ ! -f /$mountpoint/etc/fstab ]
+# then
+# cp -f /$mountpoint/etc/fstab.install /$mountpoint/etc/fstab
+# fi
+# sed -e s/hda/$disk/g /$mountpoint/etc/fstab > /tmp/newfstab
+# cp -f /tmp/newfstab /$mountpoint/etc/fstab
+
+ #fixing grub/menu.1st
+ FOUNDUUID=""
+ find_uuid ${disk}1
+ ROOTUUID=$FOUNDUUID
+# sed -e s/hda/$disk/g /$mountpoint/boot/grub/menu.lst > /tmp/menu.lst
+
+ sed -i -e "s/root=.\S*/root=\/dev\/disk\/by-uuid\/$ROOTUUID/g" /$mountpoint/boot/grub/menu.lst
+
+
+#cp -f /tmp/menu.lst /$mountpoint/boot/grub/menu.lst
+ #cp /etc/X11/xorg.conf /$mountpoint/etc/X11/xorg.conf
+ mkinitcpio -g /$mountpoint/boot/kernel26.img
+ ;;
+ umount_it)
+
+ umount \/$mountpoint/data
+ umount \/$mountpoint
+esac
+
+
+
diff --git a/abs/mv-core/MythVantage-config/install_proxy.sh b/abs/mv-core/MythVantage-config/install_proxy.sh
new file mode 100755
index 0000000..4f8e088
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/install_proxy.sh
@@ -0,0 +1,504 @@
+#!/bin/bash
+#chroot and /tmp
+MVHOSTNAME=mvi
+. /etc/profile
+TEMP_TEMPLATES=/tmp/templates
+disk=$2
+rootfs=$3
+rootsize=$4
+datafs=$5
+datasize=$6
+swapsize=$7
+mountpoint="/new_boot"
+run=$MV_ROOT/bin/install_functions.sh
+. /etc/systemconfig 2>/dev/null
+. $MV_ROOT/bin/networkconfig.sh
+CMDLINE=$(cat /proc/cmdline)
+
+#TEMPNET="Hostip"$default_interface
+#eval MYTHIP=\$${TEMPNET}
+
+
+progress () {
+mypercent=`echo "$1" | cut -d. -f1`
+if [ x$mypercent = x ]
+then
+echo "" > /tmp/.install_percent
+else
+echo "${mypercent}% complete" > /tmp/.install_percent
+fi
+
+
+}
+
+
+
+
+full_install () {
+ if [ -f /tmp/.this_is_upgrade ]
+ then
+ rm /tmp/.this_is_upgrade
+ fi
+ echo "Partitioning $disk" > /tmp/.install_state
+ progress 1
+ sleep 1
+ $run partition_it $disk $rootsize $datasize $swapsize
+
+ echo "Formating $disk" > /tmp/.install_state
+ progress 2
+ sleep 1
+ $run format_it $disk $rootfs $datafs
+
+ echo "Preparing $disk" > /tmp/.install_state
+ progress 3
+ sleep 1
+ $run mount_it $disk
+
+ startsize=`statgrab -M disk.|grep $disk.write_bytes|cut -d= -f 2|tr -d " "`
+
+ echo "STARTSIZE=$startsize">/tmp/.startsize.io
+ echo "Installing data" > /tmp/.install_state
+
+ sleep 1
+ $run copy_it $disk ALL
+ rm $mountpoint/etc/fstab
+ $run fstab_fix_it $disk $rootfs $datafs FULL_INSTALL
+
+ progress 99
+ sleep 1
+ $run grub_it $disk
+
+
+ echo "Configuring system" > /tmp/.install_state
+ progress 100
+ sleep 1
+ cp -f /etc/systemconfig "$mountpoint"/etc
+ #run save syssettings to save settings, then copy to new mountpoint
+ $MV_ROOT/bin/restore_default_settings.sh -c save -t syssettings -h $MVHOSTNAME -d 127.0.0.1
+ SE=$TEMPLATES/settings/syssettings
+ mkdir -p ${mountpoint}$SE
+ cp -rp $SE/* ${mountpoint}$SE/
+ chown root:mythtv "$mountpoint"/etc/systemconfig
+ chown -R mythtv:mythtv ${mountpoint}$SE
+
+ chmod -R 775 ${mountpoint}$SE
+ chmod 775 "$mountpoint"/etc/systemconfig
+ #copy over any updates that might have occured
+ cp -f $MV_ROOT/bin/*.sh "$mountpoint"$MV_ROOT/bin/
+ chmod -R 755 ${mountpoint}/root
+ cp /etc/mtab "$mountpoint"/etc/mtab
+
+
+ if [ $SystemType = "Master_backend" -o $SystemType = "Standalone" ]
+ then
+ #installing DB to local machine
+ #turn off old live database, so the chroot one can start
+ /etc/rc.d/mysqld stop
+ mount --bind /dev "$mountpoint/dev"
+ chroot "$mountpoint" "$MV_ROOT/bin/install_db_chroot.sh" > /tmp/chrootdb.out
+ chroot "$mountpoint" $MV_ROOT/bin/systemconfig.sh misc,hostype,network,advanced,this_is_install
+ echo "stopping mysql in chroot"
+ chroot "$mountpoint" /etc/rc.d/mysqld stop
+ umount "$mountpoint/dev"
+
+ #/etc/rc.d/mysqld start
+ else
+ #update remotedb with this host settings
+ chroot "$mountpoint" DISPLAY=127.0.0.1:0 /usr/local/bin/MythVantage -t restore,default_1
+ chroot "$mountpoint" $MV_ROOT/bin/restore_default_settings.sh -c restore -t syssettings
+ if [ ! $? = 0 ]
+ then
+ touch $mountpoint/tmp/.dbsysfailed
+ chmod 777 $mountpoint/tmp/.dbsysfailed
+ else
+ #Run second time
+ chroot "$mountpoint" $MV_ROOT/bin/systemconfig.sh misc,hostype,network,advanced,this_is_install
+ chroot "$mountpoint" $MV_ROOT/bin/restore_default_settings.sh -c ACCESSCONTROL
+ fi
+ fi
+ chroot "$mountpoint" $MV_ROOT/bin/systemconfig.sh advanced
+ echo "Done" > /tmp/.install_state
+ cp /tmp/mythvantage_install.log $mountpoint/var/log/
+ $run unmount_it $disk
+}
+
+function createsquashlist(){
+if [ -f $1 ]
+then
+ rm -f
+$1
+fi
+for i in bin boot etc home lib opt root sbin usr var
+do
+echo $i >> $1
+done
+
+
+}
+
+
+
+
+function upgrade () {
+ touch /tmp/.this_is_upgrade
+
+ if [ ! x$rootfs = "xDo_not_format" ]
+ then
+ echo "Formating $disk" > /tmp/.install_state
+ progress 2
+ sleep 1
+ $run format_it $disk $rootfs NO
+ fi
+ echo "Preparing $disk" > /tmp/.install_state
+ progress 3
+ sleep 1
+ $run mount_it $disk
+ startsize=`statgrab -M disk.|grep $disk.write_bytes|cut -d= -f 2|tr -d " "`
+ echo "STARTSIZE=$startsize">/tmp/.startsize.io
+ echo "Installing data" > /tmp/.install_state
+ sleep 1
+ cp -rf /tmp/etc /new_boot/etc.old
+ cp -rf /tmp/oss /new_boot/var/lib/oss.old
+ #$run copy_it $disk bin.lzm,boot.lzm,etc.lzm,home.lzm,lib.lzm,opt.lzm,root.lzm,sbin.lzm,usr.lzm,var.lzm
+ SQUASHLIST="/tmp/.squashlist"
+ createsquashlist $SQUASHLIST
+ $run copy_it $disk $SQUASHLIST
+ #copy back ssh keys
+
+ cp -rp /data/var/cache/pacman/pkg/* /new_boot/data/var/cache/pacman/pkg/
+ cp -fp /new_boot/etc.old/ssh/*.pub /new_boot/etc/ssh/
+ cp -fp /new_boot/etc.old/ssh/*.key /new_boot/etc/ssh/
+ cp -fp /new_boot/etc.old/ssh/*key /new_boot/etc/ssh/
+
+ #funckeys
+ cadir=/etc/pki/func/ca
+ mv /new_boot/etc/pki /new_boot/etc/pki.new
+ cp -rp /new_boot/etc.old/pki /new_boot/etc/
+ #passwd/shadow/group
+ cp -fp /new_boot/etc.old/passwd /new_boot/etc/
+ cp -fp /new_boot/etc.old/shadow /new_boot/etc/
+ cp -fp /new_boot/etc.old/group /new_boot/etc/
+
+ if [ x$rootfs = "xDo_not_format" ]
+ then
+ #rootfs=`grep ${disk}1 /tmp/etc/fstab |awk ' { print $3 } '`
+ rootfs=`grep \/\ /tmp/etc/fstab |awk ' { print $3 } '`
+ fi
+# #datafs=`grep ${disk}3 /tmp/etc/fstab |awk ' { print $3 } '`
+# datafs=`grep \/data /tmp/etc/fstab |awk ' { print $3 } '|head 1`
+ $run fstab_fix_it $disk UPGRADE
+
+ echo "Writing boot sector" > /tmp/.install_state
+ progress 99
+ sleep 1
+ $run grub_it $disk
+
+
+ echo "Configuring system" > /tmp/.install_state
+ progress
+ sleep 1
+ cp /etc/mtab "$mountpoint"/etc/mtab
+ cp -f /etc/systemconfig "$mountpoint"/etc
+ cp -f $MV_ROOT/bin/*.sh "$mountpoint"$MV_ROOT/bin/
+ chmod -R 755 ${mountpoint}/root
+ chown root:mythtv "$mountpoint"/etc/systemconfig
+ chmod 775 "$mountpoint"/etc/systemconfig
+ #mount /proc and /dev
+ mount --bind /dev "$mountpoint/dev"
+ mount --bind /proc "$mountpoint/proc"
+
+ chroot "$mountpoint" $MV_ROOT/bin/systemconfig.sh misc,hostype,network,advanced,this_is_install
+ #wrap this in a network check_network, no need to update the db if the import worked.
+##### do I need to start mysql?
+ chroot "$mountpoint" DISPLAY=127.0.0.1:0 /usr/local/bin/MythVantage -t restore,default_1
+ chroot "$mountpoint" $MV_ROOT/bin/restore_default_settings.sh -c restore -t syssettings
+ #
+ #Run second time
+ chroot "$mountpoint" $MV_ROOT/bin/systemconfig.sh misc,hostype,network,advanced,this_is_install
+ chroot "$mountpoint" $MV_ROOT/bin/systemconfig.sh advanced,this_is_install
+ umount "$mountpoint/dev"
+ umount "$mountpoint/proc"
+ echo "Done" > /tmp/.install_state
+ cp /tmp/mythvantage_install.log $mountpoint/var/log/
+
+ $run unmount_it $disk
+}
+
+function netboot-full_install () {
+ TEMPVAR=${CMDLINE#*nfsroot=}
+ NFSROOT=${TEMPVAR%% *}
+ NFSROOT=`echo $NFSROOT|cut -d: -f1`
+ MAC=`/sbin/ifconfig eth0|grep HWaddr| cut -d: -f2-|awk '{ print $3}'|tr : -`
+ URL="http://$NFSROOT:1337/diskless.py?HOSTNAME=$hostname&MAC=$MAC"
+ echo "calling $URL"
+ echo "Starting" > /tmp/.install_state
+ curl $URL
+ ${MV_ROOT}/bin/xconfig.sh
+}
+
+function killdhcp () {
+if [ -f /etc/dhcpc/dhcpcd-eth0.pid ]
+ then
+ pid=`cat /etc/dhcpc/dhcpcd-eth0.pid`
+ kill -9 $pid
+ rm -f /etc/dhcpc/dhcpcd-eth0.pid
+ rm -f /var/run/dhcpcd*
+ fi
+if [ -f /var/run/dhcpcd-eth0.pid ]
+ then
+ pid=`cat /var/run/dhcpcd-eth0.pid`
+ kill -9 $pid
+ rm -f /var/run/dhcpcd-eth0.pid*
+ fi
+ip address flush dev eth0
+}
+
+
+# function vnc_check() {
+# CMDLINE=$(cat /proc/cmdline)
+# echo $CMDLINE |grep -q vnc
+# USEVNC=$?
+# echo $CMDLINE |grep -q nfsroot
+# NETBOOT=$?
+# echo $USEVNC
+# if [ ! x$USEVNC = x0 ]
+# then
+# echo "not using vnc"
+# if [ ! x$NETBOOT = x0 ]
+# then
+# echo "not using netboot"
+# else
+# echo "using netboot"
+# USEVNC=0
+# fi
+#
+# else
+# echo " using vnc"
+# fi
+# }
+
+
+# function network_setup () {
+# DEVICE=eth0
+# if [ ! -f /etc/systemconfig ]
+# then
+# exit 1
+# fi
+#
+# if [ ! x$USEVNC = x0 ]
+# then
+# echo "Resetting the network"
+# killdhcp
+# if [ $UseDHCP = 0 ]
+# then
+# /sbin/dhcpcd $DEVICE
+# if [ ! $? = 0 ]
+# then
+# exit 2
+# fi
+# fi
+# else
+# echo "using vnc/netboot, will not reset network"
+# echo "nameserver $nameserver" > /etc/resolv.conf
+# return 0
+# fi
+#
+# if [ $UseDHCP = 1 ]
+# then
+#
+# /sbin/ifconfig $DEVICE $ip
+# /sbin/route add default gw $route
+# echo "nameserver $nameserver" > /etc/resolv.conf
+#
+# fi
+#
+#
+# }
+
+function SANE_SYSETTINGS () {
+sed -e '/HOSTrootfstype/d' \
+ -e '/HOSTrootfstype/d' \
+ -e '/HOSTdatafstype/d' \
+ -e '/HOSTOSsize/d' \
+ -e '/HostUseALLdata/d' \
+ -e '/HOSTDATAsize/d' \
+ -e '/HOSTuprootfstype/d' \
+ -e '/HostUseSWAP/d' \
+ -e '/HOSTSWAPsize/d ' /tmp/templates/settings/syssettings/settings.txt > /tmp/settings.new
+ mv /tmp/settings.new /tmp/templates/settings/syssettings/settings.txt
+}
+
+case $1 in
+ full_install_it ) full_install ;;
+
+ NETBOOT)
+echo "-----------------------------------------------------------------------3-----"
+ netboot-full_install ;;
+
+ find_update)
+ #TRY TO mount first partition of drive
+ #copy /etc/systemconfig to live, import settings into db
+ #umount drive
+ $run mount_it $disk
+ if [ -f /new_boot/etc/systemconfig ]
+ then
+ ###########ADD templates
+ mkdir -p $TEMP_TEMPLATES
+ cp -pr /new_boot/$TEMPLATES $TEMP_TEMPLATES
+ SANE_SYSETTINGS
+ cp -rp $TEMP_TEMPLATES/settings $TEMPLATES/
+
+
+ cp /new_boot/etc/systemconfig /etc/systemconfig
+ cp -rf /new_boot/etc /tmp/etc
+ cp -rf /new_boot/var/lib/oss /tmp/oss
+
+ $MV_ROOT/bin/restore_default_settings.sh -c restore -t syssettings -h $MVHOSTNAME -d 127.0.0.1
+ fi
+ $run umount_it $disk
+ ;;
+
+ upgrade_it)
+ #"$MV_ROOT/bin/install_proxy.sh upgrade_it " + install_drive + " " + rootfs + "&"
+ upgrade
+
+ ;;
+ disk_model_it)
+ model="unknown"
+ size="xxx"
+ case $2 in
+
+ h* )
+ model=`cat /proc/ide/$2/model`
+ ;;
+ s*) model=`sginfo /dev/$2|grep Product|awk ' { print $2 } '`
+ ;;
+ esac
+ size=`parted /dev/$2 print |grep Disk|awk ' { print $3 } ' `
+
+
+ echo ""$model" $size " >/tmp/model
+
+ ;;
+ network_check_it)
+ #Should never return from check_network
+ case $2 in
+ setup_network)
+ vnc_check
+ install_network_setup
+ ;;
+
+ check_self)
+ myipdefault=`ifconfig | grep -C1 $default_interface| grep -v $default_interface | cut -d: -f2 | awk '{ print $1}'`
+ ping -c 1 $myipdefault
+ if [ ! $? = 0 ]
+ then
+ exit 3
+ #can't ping yourself
+ fi
+ ;;
+ check_gw)
+ #check gateway
+ mygwdefault=`/sbin/route |grep $default_interface|grep UG|awk '{ print $2}'`
+ if [ ! x$mygwdefault = x ]
+ then
+ ping -c 1 $mygwdefault
+ if [ ! $? = 0 ]
+ then
+ exit 4
+ fi
+ fi
+ ;;
+ check_ns)
+ #check nameserver
+ mydns=`cat /etc/resolv.conf|grep nameserver|head -1|awk '{ print $2}'`
+ ping -c 1 $mydns
+ if [ ! $? = 0 ]
+ then
+ exit 5
+ fi
+ ;;
+ check_names)
+ host google.com
+ if [ ! $? = 0 ]
+ then
+ exit 6
+ fi
+ ;;
+ host_names)
+ #if host is found, then check to see if it's online
+ #if not online, assume it's ok to use this hostname
+
+ hout=`host $hostname`
+ status=$?
+ #found host, now grab the ip
+ if [ $status = 0 ]
+ then
+ hoip=`echo $hout|awk '{print $4}'`
+ ping -c 1 $hoip
+ if [ $? = 0 ]
+ then
+ status=0
+ else
+ status=1
+ fi
+ fi
+
+ if [ $status = 0 ]
+ then
+ exit 7
+ fi
+
+
+ ;;
+
+ esac
+ exit 0
+ ;;
+
+
+ * )
+ state=`cat /tmp/.install_state`
+ if [ x"${state}" = "xConfiguring system" ]
+ then
+ progress ""
+ else
+
+ if [ -f /tmp/.startsize.io ]
+ then
+ . /tmp/.startsize.io
+ #finding the drive
+ ddrive=`df | grep $mountpoint | head -n1 | awk -F/ ' { print $3 } ' | cut -d" " -f 1|cut -b1,2,3 `
+ used=`statgrab -M disk.|grep ${ddrive}.write_bytes|cut -d= -f 2|tr -d " "`
+ used=`echo $used-$STARTSIZE|bc`
+ #echo $used
+ fi
+
+ if [ ! x$used = x ]
+ then
+ . /root/.install_size
+ #somehow find if it's an install or update
+ if [ -f /tmp/.this_is_upgrade ]
+ then
+ total=$UPGRADESIZE
+ else
+ total=$TOTALSIZE
+ fi
+ percent=`echo "scale=2 ; ($used/$total) * 100 " |bc `
+ cond2=$(echo "$percent > 100" |bc )
+ if [ $cond2 -eq 1 ]
+ then
+ percent=100
+ fi
+ cond3=$(echo "$percent < 3" |bc )
+ if [ $cond3 -eq 0 ]
+ then
+ progress $percent
+ fi
+ fi
+ fi
+ ;;
+esac
+
+
+
diff --git a/abs/mv-core/MythVantage-config/issue b/abs/mv-core/MythVantage-config/issue
new file mode 100644
index 0000000..8a38358
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/issue
@@ -0,0 +1 @@
+MythVantage
diff --git a/abs/mv-core/MythVantage-config/live-install.sh b/abs/mv-core/MythVantage-config/live-install.sh
new file mode 100755
index 0000000..573bb1f
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/live-install.sh
@@ -0,0 +1,28 @@
+#!/bin/bash
+#redirect stderr to stdout, then rediret stdout to file
+. /etc/profile
+exec 2>&1
+exec > /tmp/mythvantage_install.log
+. /etc/X11/STBWINDOWMANAGER
+/usr/bin/nvidia-settings -a InitialPixmapPlacement=2
+keylaunch &
+/usr/bin/tilda &
+/usr/X11R6/bin/unclutter -root -idle 0 -jitter 400 -noevents &
+export MALLOC_CHECK_=0
+if [ -f /opt/vmware/bin32/vmware-user-wrapper ]
+then
+ /opt/vmware/bin32/vmware-user-wrapper &
+fi
+xhost +
+CMDLINE=$(cat /proc/cmdline)
+echo $CMDLINE |grep -q nfsroot
+NFSROOT=$?
+if [ x$NFSROOT = x1 ]
+then
+
+ unbuffer MythVantage &
+else
+ NETBOOT=YES MythVantage &
+fi
+
+exec $STBWINDOWMANAGER
diff --git a/abs/mv-core/MythVantage-config/live.install b/abs/mv-core/MythVantage-config/live.install
new file mode 100644
index 0000000..01fa3ce
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/live.install
@@ -0,0 +1,57 @@
+# This is a default template for a post-install scriptlet. You can
+# remove any functions you don't need (and this header).
+
+# arg 1: the new package version
+pre_install() {
+ rm -f /etc/issue
+ rm -f /etc/arch-relase
+}
+
+# arg 1: the new package version
+post_install() {
+ if [ ! -f /etc/blacklist.package ]
+ then
+ echo "List of packages to ignore" > /etc/blacklist.package
+ echo "one package per line" >> /etc/blacklist.package
+ fi
+
+
+}
+
+# arg 1: the new package version
+# arg 2: the old package version
+pre_upgrade() {
+ /bin/true
+}
+
+# arg 1: the new package version
+# arg 2: the old package version
+post_upgrade() {
+ . /etc/profile
+ ps -ef|grep mysqld|grep -v grep
+ status=$?
+ echo "status $status"
+ if [ $status = 0 ]
+ then
+ restore_default_settings.sh -c load
+ fi
+ if [ ! -f /etc/blacklist.package ]
+ then
+ echo "List of packages to ignore" > /etc/blacklist.package
+ echo "one package per line" >> /etc/blacklist.package
+ fi
+}
+
+# arg 1: the old package version
+pre_remove() {
+ /bin/true
+}
+
+# arg 1: the old package version
+post_remove() {
+ /bin/true
+}
+
+op=$1
+shift
+$op $*
diff --git a/abs/mv-core/MythVantage-config/mythvantage-release b/abs/mv-core/MythVantage-config/mythvantage-release
new file mode 100644
index 0000000..0ffe69d
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/mythvantage-release
@@ -0,0 +1 @@
+MythVantage 1.6 Bust a move
diff --git a/abs/mv-core/MythVantage-config/networkconfig.sh b/abs/mv-core/MythVantage-config/networkconfig.sh
new file mode 100644
index 0000000..999ccb0
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/networkconfig.sh
@@ -0,0 +1,285 @@
+#!/bin/bash
+#. /etc/profile
+#. /etc/systemconfig
+#BASE=/tmp
+ETCNETDIR=$BASE/etc/net/ifaces
+
+
+
+function kill_dhcp ()
+{
+for i in ${BASE}/etc/dhcpc/dhcpcd-*.pid
+do
+ if [ -f ${i} ]
+ then
+ pid=`cat ${i}`
+ kill -9 $pid
+ rm -f ${i}
+ fi
+ if [ x$1 = xflush ]
+ then
+ for ifdev in eth0 wlan0 eth1 wlan1
+ do
+ echo ${i} |grep $ifdev
+ status=$?
+ if [ $status = 1 ]
+ then
+ ip address flush $ifdev
+ fi
+ done
+ fi
+
+done
+
+}
+
+function setup_nameserver(){
+grep -q $1 ${BASE}/etc/resolv.conf
+status=$?
+if [ ! $status = 0 ]
+then
+ echo "nameserver $1" >> ${BASE}/etc/resolv.conf
+fi
+
+}
+
+function setup_interfaces() {
+ local IS_WIRELESS
+ local ip
+ local netmask
+ local isactive
+ local dns
+ local UseDHCP
+ local GW
+ local ESSID
+ local KEY
+ local ENCRYPT
+ local TEMPNET
+ IS_WIRELESS=false
+
+ #local ip
+ TEMPNET="Hostip"$1
+ echo $TEMPNET
+ eval ip=\$${TEMPNET}
+
+ TEMPNET=Hostnetmask$1
+ eval netmask=\$${TEMPNET}
+ netmask=`echo "$netmask" | cut -d " " -f1`
+
+ TEMPNET=HostActive$1
+ eval isactive=\$${TEMPNET}
+
+ TEMPNET=HostDNS$1
+ eval dns=\$${TEMPNET}
+
+ TEMPNET="HostUSEDHCP"$1
+ eval UseDHCP=\$${TEMPNET}
+
+ TEMPNET=HostGW$1
+ eval GW=\$${TEMPNET}
+
+
+
+ if [ $1 = wlan0 -o $1 = wlan1 ]
+ then
+ IS_WIRELESS=TRUE
+ TEMPNET=HostESSID$1
+ eval ESSID=\$${TEMPNET}
+
+ TEMPNET="HostKey"$1
+ eval KEY=\$${TEMPNET}
+
+ TEMPNET=HostUseEncryption$1
+ eval ENCRYPT=\$${TEMPNET}
+ fi
+
+
+ echo "Setup $1 in progress, wireless: $IS_WIRELESS"
+
+ if [ ! -d $ETCNETDIR/$1 ]
+ then
+ mkdir -p $ETCNETDIR/$1
+ fi
+
+ if [ ! -f $ETCNETDIR/$1/options ]
+ then
+ cp -f $TEMPLATES/etcnet/eth/options $ETCNETDIR/$1/options
+ fi
+
+ if [ x$isactive = x0 ]
+ then
+ echo "setting $1 to inactive"
+ sed -i -e 's/^ONBOOT=.*$/ONBOOT=no/g' $ETCNETDIR/$1/options
+
+ else
+ echo "setting $1 to active"
+ sed -i -e 's/^ONBOOT=.*$/ONBOOT=yes/g' $ETCNETDIR/$1/options
+ fi
+
+ if [ x$IS_WIRELESS = xTRUE ]
+ then
+ echo "setting $1 wireless"
+ sed -i -e 's/^CONFIG_WIRELESS=.*$/CONFIG_WIRLESS=yes/g' $ETCNETDIR/$1/options
+ #set the key and essid
+ echo "essid $ESSID" > $ETCNETDIR/$1/iwconfig
+ if [ x$ENCRYPT = x1 ]
+ then
+ echo "key $KEY" >> $ETCNETDIR/$1/iwconfig
+ fi
+
+ else
+ echo "disabling wireless"
+ sed -i -e 's/^CONFIG_WIRLESS=.*$/CONFIG_WIRLESS=no/g' $ETCNETDIR/$1/options
+ fi
+
+
+
+
+ if [ $UseDHCP = 0 ]
+ then
+ echo using dhcp
+ sed -i -e 's/^BOOTPROTO=.*$/BOOTPROTO=dhcp/g' $ETCNETDIR/$1/options
+
+ else
+ echo "using static ip"
+ sed -i -e 's/^BOOTPROTO=.*$/BOOTPROTO=static/g' $ETCNETDIR/$1/options
+ echo "default via $GW" > $ETCNETDIR/$1/ipv4route
+ echo "$ip$netmask" > $ETCNETDIR/$1/ipv4address
+ setup_nameserver $dns
+ fi
+}
+
+
+function find_active () {
+#HostActiveeth1="1"
+rm -f ${BASE}/etc/resolv.conf
+if [ x$MYTHDHCP = x1 ]
+ then
+ #add 127.0.0.1 to /etc/resolv.conf
+ echo "search lan" > ${BASE}/etc/resolv.conf
+ echo "nameserver 127.0.0.1" >> ${BASE}/etc/resolv.conf
+ fi
+
+for i in eth0 eth1 wlan0 wlan1
+do
+ CURRENTIF="HostActive"$i
+ eval IFSTATE=\$${CURRENTIF}
+ if [ x$IFSTATE = x1 ]
+ then
+ setup_interfaces $i
+ fi
+done
+}
+
+function setup_hostname {
+#set the hostname
+if [ ! x$hostname = x ]
+then
+ echo $hostname > ${BASE}/etc/hostname
+ cat $BASE/etc/hosts |grep -v 127.0.0.1|grep -v $hostname > /tmp/hosts
+ #cat $BASE/etc/hosts |grep -v 127.0.0.1|grep -v $hostname | grep -v $ip > /tmp/hosts
+
+ if [ x$MYTHDHCP = x1 ]
+ then
+ echo "127.0.0.1 localhost " > ${BASE}/etc/hosts
+ echo "$MYTHIP $hostname " >> ${BASE}/etc/hosts
+ else
+ echo "127.0.0.1 $hostname localhost " > ${BASE}/etc/hosts
+ fi
+ cat /tmp/hosts >> ${BASE}/etc/hosts
+fi
+
+kill_dhcp
+}
+
+function vnc_check() {
+ if [ x$RESTART_NETWORK = xfalse ]
+ then
+ echo "netboot install or image creating, will not restart network"
+ USEVNC=0
+ else
+ CMDLINE=$(cat /proc/cmdline)
+ echo $CMDLINE |grep -q vnc
+ USEVNC=$?
+ echo $CMDLINE |grep -q nfsroot
+ NETBOOT=$?
+ echo $USEVNC
+ if [ ! x$USEVNC = x0 ]
+ then
+ echo "not using vnc"
+ if [ ! x$NETBOOT = x0 ]
+ then
+ echo "not using netboot"
+ else
+ echo "using netboot"
+ USEVNC=0
+ fi
+ else
+ echo " using vnc"
+ fi
+ fi
+}
+
+function setup_MYTH_vars {
+ TEMPMYTH="Hostip"$default_interface
+ #echo $TEMPMYTH
+ eval MYTHIP=\$${TEMPMYTH}
+
+ TEMPMYTH="HostUSEDHCP"$default_interface
+ eval MYTHDHCP=\$${TEMPMYTH}
+
+
+
+}
+
+
+
+function setup_network {
+ setup_MYTH_vars
+ setup_hostname
+ find_active
+}
+
+function start_network {
+if [ ! $USEVNC = 0 ]
+then
+ /etc/net/scripts/network.init restart
+
+else
+ echo "VNC/NETBOOT in use, will NOT restart network"
+fi
+
+}
+
+function stop_network {
+if [ ! $USEVNC = 0 ]
+then
+ echo "stopping the network"
+ kill_dhcp flush
+ ip address flush dev eth0 2>&1 >/dev/null
+ ip address flush dev eth1 2>&1 >/dev/null
+ ip address flush dev wlan0 2>&1 >/dev/null
+ ip address flush dev wlan1 2>&1 >/dev/null
+else
+ echo "VNC/NETBOOT in use, will NOT restart network"
+fi
+
+}
+
+
+#this is used by the install process to start the network
+function install_network_setup {
+ setup_MYTH_vars
+ setup_hostname
+ stop_network
+ find_active
+ start_network
+
+}
+
+
+
+
+
+
+
diff --git a/abs/mv-core/MythVantage-config/remove_service.sh b/abs/mv-core/MythVantage-config/remove_service.sh
new file mode 100755
index 0000000..6cc4b4f
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/remove_service.sh
@@ -0,0 +1,8 @@
+#!/bin/bash
+SERVICE_DIR=/var/service
+SCRIPT_DIR=/etc/sv
+if [ -e $SERVICE_DIR/$1 ]
+then
+ echo "removing"
+ rm $SERVICE_DIR/$1
+fi
diff --git a/abs/mv-core/MythVantage-config/restore_default_settings.sh b/abs/mv-core/MythVantage-config/restore_default_settings.sh
new file mode 100755
index 0000000..e2b7044
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/restore_default_settings.sh
@@ -0,0 +1,325 @@
+#!/bin/bash
+. /etc/profile
+. /etc/systemconfig
+shopt -s -o nounset
+echo $@ >> /tmp/restore.out
+#TEMPLATES="/usr/share/templates/settings"
+TEMPLATES="$TEMPLATES/settings"
+TABLES="settings keybindings"
+MYTHDBUSER=mythtv
+MYTHTVPASSWD=mythtv
+declare -r OPTSTRING="c:e:t:d:h:s:a:z:Ho"
+Thistemplate=""
+declare -i OVERRIDE=0
+declare -i EVERYTHING=0
+
+function CMD_DEFINE () {
+ #add override check
+ if [ x$Thistemplate = xsyssettings -a $OVERRIDE -eq 1 ]
+ then
+ MYSQLCMD="mysql --local-infile -s -u$MYTHDBUSER -p$MYTHTVPASSWD -h$ovdbhost mythconverg -B --exec"
+ MYSQLCMD_C="mysql -u$MYTHDBUSER -p$MYTHTVPASSWD -h$ovdbhost mythconverg -B --exec"
+ MYSQLCMD_UPDATE_HOST="UPDATE settings set data='$oldhostname' where value='HostMyhostname' and hostname=\"$hostname\";"
+ else
+ MYSQLCMD="mysql --local-infile -s -u$MYTHDBUSER -p$MYTHTVPASSWD -h$dbhost mythconverg -B --exec"
+ MYSQLCMD_C="mysql -u$MYTHDBUSER -p$MYTHTVPASSWD -h$dbhost mythconverg -B --exec"
+ MYSQLCMD_UPDATE_HOST="select hostname from settings;"
+ fi
+}
+
+function SQL_DEFINE () {
+ #$1 is the table name
+ if [ $1 = "settings" ]
+ then
+ ALTERSQL="Alter table temp_${1}_${hostname} add unique ( value )"
+ else
+ ALTERSQL=";"
+ fi
+
+ CREATESQL="create table temp_${1}_${hostname} like $1;"
+ COPY_TMP_SQL="replace into temp_${1}_${hostname} (select * from $1 where hostname=\"$hostname\");"
+ INSERTSQL="LOAD DATA local INFILE '/tmp/$1.txt' REPLACE INTO TABLE temp_${1}_${hostname} FIELDS TERMINATED BY '\t';"
+ #INSERTSQL="LOAD DATA local INFILE '$TEMPLATES/$Thistemplate/$1.txt' REPLACE INTO TABLE temp_${1}_${hostname} FIELDS TERMINATED BY '\t';"
+ DROPSQL="delete from $1 where hostname=\"$hostname\";"
+ COPY_BCK_SQL="replace into $1 (select * from temp_${1}_${hostname} where hostname=\"$hostname\");"
+ DROP_TABLE="Drop table temp_${1}_${hostname}"
+}
+
+function ARG_ERR() {
+ if [ x$OPTARG = "x" ]
+ then
+ echo "$SWITCH NEEDS AND ARG"
+ exit 11
+ fi
+}
+
+function ALSADEVICE () {
+#ALSA:hw:1,4
+ if [ x$Audiotype = xALSA ]
+ then
+ SoundDevice=ALSA:$SoundDevice
+ fi
+}
+
+
+
+if [ $# -eq 0 ]
+then
+ echo "Valid options are:"
+ echo " -c (save|restore|load|uhostname|BECONFIG|ZIP|ACCESSCONTROL)"
+ echo " -t (syssettings)"
+ echo " -d databasename"
+ echo " -h hostname"
+ echo " -s systemtype (master|slave|standalone|frontendonly)"
+ echo " -a ipaddress"
+ echo " -z zipcode"
+ echo " -o override (only used upgrade installs)"
+ exit 1
+fi
+
+
+
+
+while getopts "$OPTSTRING" SWITCH
+do
+ case $SWITCH in
+ # \?) echo "unkown option"
+ # exit 11 ;;
+ c) echo "$SWITCH" "$OPTARG"
+ ARG_ERR
+ OPERATION=$OPTARG
+ ;;
+ t) echo "$SWITCH" "$OPTARG"
+ ARG_ERR
+ Thistemplate=$OPTARG
+
+ if [ x$Thistemplate = x"syssettings" ]
+ then
+ echo ""
+ else
+ echo "invalid template name"
+ exit 1
+ fi
+ ;;
+ d) echo "$SWITCH" "$OPTARG"
+ ARG_ERR
+ if [ $OVERRIDE = 1 ]
+ then
+ ovdbhost=$OPTARG
+ else
+ dbhost=$OPTARG
+ fi
+ ;;
+ h) echo "$SWITCH" "$OPTARG"
+ ARG_ERR
+ if [ $OVERRIDE = 1 ]
+ then
+ oldhostname=$hostname
+ hostname=$OPTARG
+ else
+ hostname=$OPTARG
+ fi
+
+ ;;
+ s) echo "$SWITCH" "$OPTARG"
+ ARG_ERR
+ SYSTEMTYPE=$OPTARG
+ ;;
+ a) echo "$SWITCH" "$OPTARG"
+ ARG_ERR
+ IP_ADDRESS=$OPTARG
+ ;;
+ z) echo "$SWITCH" "$OPTARG"
+ ARG_ERR
+ ZIPCODE=$OPTARG
+ ;;
+ o) OVERRIDE=1
+ ;;
+
+ esac
+done
+
+echo $OVERRIDE
+
+#setup the Mysql commands
+CMD_DEFINE
+
+$MYSQLCMD_C "show tables" > /dev/null
+status=$?
+if [ $status = 1 ]
+then
+ echo "$@ failed"
+ echo "$@ failed" >> /tmp/restore.out
+ exit 1
+fi
+
+
+
+
+
+
+
+case $OPERATION in
+
+ restore)
+ #used to restore settings from syssettings
+ if [ -d $TEMPLATES/$Thistemplate ]
+ then
+ cd $TEMPLATES/$Thistemplate
+ for i in $TABLES
+ do
+ SQL_DEFINE $i
+ sed -e "s/REPLACEME/$hostname/g" $i.txt > /tmp/$i.txt
+ #echo $MYSQLCMD "$SELECTSQL"
+ echo $i
+ $MYSQLCMD "$CREATESQL"
+ $MYSQLCMD "$ALTERSQL"
+ $MYSQLCMD "$COPY_TMP_SQL"
+ $MYSQLCMD "$INSERTSQL"
+ $MYSQLCMD "$DROPSQL"
+ $MYSQLCMD "$COPY_BCK_SQL "
+ $MYSQLCMD "$DROP_TABLE "
+ #rm /tmp/$i.txt
+ done
+ else
+ echo "couldn't find $TEMPLATES/$Thistemplate"
+ fi
+ ;;
+
+ save)
+
+ if [ ! -d $TEMPLATES/$Thistemplate ]
+ then
+ mkdir -p $TEMPLATES/$Thistemplate
+ fi
+
+ cd $TEMPLATES/$Thistemplate
+ for i in $TABLES
+ do
+ EXTRACLAUSE=""
+ case $i in
+ settings)
+ EXTRACLAUSE="and not (value like \"BackendServerIP\") and not (value like \"locale\") order by value"
+ SQL="select value,data,'REPLACEME' as hostname from $i where hostname=\"$hostname\" "$EXTRACLAUSE" ;"
+ # SQL="select * from $i where hostname=\"$hostname\" "$EXTRACLAUSE" ;"
+ $MYSQLCMD_C "$SQL" > $TEMPLATES/$Thistemplate/$i.txt
+ ;;
+ keybindings)
+ SQL="select context,action,description,keylist,'REPLACEME' as hostname from $i where hostname=\"$hostname\" "$EXTRACLAUSE" ;"
+ $MYSQLCMD_C "$SQL" > $TEMPLATES/$Thistemplate/$i.txt
+ ;;
+ esac
+ # sed -e "s/$hostname/REPLACEME/g" $i > $i.txt && rm $i
+
+ done
+ ;;
+
+ load)
+
+ #will load both default_1 and default_2 unless either file is not found
+ for i in default_1 default_2
+ do
+ if [ -f $TEMPLATES/$i/settings.txt ]
+ then
+ echo $i
+ for tablename in $TABLES
+ do
+ #create table
+ CREATESQL="create table IF NOT EXISTS ${tablename}_${i} like $tablename;"
+ $MYSQLCMD_C "$CREATESQL"
+ #truncate table
+ TRUNCATESQL="truncate ${tablename}_${i} "
+ $MYSQLCMD_C "$TRUNCATESQL"
+ #load table
+ INSERTSQL="LOAD DATA local INFILE '$TEMPLATES/$i/$tablename.txt' REPLACE INTO TABLE ${tablename}_${i} FIELDS TERMINATED BY '\t';"
+ $MYSQLCMD_C "$INSERTSQL"
+ #update_hostname
+ UPDATEHOSTNAMESQL="update ${tablename}_${i} set hostname='$i' ; "
+ $MYSQLCMD_C "$UPDATEHOSTNAMESQL"
+ done
+ else
+
+ echo "couldn't find $TEMPLATES/$i/settings.txt template to load"
+ fi
+ CREATESQL="create table IF NOT EXISTS settings_user1 like settings;"
+ $MYSQLCMD_C "$CREATESQL"
+ CREATESQL="create table IF NOT EXISTS settings_user2 like settings;"
+ $MYSQLCMD_C "$CREATESQL"
+ CREATESQL="create table IF NOT EXISTS settings_user3 like settings;"
+ $MYSQLCMD_C "$CREATESQL"
+
+ CREATESQL="create table IF NOT EXISTS keybindings_user1 like keybindings;"
+ $MYSQLCMD_C "$CREATESQL"
+ CREATESQL="create table IF NOT EXISTS keybindings_user2 like keybindings;"
+ $MYSQLCMD_C "$CREATESQL"
+ CREATESQL="create table IF NOT EXISTS keybindings_user3 like keybindings;"
+ $MYSQLCMD_C "$CREATESQL"
+ done
+;;
+
+
+
+ BECONFIG)
+ if [ $SYSTEMTYPE = "master" ]
+ then
+ $MYSQLCMD_C "UPDATE settings set data='${IP_ADDRESS}' where value='MasterServerIP';"
+ $MYSQLCMD_C "delete from settings where value='BackendServerIP' and hostname=\"$hostname\";"
+ $MYSQLCMD_C "REPLACE INTO settings set data='${IP_ADDRESS}' , value='BackendServerIP' , hostname=\"$hostname\";"
+ fi
+
+ if [ $SYSTEMTYPE = "slave" ]
+ then
+ $MYSQLCMD_C "delete from settings where value='BackendServerIP' and hostname=\"$hostname\";"
+ $MYSQLCMD_C "REPLACE INTO settings set data='${IP_ADDRESS}' , value='BackendServerIP' , hostname=\"$hostname\";"
+ fi
+ ;;
+ ZIP)
+ $MYSQLCMD_C "delete from settings where value='locale' and hostname=\"$hostname\";"
+ $MYSQLCMD_C "REPLACE INTO settings set data='$ZIPCODE' , value='locale' , hostname=\"$hostname\";"
+ $MYSQLCMD_C "delete from settings where value='MythMovies.ZipCode' and hostname=\"$hostname\";"
+ $MYSQLCMD_C "REPLACE INTO settings set data='$ZIPCODE', value='MythMovies.ZipCode' , hostname=\"$hostname\";"
+ ;;
+ MUSICFRONT)
+ ALSADEVICE
+ $MYSQLCMD_C "delete from settings where value='AudioOutputDevice' and hostname=\"$hostname\";"
+ $MYSQLCMD_C "REPLACE INTO settings set data='$SoundDevice', value='AudioOutputDevice' , hostname=\"$hostname\";"
+ #need to reload the settings.
+ systemconfig.sh reloadfe
+ ;;
+ MUSICMYTH)
+ ALSADEVICE
+ $MYSQLCMD_C "delete from settings where value='MusicAudioDevice' and hostname=\"$hostname\";"
+ $MYSQLCMD_C "REPLACE INTO settings set data='$SoundDevice', value='MusicAudioDevice' , hostname=\"$hostname\";"
+ ;;
+ uhostname)
+ #used when the hostname is changed.
+ TABLES="settings capturecard keybindings storagegroup recorded"
+ for i in $TABLES
+ do
+ USQL="update $i set hostname=\"$oldhostname\" where hostname=\"$hostname\" ;"
+ $MYSQLCMD_C "$USQL"
+ done
+
+ ;;
+ USERJOBALLOW)
+ SQL="update settings set data='1' where value like 'JobAllowUserJob%' and hostname=\"$hostname\" ;"
+ $MYSQLCMD_C "$SQL"
+ ;;
+
+ ACCESSCONTROL)
+ LIST="Hostaccessnetwork Hostaccesshostype HostaccesshostypeSystemtype Hostaccessmisc Hostaccesssleep Hostaccessadvanced HostaccessadvancedX Hostaccesssound"
+
+ for i in $LIST
+ do
+ $MYSQLCMD_C "delete from settings where value=\"$i\" and hostname=\"$hostname\";"
+ $MYSQLCMD_C "REPLACE INTO settings set data='1', value=\"$i\" , hostname=\"$hostname\";"
+ done
+ SQL="update settings set data='0' where value='HostaccesshostypeSystemtype' and hostname=\"$hostname\" ;"
+ $MYSQLCMD_C "$SQL"
+ esac
+
+#SELECT * INTO OUTFILE 'data.txt'
+# FIELDS TERMINATED BY ','
+# FROM table2;
+
+
diff --git a/abs/mv-core/MythVantage-config/soundconfig.sh b/abs/mv-core/MythVantage-config/soundconfig.sh
new file mode 100755
index 0000000..1adb447
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/soundconfig.sh
@@ -0,0 +1,248 @@
+#!/bin/bash
+. /etc/systemconfig
+. /etc/profile
+echo $@ >/tmp/audio.call
+#set -x
+BASE=""
+. /etc/profile
+#TEMPLATES="/usr/share/templates"
+TESTFILE="$TEMPLATES/audio/space_battle_A.wav"
+OSSinstalled="false"
+
+function testaudio () {
+
+ossplay -d$AUDIODEVICE $TESTFILE
+
+}
+
+function load_alsa() {
+
+ remove_service.sh alsa-utils
+# cd /lib/modules/2.6.21-STB
+ KER=`uname -r`
+ cd /lib/modules/$KER/kernel/
+ tar -xvf alsa-$KER.tar
+ pacman -Sf --noconfirm alsa-lib
+
+ depmod -a
+ cd -
+ udevsettle
+ udevsettle
+ udevtrigger
+
+ add_service.sh alsa-utils
+ sleep 4
+ sv start alsa-utils
+}
+
+
+function unload_alsa () {
+#kill $(lsof -t /dev/dsp* /dev/audio* /dev/mixer* /dev/snd/*) && modprobe -r $(lsmod |grep ^snd |awk '{print $1}')
+ sv stop alsa-utils
+ remove_service.sh alsa-utils
+ rm -rf /dev/adsp*
+ rm -rf /dev/snd/*
+ rm -rf /dev/audio
+ modprobe -r $(lsmod |grep ^snd |awk '{print $1}')
+}
+
+function unload_oss {
+ sv stop oss
+ soundoff
+ rm -rf /dev/dsp*
+ rm -rf /dev/oss*
+ rm -rf /dev/sndstat
+ remove_service.sh oss
+}
+
+function installOSS {
+ echo "installing oss"
+ add_service.sh oss
+ sleep 4
+ sv start oss
+}
+
+
+function SYNCXINE {
+echo "modify xine config file"
+ if [ -f /data/home/mythtv/.xine/config ]
+ then
+ cp -f /data/home/mythtv/.xine/config $TEMPLATES/xine.config
+ else
+ cp $TEMPLATES/xine.config.template $TEMPLATES/xine.config
+ fi
+
+ if [ x$Audiotype = xOSS ]
+ then
+ DEVICENUMBER=`echo $SoundDevice|awk -F/ ' { print $3 } '|tr -d dsp `
+ sed -e "s/^.*audio.driver.*$/audio.driver:oss/" \
+ -e "s/^.audio.device.oss_device_name.*$/audio.device.oss_device_name:\/dev\/dsp/" \
+ -e "s/^.audio.devic.oss_device_number.*$/audio.device.oss_device_number:$DEVICENUMER/" \
+ -e "s/^.*audio.output.speaker_arrangement:.*$/Audio.output.speaker_arrangement:PassThrough/" \
+ $TEMPLATES/xine.config > /data/home/mythtv/.xine/config
+ else
+ cp $TEMPLATES/xine.config /data/home/mythtv/.xine/config
+ fi
+
+}
+
+function SYNCMPLAYER {
+echo "modify mplayer not implmented yet"
+}
+
+function SYNCMYTHMUSIC {
+echo "sync mythmusic"
+$MV_ROOT/bin/restore_default_settings.sh -c MUSICMYTH
+}
+
+function SYNCMYTHFRONTEND {
+echo "sync mythfrontend"
+$MV_ROOT/bin/restore_default_settings.sh -c MUSICFRONT
+}
+
+
+function checkOSSinstalled () {
+ ossinfo 1>/dev/null
+ resultcode=$?
+ echo $resultcode
+ if [ $resultcode = 0 ]
+ then
+ OSSinstalled='true'
+ else
+ OSSinstalled='false'
+ fi
+}
+
+function sound_config_system {
+
+ if [ x$syncXine = x1 ]
+ then
+ SYNCXINE
+ fi
+ if [ x$syncMplayer = x1 ]
+ then
+ SYNCMPLAYER
+ fi
+ if [ x$syncMythMusic = x1 ]
+ then
+ SYNCMYTHMUSIC
+ fi
+ if [ x$syncMythFrontend = x1 ]
+ then
+ SYNCMYTHFRONTEND
+ fi
+
+}
+
+function loadsound (){
+ checkOSSinstalled
+ if [ x$AUDIOTYPE = xOSS -o x$AUDIOTYPE = xoss ]
+ #then
+ # if [ $OSSinstalled = "false" ]
+ then
+ while [ $OSSinstalled = "false" ]
+ do
+ unload_alsa
+ rm /tmp/.alsatest
+ installOSS
+ installOSS
+ sleep 2
+ checkOSSinstalled
+ done
+ # fi
+ else
+ touch /tmp/.alsatest
+ unload_oss
+ load_alsa
+ load_alsa
+ rm /tmp/.alsatest
+
+ fi
+
+}
+
+
+
+
+#####################MAIN PROGRAM##########################
+
+declare -r OPTSTRING="i:t:d:"
+
+if [ $# -eq 0 ]
+then
+ echo "Valid options are:"
+ echo " -i (oss|alsa) oss or alsa subsystem "
+ echo " -t (test|real|LOAD) "
+ echo " -d device"
+ exit 1
+fi
+
+
+
+
+while getopts "$OPTSTRING" SWITCH
+do
+ case $SWITCH in
+ \?) echo "unkown option"
+ exit 11 ;;
+ i) echo "$SWITCH" "$OPTARG"
+ AUDIOTYPE="$OPTARG"
+ ;;
+ d) echo "$SWITCH" "$OPTARG"
+ AUDIODEVICE=$OPTARG
+ ;;
+ t) echo "$SWITCH" "$OPTARG"
+ SOUNDOPTYPE="$OPTARG"
+ if [ x"$OPTARG" = xtest ]
+ then
+ TEST=true
+ else
+ TEST=false
+ fi
+
+
+ ;;
+
+ esac
+done
+
+
+
+
+case $SOUNDOPTYPE in
+ REAL|real )
+ loadsound
+ sound_config_system
+ ;;
+ test|TEST)
+ echo $@ > /tmp/audio.test
+ #loadsound
+ if [ x$AUDIOTYPE = xOSS -o x$AUDIOTYPE = xoss ]
+ then
+ echo "testing OSS $AUDIODEVICE "
+ ossplay -d$AUDIODEVICE $TESTFILE
+ else
+ echo "testing ALSA $AUDIODEVICE "
+ aplay --device=$AUDIODEVICE $TESTFILE
+ fi
+
+ ;;
+
+ LOAD|load)
+ loadsound
+ ;;
+ esac
+
+
+exit 0
+
+
+
+
+
+
+
+
+
+
+
diff --git a/abs/mv-core/MythVantage-config/startx b/abs/mv-core/MythVantage-config/startx
new file mode 100755
index 0000000..0ffdf8c
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/startx
@@ -0,0 +1,29 @@
+#!/bin/bash
+. /etc/profile
+
+export USER=root
+export HOME=/root
+#TEMPLATES=/usr/share/templates
+
+CMDLINE=$(cat /proc/cmdline)
+TEMPVAR=${CMDLINE#*ip=}
+IP=${TEMPVAR%% *}
+echo $CMDLINE |grep -q vnc
+USEVNC=$?
+
+if [ x$USEVNC = x1 ]
+then
+ $MV_ROOT/bin/xconfig.sh
+ cat /etc/X11/xorg.conf | sed -e 's/dev\/mouse/dev\/psaux/g'> /root/xorg.conf.install
+ startx /root/live-install.sh -- -config /root/xorg.conf.install -allowMouseOpenFail
+ else
+ #VNC
+ pacman -Sf --noconfirm tightvnc
+ cd /root
+ mkdir .vnc
+ echo mythvantage |vncpasswd -f > /root/.vnc/passwd
+ chmod 500 /root/.vnc/passwd
+ rm /root/.vnc/xstartup
+ ln -s /root/live-install.sh /root/.vnc/xstartup
+ vncserver
+fi
diff --git a/abs/mv-core/MythVantage-config/systemconfig.sh b/abs/mv-core/MythVantage-config/systemconfig.sh
new file mode 100755
index 0000000..9ee69ac
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/systemconfig.sh
@@ -0,0 +1,1254 @@
+#!/bin/bash
+###################################################################
+#Script to configure your system based off the values in /etc/systemconfig
+#Any changes made to config files will be removed when systemconfig.sh is run
+#
+#JM
+###################################################################
+#set -x
+. /etc/profile
+MVRELEASE=`cat /etc/mythvantage-release |cut -d" " -f -2`
+
+echo $@ >/tmp/systemconfig.call
+echo "----------------------start of systemconfig $@ ----------------------"
+BASE=""
+
+#TEMPLATES="/usr/share/templates"
+. /etc/profile
+. $MV_ROOT/bin/networkconfig.sh
+PACMAN="pacman --noconfirm"
+postfix=`cat ${BASE}/usr/local/share/mythtv/.releasetype`
+PKGBLACKLIST=$BASE/etc/blacklist.package
+
+if [ x$1 = x"Mysql_only" ]
+ then
+ rm -f /tmp/mysql.txt
+ sed -e "s/^DBHostName=.*$/DBHostName=$2/" $TEMPLATES/mysql.txt > /tmp/mysql.txt
+ exit 0
+ fi
+
+
+if [ -f /etc/systemconfig ]
+then
+ . /etc/systemconfig
+TEMPNET="Hostip"$default_interface
+echo $TEMPNET
+eval MYTHIP=\$${TEMPNET}
+else
+ echo "could not find /etc/systemconfig"
+ exit 1
+fi
+
+
+
+#-----------------------------------------------------
+
+
+function setupmysql {
+#setup mysql.txt to find the database servers
+ if [ $SystemType = "Master_backend" ]
+ then
+ if [ $MYTHDHCP = 0 ]
+ then
+ #this grabs eth0, as that is all thats supported.
+# dbhost=`ifconfig | grep 'inet addr:'| grep -v '127.0.0.1' | cut -d: -f2 | awk '{ print $1}'|head -n1`
+ dbhost=`ifconfig | grep -C1 $default_interface| grep -v $default_interface | cut -d: -f2 | awk '{ print $1}'`
+ sed -e "s/^dbhost=.*$/dbhost=\"$dbhost\"/" /etc/systemconfig >/tmp/systemconfig.old
+ cp /tmp/systemconfig.old ${BASE}/etc/systemconfig
+ ##logic to change master_serverip and backend_serverip in db
+ ${BASE}${MV_ROOT}/bin/restore_default_settings.sh -c BECONFIG -s master -a $dbhost
+ else
+
+ dbhost=$MYTHIP
+ sed -e "s/^dbhost=.*$/dbhost=\"$dbhost\"/" /etc/systemconfig >/tmp/systemconfig.old
+ cp /tmp/systemconfig.old ${BASE}/etc/systemconfig
+ #logic to change dbhost in db
+ ${BASE}${MV_ROOT}/bin/restore_default_settings.sh -c BECONFIG -s master -a $dbhost
+ fi
+ fi
+
+ if [ $SystemType = "Slave_backend" ]
+ then
+ if [ $MYTHDHCP = 0 ]
+ then
+ #this grabs eth0, as that is all thats supported.
+ #slavehost=`ifconfig | grep 'inet addr:'| grep -v '127.0.0.1' | cut -d: -f2 | awk '{ print $1}'|head -n1`
+ slavehost=`ifconfig | grep -C1 $default_interface| grep -v $default_interface | cut -d: -f2 | awk '{ print $1}'`
+ ##logic to change backend_serverip in db
+ ${BASE}${MV_ROOT}/bin/restore_default_settings.sh -c BECONFIG -s slave -a $slavehost
+ else
+ slavehost=$MYTHIP
+
+ #logic to change backend_serverif in db
+ ${BASE}${MV_ROOT}/bin/restore_default_settings.sh -c BECONFIG -s slave -a $slavehost
+ fi
+ fi
+
+ MYSQLTXT=${BASE}/usr/local/share/mythtv/mysql.txt
+ if [ $SystemType = "Standalone" ]
+ then
+ sed -e "s/^DBHostName=.*$/DBHostName="localhost"/" $TEMPLATES/mysql.txt > $MYSQLTXT
+ else
+ sed -e "s/^DBHostName=.*$/DBHostName=$dbhost/" $TEMPLATES/mysql.txt > $MYSQLTXT
+ fi
+ rm ${BASE}/data/home/mythtv/.mythtv/mysql.txt
+ rm ${BASE}${MV_ROOT}/bin/mythtv/.mythtv/mysql.txt
+ if [ -f ${BASE}/data/home/mythtv/templates/mysql.txt ]
+ then
+ cp ${BASE}/data/home/mythtv/templates/mysql.txt $MYSQLTXT
+ fi
+
+ chmod 755 $MYSQLTXT
+ chown mythtv $MYSQLTXT
+
+}
+
+function setupmysqlnetwork(){
+MFILE=etc/my.cnf
+grep "#skip-networking" $BASE/$MFILE
+status=$?
+
+
+
+ if [ $SystemType = "Standalone" ]
+ then
+ sed -ie "s/^#skip-networking/skip-networking/g" $BASE/$MFILE
+ if [ $status = 0 ]
+ then
+ sudo sv restart mysql
+ echo "restarting mysql with no network"
+ fi
+
+ fi
+
+ if [ $SystemType = "Master_backend" ]
+ then
+ sed -ie "s/^skip-networking/#skip-networking/g" $BASE/$MFILE
+ if [ $status = 1 ]
+ then
+ sudo sv restart mysql
+ echo "restarting mysql with network"
+ fi
+
+ fi
+
+
+}
+
+
+function settimezone {
+#set the timezone
+if [ x"$timezone" = x ]
+then
+ timezone="unknown"
+fi
+rm ${BASE}/etc/localtime
+echo $timezone
+ln -s "/usr/share/zoneinfo/$timezone" ${BASE}/etc/localtime
+ sed -e "s~^TIMEZONE=.*$~TIMEZONE=\"${timezone}\"~" ${BASE}/etc/rc.conf > $TEMPLATES/rc.conf
+
+ # echo CLOCK="UTC" > ${BASE}/etc/conf.dclock
+ # echo CLOCK_SYSTOCH="yes" >> ${BASE}/etc/conf.d/clock
+ # echo TIMEZONE="$timezone" >> ${BASE}/etc/conf.d/clock
+cp $TEMPLATES/rc.conf /etc/rc.conf
+
+}
+
+
+function setupreceiver {
+ case $ReceiverType in
+ tinker) echo "do nothing"
+ ;;
+ Serial) echo "setup serial lirc"
+ sed -i -e '/.*#lirc/d' ${BASE}/etc/modules.mythvantage
+ echo "lirc_serial #lirc" >> ${BASE}/etc/modules.mythvantage
+ /usr/bin/load-modules-mythvantage.sh
+ ;;
+ Usb-imon) echo "setup receiver-usb-imon"
+ sed -i -e '/.*#lirc/d' ${BASE}/etc/modules.mythvantage
+ echo "lirc_imon #lirc" >> ${BASE}/etc/modules.mythvantage
+ /usr/bin/load-modules-mythvantage.sh
+ ;;
+ *) sed -i -e '/.*#lirc/d' ${BASE}/etc/modules.mythvantage
+ ;;
+ esac
+
+
+}
+
+function setupremote {
+ case $Remotetype in
+ no_remote) echo "No remote selected"
+ daemon_remove="lircd $daemon_remove"
+ ;;
+ tinker) echo "Remote in tinker mode"
+ ;;
+ *) echo "Setup remote"
+ mv ${BASE}/etc/lircd.conf ${BASE}/etc/lircd.conf.`date +%Y-%m-%d-%H-%M`
+ cd $TEMPLATES/remotes/$Remotetype
+ for i in lircd*
+ do
+ cat $i >> ${BASE}/etc/lircd.conf
+ done
+ cp lircrc ${BASE}/etc/lircrc
+ if [ -f $TEMPLATES/LCD/$LCDtype/lircrc ]
+ then
+ cat $TEMPLATES/LCD/$LCDtype/lircrc >> /etc/lircrc
+ cat $TEMPLATES/LCD/$LCDtype/lircd.conf >> /etc/lircd.conf
+ fi
+ if [ -f $TEMPLATES/transmit/$Blastertype/lircd.conf ]
+ then
+ cat $TEMPLATES/transmit/$Blastertype/lircd.conf >> ${BASE}/etc/lircd.conf
+ fi
+ chmod 755 /etc/lircrc
+ daemon_add="lircd $daemon_add"
+ sv hup lircd
+ ;;
+esac
+
+}
+
+function setupblaster {
+ #cd $TEMPLATES/transmit/$Blastertype
+ #for i in lircd*
+ #do
+ # cat lircd.conf >> ${BASE}/etc/lircd.conf
+ #done
+ # REMOTE_NAME${BASE}/usr/bin/change_chan.sh=`grep name lircd.conf* |awk -F" " ' { print $2 } '`
+ sed -e "s/^REMOTE_NAME=.*$/REMOTE_NAME=${Blastertype} /" $TEMPLATES/change_chan.sh > ${BASE}/usr/bin/change_chan.sh
+ chmod 755 ${BASE}/usr/bin/change_chan.sh
+ #channel change script change
+ setupremote
+
+}
+
+function setupevrouter {
+ if [ x$UseEvrouter = x1 ]
+ then
+ case x$EvrouterConfig in
+ xtinker )
+ echo "do nothing for evrouter"
+ ;;
+ x ) echo "empty evrouter"
+ ;;
+ * ) echo "setup evrouter for $EvrouterConfig "
+ cp $TEMPLATES/evrouter/$EvrouterConfig /etc/evrouter.cfg
+ daemon_add="evrouter Xvfb $daemon_remove"
+
+ ;;
+ esac
+ else
+ # disable evrouter
+ daemon_remove="evrouter Xvfb $daemon_remove"
+ fi
+
+
+
+
+}
+
+function setupLCD {
+ case x$LCDtype in
+ xtinker) echo "do nothing"
+ ;;
+ xno_lcd) echo "disabling lcd"
+ sv down lcdd
+ /usr/bin/load-modules-mythvantage.sh UNLOAD LCD
+ sed -i -e '/.*#LCD/d' ${BASE}/etc/modules.mythvantage
+ daemon_remove="lcdd $daemon_remove"
+ ;;
+ x) echo "empty lcd" ;;
+
+ *) echo "setup lcd"
+ if [ -f $TEMPLATES/LCD/$LCDtype/modules ]
+ then
+ sed -i -e '/.*#LCD/d' ${BASE}/etc/modules.mythvantage
+ cat $TEMPLATES/LCD/$LCDtype/modules >> ${BASE}/etc/modules.mythvantage
+ #should also modprobe
+ fi
+
+
+ if [ -f $TEMPLATES/LCD/$LCDtype/LCDd.conf ]
+ then
+ cp -f $TEMPLATES/LCD/$LCDtype/LCDd.conf /etc
+ # install="lcdproc $install"
+ daemon_add="lcdd $daemon_add"
+ /usr/bin/load-modules-mythvantage.sh
+ RESTART_FE="true"
+ RESTART_LCD="true"
+ fi
+ #check if lirc capable,if so then call setupremote
+ if [ -f $TEMPLATES/LCD/$LCDtype/lircrc ]
+ then
+ setupremote
+ fi
+ ;;
+ esac
+
+}
+
+
+
+function scrubnfs {
+ cp /etc/fstab $TEMPLATES/fstab.conf.template
+ grep -v nfs $TEMPLATES/fstab.conf.template > ${BASE}/etc/fstab
+ }
+
+function setupfstab () {
+# setupfstab $NFSserver $NFSshare $NFSmount
+ echo "$1 $2 nfs" >> ${BASE}/etc/fstab
+ if [ ! -e "$2" ]
+ then
+ mkdir -p "$2"
+ chown mythtv:mythtv "$2"
+ fi
+ if [ x$DCONFIG = x ]
+ then
+ mount $2 &
+ fi
+
+}
+
+function setupncidclient
+{
+ sed -e "s/^set Host.*$/set Host $dbhost /" $TEMPLATES/ncid.conf.template >${BASE}/etc/ncid/ncid.conf
+}
+
+function setupnciddaemon {
+ cp -f /etc/ncid/ncidd.conf $TEMPLATES/ncidd.conf.template
+ sed -e "s/.*set ttyport.*$/set ttyport = \/dev\/$nciddSerialPort /" $TEMPLATES/ncidd.conf.template >${BASE}/etc/ncid/ncidd.conf
+
+}
+
+function setupntp () {
+cat > ${BASE}/etc/ntp.conf << EOF
+# default restrictions
+restrict default noquery notrust nomodify
+# NTP drift file - used to keep track of your system clocks
+# time deviation
+driftfile /etc/ntp.drift
+
+# NTP log file
+logfile /var/log/ntp.log
+# override the default restrictions here, servers that can query
+restrict 192.168.0.0 mask 255.255.0.0 nomodify
+restrict 10.0.0.0 mask 255.0.00 nomodify
+
+#servers to sync with
+EOF
+ #this is used for backend or standlone types
+ if [ $1 = "1" ]
+ then
+ echo "server ntp1.cs.wisc.edu" >> ${BASE}/etc/ntp.conf
+ echo "server ntp3.sf-bay.org" >> ${BASE}/etc/ntp.conf
+ echo "restrict ntp1.cs.wisc.edu noquery nomodify" >> ${BASE}/etc/ntp.conf
+ echo "restrict ntp3.sf-bay.org noquery nomodify" >> ${BASE}/etc/ntp.conf
+
+ else
+ echo "server $dbhost" >> ${BASE}/etc/ntp.conf
+ echo "restrict $dbhost noquery nomodify" >> ${BASE}/etc/ntp.conf
+ fi
+
+
+}
+
+function setupplugins (){
+
+pkglistinstall=""
+pkglistremove=""
+#default enabled
+for i in mythcontrols mythgallery mythmovietime mythmusic mythsmolt mythvideo
+do
+eval pkgvalue=\$${i}
+
+if [ x$pkgvalue = x ]
+ then
+ pkglistinstall="$pkglistinstall $i$postfix"
+ else
+ if [ x$pkgvalue = x1 ]
+ then
+ pkglistinstall="$pkglistinstall $i$postfix"
+ else
+ pkglistremove="$pkglistremove $i$postfix"
+ fi
+ fi
+
+
+
+done
+
+
+
+#default disabled
+ for i in mythphone mytharchive mythbrowser mythnews mythgame mythflix mythweather
+ do
+eval pkgvalue=\$${i}
+
+if [ x$pkgvalue = x ]
+ then
+ pkglistremove="$pkglistremove $i$postfix"
+ else
+ if [ x$pkgvalue = x1 ]
+ then
+ pkglistinstall="$pkglistinstall $i$postfix"
+ else
+ pkglistremove="$pkglistremove $i$postfix"
+ fi
+ fi
+ done
+install="$pkglistinstall $install"
+remove="$pkglistremove $remove"
+
+}
+function LCDcheck () {
+ case x$LCDtype in
+ xtinker) echo "do nothing lcd "
+ ;;
+ xno_lcd) echo "no lcd "
+ ;;
+ xxosd) install="xosd lcdproc $install"
+ ;;
+ x) echo "lcd empty "
+ ;;
+ *)
+ install="lcdproc $install"
+ ;;
+esac
+}
+
+
+function packages () {
+#see which plugins need to be installed
+echo " Starting to install Packages"
+setupplugins
+LCDcheck
+if [ ! -f $PKGBLACKLIST ]
+then
+ touch $PKGBLACKLIST
+fi
+ for i in $remove
+ do
+ echo "-----------$i --------------"
+ grep -q $i $PKGBLACKLIST
+ if [ $? = 1 ]
+ then
+ pacman -Q $i 2>/dev/null
+ #VAR=`pacman -Q $i 2>&1 `
+ if [ $? = 0 ]
+ then
+ if [ $i = "mythweb$postfix" ]
+ then
+ pacman --noconfirm -R mythweb$postfix
+ echo removed $i
+ else
+ pacman --noconfirm -Rs $i
+ echo removed $i
+ fi
+ fi
+ else
+ echo "$i is black listed"
+ fi
+ done
+ # fi
+
+ for i in $install
+ do
+ echo "-----------$i --------------"
+ grep -q $i $PKGBLACKLIST
+ if [ $? = 1 ]
+ then
+ pacman -Q $i 2>/dev/null
+ #VAR=`pacman -Q $i 2>&1 `
+ # echo $VAR |grep -vq error:
+
+ if [ ! $? = 0 ]
+ then
+ pacman --noconfirm -Sf $i
+ echo installed $i
+ else
+ echo "$i already installed"
+ fi
+ else
+ echo "$i is black listed"
+ fi
+ done
+}
+
+function daemons {
+echo "Daemons on boot"
+
+ for i in $daemon_remove
+ do
+ sv check $i 1>/dev/null
+ status=$?
+ if [ $status -eq 0 ]
+ then
+ sv down $i
+ fi
+ remove_service.sh $i
+ done
+
+
+ for i in $daemon_add
+ do
+ sv check $i 1>/dev/null
+ status=$?
+ add_service.sh $i
+
+ if [ $status -eq 0 ]
+ then
+ case $i in
+ mysql*) sv hup $i
+ ;;
+ mythback*) sv hup $i
+ ;;
+ lirc* ) sv hup $i
+ ;;
+ frontend) sv check frontend 1>/dev/null
+ ;;
+
+ smbd ) sv hup $i
+ ;;
+ nmbd ) sv hup $i
+ ;;
+ evrouter) sv restart $i
+ ;;
+ *) sv down $i
+ sleep 1
+ sv up $i
+ ;;
+ esac
+ fi
+
+ done
+
+}
+
+
+function services
+{
+ser_install=""
+ser_daemon_add=""
+ser_remove=""
+ser_daemon_remove=""
+if [ x$UseEvrouter = x1 ]
+then
+ ser_daemon_add="evrouter Xvfb $ser_daemon_add"
+else
+ ser_daemon_remove="evrouter Xvfb $ser_remove"
+fi
+
+if [ x$RunDHCP = x1 ]
+then
+ ser_daemon_add="dnsmasq $ser_daemon_add"
+ ser_install="dnsmasq mvpmc $ser_install"
+
+else
+ ser_daemon_remove="dnsmasq $ser_daemon_remove"
+ ser_remove="dnsmasq mvpmc $ser_remove"
+fi
+
+if [ x$RunFrontend = x1 ]
+then
+ ser_daemon_add="frontend hal ghosd $ser_daemon_add"
+ ser_install="ghosd $ser_install"
+ showX=true
+ else
+ ser_daemon_remove="frontend hal $ser_daemon_remove"
+ ser_remove="$ser_remove"
+ fi
+
+if [ x$UseMythWEB = x1 ]
+then
+ ser_install="lighttpd mythweb$postfix $ser_install"
+ ser_daemon_add="lighttpd $ser_daemon_add"
+ else
+ ser_remove="mythweb$postfix $ser_remove"
+ ser_daemon_remove="$ser_daemon_remove"
+ fi
+
+#samba
+if [ x$UseSamba = x1 ]
+then
+ ser_install="samba $ser_install"
+ ser_daemon_add="nmbd smbd $ser_daemon_add "
+ if [ x$Samba_mediareadonly = x1 ]
+ then
+ smreadonly="no"
+ else
+ smreadonly="yes"
+ fi
+
+ if [ x$Samba_homereadonly = x1 ]
+ then
+ shreadonly="no"
+ else
+ shreadonly="yes"
+ fi
+
+ if [ ! -d ${BASE}/etc/samba ]
+ then
+ mkdir ${BASE}/etc/samba
+ fi
+
+ if [ -f ${BASE}/data/home/mythtv/templates/smb.conf ]
+ then
+ install -D -m755 ${BASE}/data/home/mythtv/templates/smb.conf ${BASE}/etc/samba/smb.conf
+ else
+ sed -e "s/^.*workgroup =.*$/ workgroup = $Samba_domain/g " \
+ -e "s/^.*server string = .*$/ server string = $hostname/g" $TEMPLATES/samba/smb.conf.template > ${BASE}/etc/samba/smb.conf
+
+ if [ x$Samba_media = "x1" ]
+ then
+ echo "include = /etc/samba/smb.conf.media" >> ${BASE}/etc/samba/smb.conf
+ sed -e "s/^.*writeable.*$/writeable = $smreadonly/g" $TEMPLATES/samba/smb.conf.media > ${BASE}/etc/samba/smb.conf.media
+ fi
+
+ if [ x$Samba_home = "x1" ]
+ then
+ echo "include = /etc/samba/smb.conf.home" >> ${BASE}/etc/samba/smb.conf
+ sed -e "s/^.*writeable.*$/writeable = $shreadonly/g" $TEMPLATES/samba/smb.conf.home > ${BASE}/etc/samba/smb.conf.home
+
+ fi
+
+ fi
+else
+ ser_remove="samba $ser_remove"
+ ser_install="smbclient $ser_install"
+ ser_daemon_remove="smbd nmbd $ser_daemon_remove"
+fi
+
+
+if [ x$UseNFS = x1 ]
+then
+ ser_install="nfs-utils portmap $ser_install"
+ ser_daemon_add="nfsd nfslock portmap $ser_daemon_add"
+ sed -e "s/REPLACEME/*/g" $TEMPLATES/exports.template > ${BASE}/etc/exports
+
+else
+ ser_remove="$ser_remove"
+ ser_daemon_remove="nfsd nfslock $ser_daemon_remove"
+fi
+
+if [ x$Runncidd = x1 ]
+then
+ ser_daemon_add="ncidd ncid $ser_daemon_add"
+ ser_install="ncid $ser_install"
+ else
+ ser_daemon_remove="ncidd ncid $ser_daemon_remove"
+ ser_remove="ncid $ser_remove"
+ fi
+
+#Setting the default, just to avoid the or statement..
+if [ x$UseHobbit = x ]
+then
+ UseHobbit=1
+fi
+
+if [ x$UseHobbit = x1 ]
+then
+ case $SystemType in
+ Standalone|Master_backend )
+ ser_daemon_add="hobbit $ser_daemon_add"
+ ser_install="hobbitserver $ser_install"
+ ;;
+
+ *) ser_daemon_add="hobbit-client $ser_daemon_add"
+ ser_install="hobbit-client $ser_install"
+ ;;
+ esac
+else
+ ser_daemon_remove="hobbit hobbit-client $ser_daemon_remove"
+ ser_remove="hobbit-client hobbitserver $ser_remove"
+ rm -f /data/srv/httpd/htdocs/hobbit/index.html
+
+ fi
+
+
+
+}
+
+
+
+function setupsleep {
+if [ x$AutoShutdown = x1 ]
+then
+ cronshutdowntime=""
+ if [ x$Shutdowntime != x-1 ]
+ then
+ cronshutdowntime=$Shutdowntime
+ fi
+ if [ x$Shutdowntime2 != x-1 ]
+ then
+ if [ x$cronshutdowntime = x ]
+ then
+ cronshutdowntime=$Shutdowntime2
+ else
+ cronshutdowntime="${cronshutdowntime},${Shutdowntime2}"
+ fi
+ fi
+
+ sed -e "s/HOUR/$cronshutdowntime/g" $TEMPLATES/cron.template | crontab - -u mythtv
+else
+ sed -e "/00 HOUR.*/d" $TEMPLATES/cron.template | crontab - -u mythtv
+fi
+
+}
+
+
+function setuppacman () {
+#setup link to httpd dir
+echo "Configuring pacman"
+ if [ ! x$1 = x ]
+ then
+ ln -s ${BASE}/data/var ${BASE}/data/srv/httpd/htdocs/repo
+ echo "creating the link for the pacman repo mirror"
+ fi
+
+ for i in mv-core mv-core-testing mv-extra mv-extra-testing
+ do
+ echo "[$i]" > ${BASE}/etc/pacman.d/$i
+ #add mirror if needed
+ if [ x$PKG_MIRROR = x1 ]
+ then
+ echo " Server = http://$dbhost/repo/$i " >> ${BASE}/etc/pacman.d/$i
+ fi
+ #add user templates
+ USERTEMPLATES="/data/home/mythtv/templates"
+ if [ -f $USERTEMPLATES/sources/$i ]
+ then
+ echo "Adding user $i"
+ cat $USERTEMPLATES/sources/$i >> ${BASE}/etc/pacman.d/$i
+ fi
+ cat $TEMPLATES/sources/$i >> ${BASE}/etc/pacman.d/$i
+ echo "setting local mirror to $dbhost for $i "
+ done
+
+ #sed -e "s/REPLACEME/$dbhost/g" $TEMPLATES/sources/svc_pkg > /etc/pacman.d/svc_pkg
+
+
+}
+
+
+function setupzipcode () {
+ if [ ! x$zipcode = x ]
+ then
+ ${MV_ROOT}/bin/restore_default_settings.sh -c ZIP -z $zipcode
+ fi
+}
+
+function process_nfsmap () {
+#first look for a local copy of nfsmap
+if [ $1 = noip ]
+then
+ if [ -f /data/home/mythtv/templates/nfsmap ]
+ then
+ NFSMAP="/data/home/mythtv/templates/nfsmap"
+ else
+ mv -f /tmp/nfsmap /tmp/nfsmap.old
+ wget -O /tmp/nfsmap http://$dbhost:1337/templates/nfsmap
+ if [ $? = 0 ]
+ then
+ NFSMAP="/tmp/nfsmap"
+ fi
+ fi
+else
+ mv -f /tmp/nfsmap /tmp/nfsmap.old
+ wget -O /tmp/nfsmap http://$1:1337/templates/nfsmap
+ if [ $? = 0 ]
+ then
+ NFSMAP="/tmp/nfsmap"
+ fi
+fi
+
+ if [ -f $NFSMAP ]
+ then
+ #read in file
+ while read line
+ do
+ NFSserver=`echo "$line"|cut -d" " -f1`
+ NFSmount=`echo "$line"|cut -d" " -f2`
+ setupfstab $NFSserver $NFSmount
+ done <$NFSMAP
+ else
+ echo "couldn't find nfsmap"
+
+ fi
+}
+
+function setupcnfs () {
+ scrubnfs
+ if [ $HaveCentralNFS = "yes" ]
+ then
+ case x$NFSserver in
+ xfile:nfsmap )
+ process_nfsmap noip
+ ;;
+ *:nfsmap )
+ nfsmapip=`echo "$NFSserver" | cut -d: -f1 `
+ process_nfsmap $nfsmapip
+ ;;
+ *) setupfstab $NFSserver $NFSmount
+ esac
+
+ #if [ ! x"$NFSserver" = "xfile:nfsmap" ]
+ #then
+ # setupfstab $NFSserver $NFSmount
+ #else
+ # process_nfsmap
+ #fi
+ else
+ echo "fe_nfs"
+ #if no central nfs found, then use the mbe.
+ if [ $SystemType = "Frontend_only" ]
+ then
+ setupfstab ${dbhost}:/data/media /data/media
+ fi
+ fi
+
+}
+
+function setupbootsplash () {
+
+if [ x$Usebootsplash = x1 ]
+then
+ COMMAND="%s/^default.*0/default 1/g"
+else
+ COMMAND="%s/^default.*1/default 0/g"
+fi
+
+ex ${BASE}/boot/grub/menu.lst <<EOF
+:$COMMAND
+:wq
+EOF
+
+}
+
+function setuphobbitclient () {
+COMMAND="%s/^BBDISP=.*$/BBDISP=$dbhost/g"
+
+
+ex ${BASE}/data/srv/hobbit/client/etc/hobbitclient.cfg <<EOF
+:$COMMAND
+:wq
+EOF
+
+}
+
+function setupSyslog () {
+COMMAND="%s/^destination d_remote.*$/destination d_remote \{tcp\(\"${dbhost}\" port\(514\)\) \;\} \;/"
+ex ${BASE}/etc/syslog-ng.conf <<EOF
+:$COMMAND
+:wq
+EOF
+
+
+
+
+}
+
+function setupfuncminion () {
+COMMAND="%s/^certmaster.*$/certmaster = ${dbhost}/"
+ex ${BASE}/etc/func/minion.conf <<EOF
+:$COMMAND
+:wq
+EOF
+}
+
+function setupDNSMASQ(){
+if [ x$RunDHCP = x1 ]
+then
+ echo "DNSMASQ setup"
+
+#set default route to my GW
+COMMAND="%s/^dhcp-option=3.*$/dhcp-option=3,${route}/"
+ex ${BASE}/etc/dnsmasq.conf <<EOF
+:$COMMAND
+:wq
+EOF
+
+#setup dns to my ip
+COMMAND="%s/^dhcp-option=6.*$/dhcp-option=6,${MYTHIP}/"
+ex ${BASE}/etc/dnsmasq.conf <<EOF
+:$COMMAND
+:wq
+EOF
+
+
+#change nfsroot to my ip
+COMMAND="%s/nfsroot=.*:/nfsroot=${MYTHIP}:/"
+ex ${BASE}/data/srv/tftp/pxelinux.cfg/default <<EOF
+:$COMMAND
+:wq
+EOF
+
+#add 127.0.0.1 to /etc/resolv.conf
+ echo "search lan" > ${BASE}/etc/resolv.conf
+ echo "nameserver 127.0.0.1" >> ${BASE}/etc/resolv.conf
+ echo "nameserver $nameserver" >> ${BASE}/etc/resolv.conf
+fi
+
+#setup dongle.config
+COMMAND="%s/mvpmc -f .*/mvpmc -f \/etc\/helvR10.fon -s ${MYTHIP} \& /"
+ex ${BASE}/data/srv/tftp/dongle.bin.config <<EOF
+:$COMMAND
+:wq
+EOF
+
+
+
+#setup dongle.config
+
+}
+
+function reloadfe(){
+ PID=`ps -ef |grep mythfrontend|grep -v grep |awk '{print $2 }'`
+ /usr/bin/backend_control.sh clearcache behost $dbhost
+ if [ x$RESTART_LCD = xtrue ]
+ then
+ killall -9 mythlcdserver
+ fi
+ kill -s USR1 $PID
+
+}
+
+
+function setup_db (){
+
+ install="mysql avahli"
+ daemon_add="mysql"
+ packages
+ daemons
+status=1
+mysqlstatus=1
+while [ ! $status = 0 ]
+do
+ sv stop mysql
+ sleep 1
+ sv start mysql
+ mysqlstatus=$?
+ if [ $mysqlstatus = 0 ]
+ then
+ mysql -e "show databases;"
+ showstatus=$?
+ if [ $showstatus = 0 ]
+ then
+ pacman --noconfirm -R mythdb-initial
+ pacman --noconfirm -S mythdb-initial
+ $MV_ROOT/bin/restore_default_settings.sh -c load
+ if [ $SystemType = "Master_backend" ]
+ then
+ $MV_ROOT/bin/restore_default_settings.sh -c BECONFIG -s master -a $dbhost
+ fi
+ #update database to allow user jobs on this host.
+ $MV_ROOT/bin/restore_default_settings.sh -c USERJOBALLOW
+ $MV_ROOT/bin/restore_default_settings.sh -c ACCESSCONTROL
+ if [ -d /data/srv/mysql/mythconverg ]
+ then
+ pacman --noconfirm -R webcalendar
+ pacman --noconfirm --nodeps -S webcalendar
+ status=0
+ fi
+ fi
+ fi
+done
+}
+
+
+#----------------------------------------------------MAIN PROGRAM-------------------------------------------
+#misc,sleep,hostype,advanced,audio
+eval LAST=\$$#
+LIST=`echo $LAST | tr , " " `
+
+hosttypechange="false"
+
+
+for i in $LIST
+ do
+ echo $i
+ case $i in
+ misc) showmisc="true"
+ ;;
+ sleep) showsleep="true"
+ ;;
+ hostype) showhost="true"
+ showX="true"
+ ;;
+ hostypec) hosttypechange="true"
+ ;;
+ advanced) showadvanced="true"
+ #showhost="true"
+ ;;
+ audio) showaudio="true"
+ ;;
+ network) shownetwork="true"
+ ;;
+ advancedX) showX="true"
+ ;;
+ restartfe) killall -9 mythfrontend
+ killall -9 mythwelcome
+ exit 0
+ ;;
+ reloadfe) reloadfe
+ ;;
+
+ this_is_install) MV_NEW_INSTALL="true"
+ ;;
+ NETINSTALL) RESTART_NETWORK="false"
+ NET_INSTALL="true"
+
+ esac
+ done
+
+if [ x$MV_NEW_INSTALL = xtrue ]
+then
+ hosttypechange="false"
+fi
+
+
+
+# exit 1
+
+#network
+if [ x"$shownetwork" = xtrue ]
+then
+ OLDHOSTNAME=`hostname`
+ NEWHOSTNAME=$hostname
+ if [ ! $OLDHOSTNAME = $NEWHOSTNAME ]
+ then
+ if [ ! x$NET_INSTALL = xtrue ]
+ then
+ ${MV_ROOT}/bin/restore_default_settings.sh -cuhostname -o -h$OLDHOSTNAME
+ RESTART_FE="true"
+ hostname $NEWHOSTNAME
+ if [ $SystemType != "Frontend_only" ]
+ then
+ sv restart mythbackend
+ fi
+ fi
+ fi
+
+ setup_network
+ vnc_check
+ if [ x$USEVNC = x1 ]
+ then
+ echo "reloading network"
+ ${BASE}/etc/net/scripts/network.init reload
+ else
+ echo "netboot/vnc, will not restart network"
+ fi
+fi
+
+
+if [ x$showhost = "xtrue" ]
+then
+case $SystemType in
+ Standalone)
+ setupntp 1
+ services
+ if [ x$hosttypechange = "xtrue" ]
+ then
+ setup_db
+ fi
+ if [ -f ${BASE}/etc/avahi/services/mysql.service ]
+ then
+ rm -f ${BASE}/etc/avahi/services/mysql.service
+ sudo sv restart avahi
+ fi
+
+ install="lighttpd mysql mythdb-initial avahli myth2ipod mythtv-status portmap local-website webcalendar php $ser_install"
+ remove="none $ser_remove"
+
+ daemon_add="lighttpd mysql mythbackend avahi portmap $ser_daemon_add"
+ daemon_remove="none $ser_daemon_remove"
+
+ ;;
+ Master_backend)
+ setupntp 1
+ services
+
+ if [ ! -f ${BASE}/etc/avahi/services/mysql.service ]
+ then
+ mkdir ${BASE}/etc/avahi/services
+ cp $TEMPLATES/mysql.service ${BASE}/etc/avahi/services/mysql.service
+ sudo sv restart avahi
+ fi
+
+ install="lighttpd local-website mysql mythdb-initial webcalendar php avahi portmap myth2ipod mythtv-status func $ser_install "
+ remove="$ser_remove"
+
+ daemon_add="lighttpd mysql mythbackend avahi portmap certmaster $ser_daemon_add"
+ daemon_remove="$ser_daemon_remove"
+ ;;
+ Slave_backend)
+ setupntp 0
+ services
+ if [ x$hosttypechange = "xtrue" ]
+ then
+ setup_db
+ fi
+ if [ -f ${BASE}/etc/avahi/services/mysql.service ]
+ then
+ rm -f ${BASE}/etc/avahi/services/mysql.service
+ sudo sv restart avahi
+ fi
+
+ #cp $TEMPLATES/mysql.service ${BASE}/etc/avahi/services/mysql.service
+ install="mysql avahi func $ser_install "
+ remove=" $ser_remove"
+
+ daemon_add="mythbackend avahi portmap mythtv-status funcd $ser_daemon_add"
+ daemon_remove="$ser_daemon_remove"
+ ;;
+ Frontend_only)
+ #Add values for services
+ setupntp 0
+ services
+ if [ -f ${BASE}/etc/avahi/services/mysql.service ]
+ then
+ rm -f ${BASE}/etc/avahi/services/mysql.service
+ sudo sv restart avahi
+ fi
+
+ install="libmysqlclient mysql-clients portmap avahi func $ser_install"
+ remove="mysql local-website lighttpd php mythweb$postfix $ser_remove"
+
+ daemon_add="avahi portmap funcd $ser_daemon_add "
+ daemon_remove="mysql lighttpd mythbackend $ser_daemon_remove"
+ ;;
+
+
+esac
+setupSyslog
+setupfuncminion
+fi
+
+#apply these to ALL types
+
+
+
+
+#systemtype
+
+if [ x$showhost = "xtrue" ]
+then
+ setupmysqlnetwork
+ setupmysql
+ setupremote
+ #grab the new dbhost key
+ /usr/bin/grabkey.py
+fi
+
+#audio
+
+if [ x$showaudio = "xtrue" ]
+then
+ #setupsoundtype
+ if [ ! x$Audiotype = xtinker ]
+ then
+ ${MV_ROOT}/bin/soundconfig.sh -t real -i $Audiotype -d $SoundDevice
+ fi
+fi
+
+#should always run
+packages
+
+#misc
+
+if [ x$showmisc = "xtrue" ]
+then
+ setupzipcode
+ settimezone
+ setupcnfs
+fi
+
+#sleep
+if [ x$showsleep = "xtrue" ]
+then
+ setupsleep
+fi
+
+if [ x$showX = "xtrue" ]
+then
+ ${MV_ROOT}/bin/xconfig.sh
+fi
+
+#advanced
+if [ x$showadvanced = "xtrue" ]
+then
+ if [ ! x$showhost = "xtrue" ]
+ then
+ services
+ install="none $ser_install"
+ remove="none $ser_remove"
+ daemon_add=" none $ser_daemon_add"
+ daemon_remove="none $ser_daemon_remove"
+ packages
+
+
+ if [ x$SystemType = xMaster_backend ]
+ then
+ setuppacman link
+ else
+ setuppacman
+ fi
+ fi
+ setupncidclient
+ setupnciddaemon
+ setupbootsplash
+ setuphobbitclient
+ setupreceiver
+ setupevrouter
+ setupblaster
+ setupLCD
+ setupDNSMASQ
+
+fi
+
+
+
+daemons
+#add check for lcd, and restart if needed.
+
+if [ x$RESTART_FE = xtrue ]
+then
+ reloadfe
+fi
+
+
+
+
+
+case $SystemType in
+ Standalone) smoltsystem=6
+ MVRELEASE="$MVRELEASE (Standalone)"
+ ;;
+ Master_backend)
+ if [ x$RunFrontend = x1 ]
+ then
+ smoltsystem=2
+ MVRELEASE="$MVRELEASE (MBE with Frontend)"
+ else
+ smoltsystem=1
+ MVRELEASE="$MVRELEASE (MBE)"
+ fi
+ ;;
+ Slave_backend)
+ if [ x$RunFrontend = x1 ]
+ then
+ smoltsystem=5
+ MVRELEASE="$MVRELEASE (SLAVE with Frontend)"
+ else
+ smoltsystem=5
+ MVRELEASE="$MVRELEASE (SLAVE)"
+ fi
+ ;;
+ Frontend_only)
+ smoltsystem=3
+ MVRELEASE="$MVRELEASE ( Frontend only)"
+ ;;
+esac
+echo $MVRELEASE > /etc/os_myth_release
+echo "systemtype=$smoltsystem" > /data/home/mythtv/.mythtv/smolt.info
+echo "remote=$Remotetype" >> /data/home/mythtv/.mythtv/smolt.info
+
diff --git a/abs/mv-core/MythVantage-config/templates/LCD/Shuttle-SG33/LCDd.conf b/abs/mv-core/MythVantage-config/templates/LCD/Shuttle-SG33/LCDd.conf
new file mode 100644
index 0000000..d49fbf6
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/LCD/Shuttle-SG33/LCDd.conf
@@ -0,0 +1,869 @@
+# LCDd.conf -- configuration file for the LCDproc server daemon LCDd
+#
+# This file contains the configuration for the LCDd server.
+#
+# The format is ini-file-like. It is divided into sections that start at
+# markers that look like [section]. Comments are all line-based comments,
+# and are lines that start with '#' or ';'.
+#
+# The server has a 'central' section named [server]. For the menu there is
+# a section called [menu]. Further each driver has a section which
+# defines how the driver acts.
+#
+# The drivers are activated by specifiying them in a driver= line in the
+# server section, like:
+#
+# Driver=curses
+#
+# This tells LCDd to use the curses driver.
+# The first driver that is loaded and is capable of output defines the
+# size of the display. The default driver to use is curses.
+# If the driver is specified using the -d <driver> command line option,
+# the Driver= options in the config file are ignored.
+#
+# The drivers read their own options from the respective sections.
+
+
+
+## Server section with all kinds of settings for the LCDd server ##
+[server]
+
+# Tells the server to load the given drivers. Multiple lines can be given.
+# The name of the driver is case sensitive and determines the section
+# where to look for further configuration options of the specific driver
+# as well as the name of the dynamic driver module to load at runtime.
+# The latter one can be changed by giving af File= directive in the
+# driver specific section.
+#
+# The following drivers are supported:
+# bayrad, CFontz, CFontz633, CFontzPacket, curses, CwLnx, EyeboxOne,
+# g15, glcdlib, glk, hd44780, icp_a106, imon, IOWarrior, irman,
+# joy, lb216,lcdm001, lcterm, lirc,MD8800, ms6931, mtc_s16209x,
+# MtxOrb, NoritakeVFD, pyramid, sed1330, sed1520, serialVFD,
+# sli, stv5730, svga, t6963, text, tyan, ula200, xosd
+Driver=shuttleVFD
+#Driver=curses
+
+# Tells the driver to bind to the given interface
+Bind=127.0.0.1
+
+# Listen on this specified port; defaults to 13666.
+Port=13666
+
+# Sets the reporting level; defaults to 2 (warnings and errors only).
+#ReportLevel=3
+
+# Should we report to syslog instead of stderr ? Default: no
+#ReportToSyslog=yes
+
+# Sets the default time in seconds to displays a screen.
+WaitTime=5
+
+# User to run as. LCDd will drop its root priviledges,
+# if any, and run as this user instead.
+User=nobody
+
+# If yes, the the serverscreen will be rotated as a usual info screen. If no,
+# it will be a background screen, only visible when no other screens are
+# active.
+#ServerScreen=no
+
+# The server will stay in the foreground if set to true.
+#Foreground=no
+
+# Where can we find the driver modules ?
+# IMPORTANT: Make sure to change this setting to reflect your
+# specific setup! Otherwise LCDd won't be able to find
+# the driver modules and will thus not be able to
+# function properly.
+# NOTE: Always place a slash as last character !
+DriverPath=/usr/lib/lcdproc/
+
+# The "...Key=" lines define what the server does with keypresses that
+# don't go to any client.
+# These are the defaults:
+ToggleRotateKey=Enter
+PrevScreenKey=Left
+NextScreenKey=Right
+#ScrollUpKey=Up
+#ScrollDownKey=Down
+
+# If you have only 4 keys, you can choose to use this:
+#ToggleRotateKey=Enter
+#PrevScreenKey=Up
+#NextScreenKey=Down
+
+# If you have only 3 keys, you can choose to use this:
+#ToggleRotateKey=Enter
+#PrevScreenKey=Up
+
+
+
+## The menu section. The menu is an internal LCDproc client. ##
+[menu]
+# You can configure what keys the menu should use. Note that the MenuKey
+# will be reserved exclusively, the others work in shared mode.
+
+# The following works excellent with 4 keys or more.
+MenuKey=Escape
+EnterKey=Enter
+UpKey=Up
+DownKey=Down
+# If you have 6 keys you may define these as well
+#LeftKey=Left
+#RightKey=Right
+
+# If you have only 3 keys, you could use something like this:
+#MenuKey=Escape
+#EnterKey=Enter
+#DownKey=Down
+
+
+
+### Driver sections are below this line, in alphabetical order ###
+
+
+## EMAC BayRAD driver ##
+[bayrad]
+
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/lcd
+
+# Set the communication speed [default: 9600; legal: 1200, 2400, 9600, 19200]
+Speed=9600
+
+
+
+## CrystalFontz driver (for CF632 & CF634) ##
+[CFontz]
+
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/ttyS0
+# Select the LCD size [default: 20x4]
+Size=20x4
+# Set the initial contrast [default: 560; legal: 0 - 1000]
+Contrast=350
+# Set the initial brightness [default: 255; legal: 0 - 255]
+Brightness=255
+# Set the initial off-brightness [default: 0; legal: 0 - 255]
+# This value is used when the display is normally
+# switched off in case LCDd is inactive
+OffBrightness=0
+# Set the communication speed [default: 9600; legal: 1200, 2400, 9600, 19200 or 115200]
+Speed=9600
+# Set the firmware version (New means >= 2.0) [default: no; legal: yes, no]
+NewFirmware=no
+# Reinitialize the LCD's BIOS [default: no; legal: yes, no]
+# normally you shouldn't need this
+Reboot=no
+
+
+
+## CrystalFontz633 driver (for CF633 only) ##
+[CFontz633]
+
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/ttyS0
+# Select the LCD type (size) [default: 16x2]
+Size=16x2
+# Set the initial contrast [default: 560; legal: 0 - 1000]
+Contrast=350
+# Set the initial brightness [default: 1000; legal: 0 - 1000]
+Brightness=1000
+# Set the initial off-brightness [default: 0; legal: 0 - 1000]
+# This value is used when the display is normally
+# switched off in case LCDd is inactive
+OffBrightness=50
+# Set the communication speed [default: 9600; legal: 1200, 2400, 9600, 19200, 115200]
+Speed=19200
+# Set the firmware version (New means >= 2.0) [default: no; legal: yes, no]
+# Currently this flag is not in use, there is no such thing as NewFirmware. ;=)
+#NewFirmware=no
+# Reinitialize the LCD's BIOS [default: no; legal: yes, no]
+# I want to reboot the LCD to make sure we start from a known state
+Reboot=yes
+
+
+
+## CrystalFontz packet driver (for CF631, CF633 & CF635) ##
+[CFontzPacket]
+
+# Select the LCD model [default: 633; legal: 631, 633, 635]
+Model=635
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/ttyUSB0
+# Select the LCD size [default: depending on model: 635: 20x4, 631: 20x2, 633: 16x2]
+Size=20x4
+# Set the initial contrast [default: 560; legal: 0 - 1000]
+Contrast=350
+# Set the initial brightness [default: 1000; legal: 0 - 1000]
+Brightness=1000
+# Set the initial off-brightness [default: 0; legal: 0 - 1000]
+# This value is used when the display is normally
+# switched off in case LCDd is inactive
+OffBrightness=50
+# Set the communication speed [default: 9600; legal: 1200, 2400, 9600, 19200, 115200]
+Speed=115200
+# Set the firmware version (New means >= 2.0) [default: no; legal: yes, no]
+# Currently this flag is not in use, there is no such thing as NewFirmware. ;=)
+#NewFirmware=no
+# Reinitialize the LCD's BIOS [default: no; legal: yes, no]
+# I want to reboot the LCD to make sure we start from a known state
+Reboot=yes
+
+
+
+## Curses driver ##
+[curses]
+
+# color settings
+# foreground color [default: blue]
+Foreground=blue
+# background color when "backlight" is off [default: cyan]
+Background=cyan
+# background color when "backlight" is on [default: red]
+Backlight=red
+
+# display size [default: 20x4]
+Size=20x4
+
+# What position (X,Y) to start the left top corner at...
+# Default: (7,7)
+TopLeftX=7
+TopLeftY=7
+
+# use ASC symbols for icons & bars [default: no; legal, yes, no]
+UseACS=no
+
+
+
+## Cwlinux driver ##
+[CwLnx]
+
+# Select the LCD model [default: 12232; legal: 12232, 1602]
+Model=12232
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/ttyUSB0
+
+# Select the LCD size [default: depending on model: 12232: 20x4, 1602: 16x2]
+Size=20x4
+
+# Set the communication speed [default: 19200; legal: 9600, 19200]
+Speed=19200
+
+# Reinitialize the LCD's BIOS [default: no; legal: yes, no]
+# normally you shouldn't need this
+Reboot=no
+
+# If you have a keypad connected. Keypad layout is currently not
+# configureable from the config file.
+Keypad=yes
+
+# If you have a non-standard keypad you can associate any keystrings to keys.
+# There are 6 input keys in the CwLnx hardware that generate characters
+# from 'A' to 'F'.
+#
+# The following is the built-in default mapping hardcoded in the driver.
+# You can leave those unchanged if you have a standard keypad.
+# You can change it if you want to report other keystrings or have a non
+# standard keypad.
+# KeyMap_A=Up
+# KeyMap_B=Down
+# KeyMap_C=Left
+# KeyMap_D=Right
+# KeyMap_E=Enter
+# KeyMap_F=Escape
+
+# keypad_test_mode permits to test keypad assignement
+# Default value is no
+#keypad_test_mode=yes
+
+
+
+## EyeboxOne driver ##
+[EyeboxOne]
+
+# Select the output device to use [default: /dev/ttyS1]
+#Device=/dev/cua01
+Device=/dev/ttyS1
+
+# Set the display size [default: 20x4]
+Size=20x4
+
+# Switch on the backlight? [default: yes]
+Backlight=yes
+
+# Switch on the cursor? [default: no]
+Cursor=no
+
+# Set the communication speed [default: 19200; legal: 1200, 2400, 9600, 19200]
+Speed=19200
+
+# Enter Key is a \r character, so it's hardcoded in the driver
+LeftKey=D
+RightKey=C
+UpKey=A
+DownKey=B
+EscapeKey=P
+
+# You can find out which key of your display sends which
+# character by setting keypad_test_mode to yes and running
+# LCDd. LCDd will output all characters it receives.
+# Afterwards you can modify the settings above and set
+# keypad_set_mode to no again.
+keypad_test_mode=no
+
+
+## g15 driver for Logitech G15 Keyboard LCDs ##
+[g15]
+
+# Display size (currently unused)
+size=20x5
+
+## glcdlib meta driver for graphical LCDs ##
+[glcdlib]
+
+## mandatory:
+
+# which graphical display supported by graphlcd-base to use [default: image]
+# (see /etc/graphlcd.conf for possible drivers)
+Driver=noritake800
+
+# no=use graphlcd bitmap fonts (they have only one size / font file)
+# yes=use fonts supported by FreeType2 (needs Freetype2 support in libglcdprocdriver and its dependants)
+UseFT2=yes
+
+# text resolution in fixed width characters [default: 16x4]
+# (if it won't fit according to available physical pixel resolutioni
+# and the minimum available font face size in pixels, then
+# 'DebugBorder' will automatically be turned on)
+TextResolution=20x4
+
+# path to font file to use
+FontFile=/usr/share/fonts/corefonts/courbd.ttf
+
+
+## these only apply if UseFT2=yes:
+
+# character encoding to use
+CharEncoding=iso8859-2
+
+# minumum size in pixels in which fonts should be rendered
+MinFontFaceSize=7x12
+
+
+## optional:
+Brightness=50 # Brightness (in %) if applicable
+Contrast=50 # Contrast (in %) if applicable
+Backlight=no # Backlight if applicable
+UpsideDown=no # flip image upside down
+Invert=no # invert light/dark pixels
+ShowDebugFrame=no # turns on/off 1 pixel thick debugging
+ # border whithin the usable text area,
+ # for setting up TextResolution and
+ # MinFontFaceSize (if using FT2);
+ShowBigBorder=no # border around the unused area
+ShowThinBorder=yes # border around the unused area
+PixelShiftX=0
+PixelShiftY=2
+
+
+
+## Matrix Orbital GLK driver ##
+[glk]
+
+# select the serial device to use [default: /dev/lcd]
+Device=/dev/lcd
+
+# set the initial contrast value [default: 560; legal: 0 - 1000]
+Contrast=560
+
+# set the serial port speed [default: 19200; legal: 9600, 19200, 38400]
+Speed=19200
+
+
+
+## Hitachi HD44780 driver ##
+[hd44780]
+
+# Select what type of connection. See documentation for types.
+ConnectionType=4bit
+
+# Port where the LPT is. Usual values are 0x278, 0x378 and 0x3BC
+Port=0x378
+
+# Device of the serial interface (default is /dev/lcd)
+Device=/dev/ttyS0
+
+# Bitrate of the serial port (0 for interface default)
+Speed=0
+
+# If you have a keypad connected.
+# You may also need to configure the keypad layout further on in this file.
+Keypad=no
+
+# set the initial contrast (for bwctusb only) [default: 0; legal: 0 - 1000]
+Contrast=0
+
+# If you have a switchable backlight.
+Backlight=no
+
+# If you have the additional output port ("bargraph") and you want to
+# be able to control it with the lcdproc OUTPUT command
+OutputPort=no
+
+# Specifies if the last line is pixel addressable or it controls an
+# underline effect. [default: true (= pixel addressable); legal: yes, no]
+#Lastline=true
+
+# Specifies the size of the LCD.
+# In case of multiple combined displays, this should be the total size.
+Size=20x4
+
+# For multiple combined displays: how many lines does each display have.
+# Vspan=2,2 means both displays have 2 lines.
+#vspan=2,2
+
+# If you have an HD66712, a KS0073 or an other 'almost HD44780-compatible',
+# set this flag to get into extended mode (4-line linear).
+# This flag is NOT the old obsolete Extended option.
+#ExtendedMode=yes
+
+# Character map to to map ISO-8859-1 to the LCD's character set
+# [default: hd44780_default; legal: hd44780_default, ea_ks0073 ]
+Charmap=hd44780_default
+
+# If your display is slow and cannot keep up with the flow of data from
+# LCDd, garbage can appear on the LCDd. Set this delay factor to 2 or 4
+# to increase the delays. Default: 1.
+#DelayMult=2
+
+# You can reduce the inserted delays by setting this to false.
+# On fast PCs it is possible your LCD does not respond correctly.
+# Default: true.
+DelayBus=true
+
+# If you have a keypad you can assign keystrings to the keys.
+# See documentation for used terms and how to wire it.
+# For example to give directly connected key 4 the string "Enter", use:
+# KeyDirect_4=Enter
+# For matrix keys use the X and Y coordinates of the key:
+# KeyMatrix_1_3=Enter
+KeyMatrix_4_1=Enter
+KeyMatrix_4_2=Up
+KeyMatrix_4_3=Down
+KeyMatrix_4_4=Escape
+
+
+
+## ICP A106 driver ##
+[icp_a106]
+Device=/dev/ttyS1
+
+
+
+## Code Mercenaries IO-Warrior driver ##
+[IOWarrior]
+
+# display dimensions
+Size=20x4
+
+# serial number [exactly as listed by usbview]
+# (if not given, the 1st IOWarrior found gets used)
+#SerialNumber=00000674
+
+# Specifies if the last line is pixel addressable or it controls an
+# underline effect. [default: true (= pixel addressable); legal: yes, no]
+#Lastline=true
+
+
+
+## Soundgraph/Ahanix/Silverstone/Uneed/Accent iMON driver ##
+[imon]
+
+# select the device to use
+Device=/dev/lcd0
+
+# display dimensions
+Size=16x2
+
+
+
+## IrMan driver ##
+[IrMan]
+#if in trouble with IrMan, try Lirc emulator for IrMan
+
+# Select the input device to use
+#Device=/dev/irman
+
+# Select the configuration file to use
+#Config=/etc/irman.cfg
+
+
+
+## Joystick driver ##
+[joy]
+
+# Select the input device to use [default: /dev/js0]
+Device=/dev/js0
+
+# set the axis map
+Map_Axis1neg=Left
+Map_Axis1pos=Right
+Map_Axis2neg=Up
+Map_Axis2pos=Down
+
+# set the button map
+Map_Button1=Enter
+Map_Button2=Escape
+
+
+
+## LB216 driver ##
+[lb216]
+
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/lcd
+
+# Set the initial brightness [default: 255; legal: 0 - 255]
+Brightness=255
+
+# Set the communication speed [default: 9600; legal: 2400, 9600]
+Speed=9600
+
+# Reinitialize the LCD's BIOS [default: no; legal: yes, no]
+Reboot=no
+
+
+
+## LCDM001 driver ##
+[lcdm001]
+
+Device=/dev/ttyS1
+
+# keypad settings
+# Keyname Function
+# Normal context Menu context
+# ------- -------------- ------------
+# PauseKey Pause/Continue Enter/select
+# BackKey Back(Go to previous screen) Up/Left
+# ForwardKey Forward(Go to next screen) Down/Right
+# MainMenuKey Open main menu Exit/Cancel
+PauseKey=LeftKey
+BackKey=UpKey
+ForwardKey=DownKey
+MainMenuKey=RightKey
+
+# You can rearrange the settings here.
+# If your device is broken, have a look at /usr/lib/lcdproc/lcdm001.h
+
+
+
+## HNE LCTerm driver ##
+[lcterm]
+Device=/dev/ttyS1
+Size=16x2
+
+
+
+## LIRC input driver ##
+[lirc]
+
+# Specify an alternative location of the lircrc file [default: ~/.lircrc]
+#lircrc=/etc/lircrc.lcdproc
+
+# Must be the same as in your lircrc
+#prog=lcdd
+
+
+
+##The driver for the VFD of the Medion MD8800 PC ##
+[MD8800]
+# device to use [default: /dev/ttyS1]
+#Device=/dev/ttyS1
+
+# display size [default: 16x2]
+#Size=16x2
+
+# Set the initial brightness [default: 1000; legal: 0 - 1000]
+Brightness=1000
+# Set the initial off-brightness [default: 0; legal: 0 - 1000]
+# This value is used when the display is normally
+# switched off in case LCDd is inactive
+OffBrightness=50
+
+
+
+## MSI MS-6931 driver for displays in 1HU servers ##
+[ms6931]
+
+# device to use [default: /dev/ttyS1]
+Device=/dev/ttyS1
+
+# display size [default: 16x2]
+#Size=16x2
+
+
+
+## MTC-S16209x driver ##
+[mtc_s16209x]
+
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/lcd
+
+# Set the initial brightness [default: 255; legal: 0 - 255]
+Brightness=255
+
+# Reinitialize the LCD's BIOS [default: no; legal: yes, no]
+Reboot=no
+
+
+
+## Matrix Orbital driver ##
+[MtxOrb]
+
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/ttyS0
+
+# Set the display size [default: 20x4]
+Size=20x4
+
+# Switch on the backlight? [default: yes]
+# NOTE: The driver will ignore this if the display is a vfd or vkd
+# as they crash if the backlight is turned off
+Backlight=yes
+
+# Set the initial contrast [default: 480]
+# NOTE: The driver will ignore this if the display
+# is a vfd or vkd as they don't have this feature
+Contrast=800
+
+# Set the communication speed [default: 19200; legal: 1200, 2400, 9600, 19200]
+Speed=19200
+
+# Set the display type [default: lcd; legal: lcd, lkd, vfd, vkd]
+Type=lkd
+
+# The following table translates from MtxOrb key letters to logical key namess.
+# By default no keys are mapped, meaning the keypad is not used at all.
+#KeyMap_A=Left
+#KeyMap_B=Right
+#KeyMap_C=Up
+#KeyMap_D=Down
+#KeyMap_E=Enter
+#KeyMap_F=Escape
+# See the [menu] section for an explanation of the key mappings
+
+# You can find out which key of your display sends which
+# character by setting keypad_test_mode to yes and running
+# LCDd. LCDd will output all characters it receives.
+# Afterwards you can modify the settings above and set
+# keypad_set_mode to no again.
+keypad_test_mode=no
+
+
+
+## Noritake VFD driver ##
+[NoritakeVFD]
+# device where the VFD is. Usual values are /dev/ttyS0 and /dev/ttyS1 [default: /dev/lcd]
+Device=/dev/ttyS0
+
+# Specifies the size of the LCD.
+Size=20x4
+
+# set the brightness
+Brightness=255
+
+# set the serial port speed [default: 9600, legal: 1200, 2400, 9600, 19200, 115200]
+Speed=9600
+
+# re-initialize VFD ?
+#Reboot=yes
+
+
+
+## Pyramid LCD driver ##
+[pyramid]
+
+# device to connect to [default: /dev/lcd]
+Device=/dev/ttyUSB0
+
+
+
+## Seiko Epson 1330 driver ##
+[sed1330]
+
+# Port where the LPT is. Common values are 0x278, 0x378 and 0x3BC
+Port=0x378
+
+# Type of LCD module (legal: G321D, G121C, G242C, G191D, G2446)
+# Note: G321D is the only one that is tested currently.
+Type=G321D
+
+
+
+## Seiko Epson 1520 driver ##
+[sed1520]
+
+# Port where the LPT is. Usual values are 0x278, 0x378 and 0x3BC
+Port=0x378
+
+
+
+## Serial VFD driver ##
+## Drives various (see below) serial 5x7dot VFD's. ##
+[serialVFD]
+
+# Specifies the displaytype.[default: 0]
+# 0 NEC (FIPC8367 based) VFDs.
+# 1 KD Rev 2.1.
+# 2 Noritake VFDs (*).
+# 3 Futaba VFDs
+# (* most should work, not testet yet.)
+Type=0
+
+# "no" if display connected serial, "yes" if connected parallel. [default: no(=serial)]
+use_parallel=no
+
+# Number of Custom-Characters [default: displaytype dependent]
+#Custom-Characters=0
+
+# Portaddress where the LPT is. Used in parallelmode only. Usual values are 0x278, 0x378 and 0x3BC
+Port=0x378
+
+# Device to use in serial mode. Usual values are /dev/ttyS0 and /dev/ttyS1
+Device=/dev/ttyS1
+
+# Specifies the size of the VFD.
+Size=20x2
+
+# Set the initial brightness [default: 1000; legal: 0 - 1000]
+# (4 steps 0-250, 251-500, 501-750, 751-1000)
+Brightness=1000
+# Set the initial off-brightness [default: 0; legal: 0 - 1000]
+# This value is used when the display is normally
+# switched off in case LCDd is inactive
+# (4 steps 0-250, 251-500, 501-750, 751-1000)
+OffBrightness=0
+
+# set the serial port speed [default: 9600; legal: 1200, 2400, 9600, 19200, 115200]
+Speed=9600
+
+# enable ISO 8859 1 compatibility [default: yes; legal: yes, no]
+#ISO_8859_1=yes
+
+
+
+## stv5730 driver ##
+[stv5730]
+
+# Port the device is connected to [default: 0x378]
+Port=0x378
+
+
+
+## SVGAlib driver ##
+[svga]
+
+# svgalib mode to use [default: G320x240x256; legal: supported svgalib modes]
+#Mode=G640x480x256
+
+# set display size [default: 20x4]
+Size=20x4
+
+# Set the initial contrast [default: 500; legal: 0 - 1000]
+# Can be set but does not change anything internally
+Contrast=500
+
+# Set the initial brightness [default: 1000; legal: 1 - 1000]
+Brightness=1000
+
+# Set the initial off-brightness [default: 500; legal: 1 - 1000]
+# This value is used when the display is normally
+# switched off in case LCDd is inactive
+OffBrightness=500
+
+
+
+## Text driver ##
+[text]
+# Set the display size [default: 20x4]
+Size=20x4
+
+
+
+## Toshiba T6963 driver ##
+[t6963]
+
+# set display size [default: 20x6]
+Size=20x6
+
+# port to use [default: 0x378; legal: 0x200 - 0x400]
+Port=0x378
+
+# Is ECP mode on? [default: yes; legal: yes, no]
+#ECPlpt=yes
+
+# Use graphics? [default: no; legal: yes, no]
+#graphic=no
+
+
+
+## Tyan Barebones LCD driver (GS10 & GS12 series) ##
+[tyan]
+
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/lcd
+
+# Set the communication speed [default: 9600; legal: 4800, 9600]
+Speed=9600
+
+# set display size [default: 16x2]
+Size=16x2
+
+
+
+## ELV ula200 driver ##
+[ula200]
+
+# Select the LCD size [default: 20x4]
+Size=20x4
+
+# If you have a non standard keypad you can associate any keystrings to keys.
+# There are 6 input key in the CwLnx hardware that generate characters
+# from 'A' to 'F'.
+#
+# The following it the built-in default mapping hardcoded in the driver.
+# You can leave those unchanged if you have a standard keypad.
+# You can change it if you want to report other keystrings or have a non
+# standard keypad.
+# KeyMap_A=Up
+# KeyMap_B=Down
+# KeyMap_C=Left
+# KeyMap_D=Right
+# KeyMap_E=Enter
+# KeyMap_F=Escape
+
+
+
+## Wirz SLI LCD driver ##
+[sli]
+
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/lcd
+
+# Set the communication speed [default: 19200; legal: 1200, 2400, 9600, 19200, 38400, 57600, 115200]
+Speed=19200
+
+
+
+## OnScreen Display using libxosd ##
+[xosd]
+
+# set display size [default: 20x4]
+Size=20x4
+
+# font to use
+Font=-*-terminus-*-r-*-*-*-320-*-*-*-*-*
+
+# EOF
diff --git a/abs/mv-core/MythVantage-config/templates/LCD/Silverstone/LCDd.conf b/abs/mv-core/MythVantage-config/templates/LCD/Silverstone/LCDd.conf
new file mode 100644
index 0000000..2596c25
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/LCD/Silverstone/LCDd.conf
@@ -0,0 +1,869 @@
+# LCDd.conf -- configuration file for the LCDproc server daemon LCDd
+#
+# This file contains the configuration for the LCDd server.
+#
+# The format is ini-file-like. It is divided into sections that start at
+# markers that look like [section]. Comments are all line-based comments,
+# and are lines that start with '#' or ';'.
+#
+# The server has a 'central' section named [server]. For the menu there is
+# a section called [menu]. Further each driver has a section which
+# defines how the driver acts.
+#
+# The drivers are activated by specifiying them in a driver= line in the
+# server section, like:
+#
+# Driver=curses
+#
+# This tells LCDd to use the curses driver.
+# The first driver that is loaded and is capable of output defines the
+# size of the display. The default driver to use is curses.
+# If the driver is specified using the -d <driver> command line option,
+# the Driver= options in the config file are ignored.
+#
+# The drivers read their own options from the respective sections.
+
+
+
+## Server section with all kinds of settings for the LCDd server ##
+[server]
+
+# Tells the server to load the given drivers. Multiple lines can be given.
+# The name of the driver is case sensitive and determines the section
+# where to look for further configuration options of the specific driver
+# as well as the name of the dynamic driver module to load at runtime.
+# The latter one can be changed by giving af File= directive in the
+# driver specific section.
+#
+# The following drivers are supported:
+# bayrad, CFontz, CFontz633, CFontzPacket, curses, CwLnx, EyeboxOne,
+# g15, glcdlib, glk, hd44780, icp_a106, imon, IOWarrior, irman,
+# joy, lb216,lcdm001, lcterm, lirc,MD8800, ms6931, mtc_s16209x,
+# MtxOrb, NoritakeVFD, pyramid, sed1330, sed1520, serialVFD,
+# sli, stv5730, svga, t6963, text, tyan, ula200, xosd
+Driver=imon
+#Driver=curses
+
+# Tells the driver to bind to the given interface
+Bind=127.0.0.1
+
+# Listen on this specified port; defaults to 13666.
+Port=13666
+
+# Sets the reporting level; defaults to 2 (warnings and errors only).
+#ReportLevel=3
+
+# Should we report to syslog instead of stderr ? Default: no
+#ReportToSyslog=yes
+
+# Sets the default time in seconds to displays a screen.
+WaitTime=5
+
+# User to run as. LCDd will drop its root priviledges,
+# if any, and run as this user instead.
+User=nobody
+
+# If yes, the the serverscreen will be rotated as a usual info screen. If no,
+# it will be a background screen, only visible when no other screens are
+# active.
+#ServerScreen=no
+
+# The server will stay in the foreground if set to true.
+#Foreground=no
+
+# Where can we find the driver modules ?
+# IMPORTANT: Make sure to change this setting to reflect your
+# specific setup! Otherwise LCDd won't be able to find
+# the driver modules and will thus not be able to
+# function properly.
+# NOTE: Always place a slash as last character !
+DriverPath=/usr/lib/lcdproc/
+
+# The "...Key=" lines define what the server does with keypresses that
+# don't go to any client.
+# These are the defaults:
+ToggleRotateKey=Enter
+PrevScreenKey=Left
+NextScreenKey=Right
+#ScrollUpKey=Up
+#ScrollDownKey=Down
+
+# If you have only 4 keys, you can choose to use this:
+#ToggleRotateKey=Enter
+#PrevScreenKey=Up
+#NextScreenKey=Down
+
+# If you have only 3 keys, you can choose to use this:
+#ToggleRotateKey=Enter
+#PrevScreenKey=Up
+
+
+
+## The menu section. The menu is an internal LCDproc client. ##
+[menu]
+# You can configure what keys the menu should use. Note that the MenuKey
+# will be reserved exclusively, the others work in shared mode.
+
+# The following works excellent with 4 keys or more.
+MenuKey=Escape
+EnterKey=Enter
+UpKey=Up
+DownKey=Down
+# If you have 6 keys you may define these as well
+#LeftKey=Left
+#RightKey=Right
+
+# If you have only 3 keys, you could use something like this:
+#MenuKey=Escape
+#EnterKey=Enter
+#DownKey=Down
+
+
+
+### Driver sections are below this line, in alphabetical order ###
+
+
+## EMAC BayRAD driver ##
+[bayrad]
+
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/lcd
+
+# Set the communication speed [default: 9600; legal: 1200, 2400, 9600, 19200]
+Speed=9600
+
+
+
+## CrystalFontz driver (for CF632 & CF634) ##
+[CFontz]
+
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/ttyS0
+# Select the LCD size [default: 20x4]
+Size=20x4
+# Set the initial contrast [default: 560; legal: 0 - 1000]
+Contrast=350
+# Set the initial brightness [default: 255; legal: 0 - 255]
+Brightness=255
+# Set the initial off-brightness [default: 0; legal: 0 - 255]
+# This value is used when the display is normally
+# switched off in case LCDd is inactive
+OffBrightness=0
+# Set the communication speed [default: 9600; legal: 1200, 2400, 9600, 19200 or 115200]
+Speed=9600
+# Set the firmware version (New means >= 2.0) [default: no; legal: yes, no]
+NewFirmware=no
+# Reinitialize the LCD's BIOS [default: no; legal: yes, no]
+# normally you shouldn't need this
+Reboot=no
+
+
+
+## CrystalFontz633 driver (for CF633 only) ##
+[CFontz633]
+
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/ttyS0
+# Select the LCD type (size) [default: 16x2]
+Size=16x2
+# Set the initial contrast [default: 560; legal: 0 - 1000]
+Contrast=350
+# Set the initial brightness [default: 1000; legal: 0 - 1000]
+Brightness=1000
+# Set the initial off-brightness [default: 0; legal: 0 - 1000]
+# This value is used when the display is normally
+# switched off in case LCDd is inactive
+OffBrightness=50
+# Set the communication speed [default: 9600; legal: 1200, 2400, 9600, 19200, 115200]
+Speed=19200
+# Set the firmware version (New means >= 2.0) [default: no; legal: yes, no]
+# Currently this flag is not in use, there is no such thing as NewFirmware. ;=)
+#NewFirmware=no
+# Reinitialize the LCD's BIOS [default: no; legal: yes, no]
+# I want to reboot the LCD to make sure we start from a known state
+Reboot=yes
+
+
+
+## CrystalFontz packet driver (for CF631, CF633 & CF635) ##
+[CFontzPacket]
+
+# Select the LCD model [default: 633; legal: 631, 633, 635]
+Model=635
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/ttyUSB0
+# Select the LCD size [default: depending on model: 635: 20x4, 631: 20x2, 633: 16x2]
+Size=20x4
+# Set the initial contrast [default: 560; legal: 0 - 1000]
+Contrast=350
+# Set the initial brightness [default: 1000; legal: 0 - 1000]
+Brightness=1000
+# Set the initial off-brightness [default: 0; legal: 0 - 1000]
+# This value is used when the display is normally
+# switched off in case LCDd is inactive
+OffBrightness=50
+# Set the communication speed [default: 9600; legal: 1200, 2400, 9600, 19200, 115200]
+Speed=115200
+# Set the firmware version (New means >= 2.0) [default: no; legal: yes, no]
+# Currently this flag is not in use, there is no such thing as NewFirmware. ;=)
+#NewFirmware=no
+# Reinitialize the LCD's BIOS [default: no; legal: yes, no]
+# I want to reboot the LCD to make sure we start from a known state
+Reboot=yes
+
+
+
+## Curses driver ##
+[curses]
+
+# color settings
+# foreground color [default: blue]
+Foreground=blue
+# background color when "backlight" is off [default: cyan]
+Background=cyan
+# background color when "backlight" is on [default: red]
+Backlight=red
+
+# display size [default: 20x4]
+Size=20x4
+
+# What position (X,Y) to start the left top corner at...
+# Default: (7,7)
+TopLeftX=7
+TopLeftY=7
+
+# use ASC symbols for icons & bars [default: no; legal, yes, no]
+UseACS=no
+
+
+
+## Cwlinux driver ##
+[CwLnx]
+
+# Select the LCD model [default: 12232; legal: 12232, 1602]
+Model=12232
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/ttyUSB0
+
+# Select the LCD size [default: depending on model: 12232: 20x4, 1602: 16x2]
+Size=20x4
+
+# Set the communication speed [default: 19200; legal: 9600, 19200]
+Speed=19200
+
+# Reinitialize the LCD's BIOS [default: no; legal: yes, no]
+# normally you shouldn't need this
+Reboot=no
+
+# If you have a keypad connected. Keypad layout is currently not
+# configureable from the config file.
+Keypad=yes
+
+# If you have a non-standard keypad you can associate any keystrings to keys.
+# There are 6 input keys in the CwLnx hardware that generate characters
+# from 'A' to 'F'.
+#
+# The following is the built-in default mapping hardcoded in the driver.
+# You can leave those unchanged if you have a standard keypad.
+# You can change it if you want to report other keystrings or have a non
+# standard keypad.
+# KeyMap_A=Up
+# KeyMap_B=Down
+# KeyMap_C=Left
+# KeyMap_D=Right
+# KeyMap_E=Enter
+# KeyMap_F=Escape
+
+# keypad_test_mode permits to test keypad assignement
+# Default value is no
+#keypad_test_mode=yes
+
+
+
+## EyeboxOne driver ##
+[EyeboxOne]
+
+# Select the output device to use [default: /dev/ttyS1]
+#Device=/dev/cua01
+Device=/dev/ttyS1
+
+# Set the display size [default: 20x4]
+Size=20x4
+
+# Switch on the backlight? [default: yes]
+Backlight=yes
+
+# Switch on the cursor? [default: no]
+Cursor=no
+
+# Set the communication speed [default: 19200; legal: 1200, 2400, 9600, 19200]
+Speed=19200
+
+# Enter Key is a \r character, so it's hardcoded in the driver
+LeftKey=D
+RightKey=C
+UpKey=A
+DownKey=B
+EscapeKey=P
+
+# You can find out which key of your display sends which
+# character by setting keypad_test_mode to yes and running
+# LCDd. LCDd will output all characters it receives.
+# Afterwards you can modify the settings above and set
+# keypad_set_mode to no again.
+keypad_test_mode=no
+
+
+## g15 driver for Logitech G15 Keyboard LCDs ##
+[g15]
+
+# Display size (currently unused)
+size=20x5
+
+## glcdlib meta driver for graphical LCDs ##
+[glcdlib]
+
+## mandatory:
+
+# which graphical display supported by graphlcd-base to use [default: image]
+# (see /etc/graphlcd.conf for possible drivers)
+Driver=noritake800
+
+# no=use graphlcd bitmap fonts (they have only one size / font file)
+# yes=use fonts supported by FreeType2 (needs Freetype2 support in libglcdprocdriver and its dependants)
+UseFT2=yes
+
+# text resolution in fixed width characters [default: 16x4]
+# (if it won't fit according to available physical pixel resolutioni
+# and the minimum available font face size in pixels, then
+# 'DebugBorder' will automatically be turned on)
+TextResolution=20x4
+
+# path to font file to use
+FontFile=/usr/share/fonts/corefonts/courbd.ttf
+
+
+## these only apply if UseFT2=yes:
+
+# character encoding to use
+CharEncoding=iso8859-2
+
+# minumum size in pixels in which fonts should be rendered
+MinFontFaceSize=7x12
+
+
+## optional:
+Brightness=50 # Brightness (in %) if applicable
+Contrast=50 # Contrast (in %) if applicable
+Backlight=no # Backlight if applicable
+UpsideDown=no # flip image upside down
+Invert=no # invert light/dark pixels
+ShowDebugFrame=no # turns on/off 1 pixel thick debugging
+ # border whithin the usable text area,
+ # for setting up TextResolution and
+ # MinFontFaceSize (if using FT2);
+ShowBigBorder=no # border around the unused area
+ShowThinBorder=yes # border around the unused area
+PixelShiftX=0
+PixelShiftY=2
+
+
+
+## Matrix Orbital GLK driver ##
+[glk]
+
+# select the serial device to use [default: /dev/lcd]
+Device=/dev/lcd
+
+# set the initial contrast value [default: 560; legal: 0 - 1000]
+Contrast=560
+
+# set the serial port speed [default: 19200; legal: 9600, 19200, 38400]
+Speed=19200
+
+
+
+## Hitachi HD44780 driver ##
+[hd44780]
+
+# Select what type of connection. See documentation for types.
+ConnectionType=4bit
+
+# Port where the LPT is. Usual values are 0x278, 0x378 and 0x3BC
+Port=0x378
+
+# Device of the serial interface (default is /dev/lcd)
+Device=/dev/ttyS0
+
+# Bitrate of the serial port (0 for interface default)
+Speed=0
+
+# If you have a keypad connected.
+# You may also need to configure the keypad layout further on in this file.
+Keypad=no
+
+# set the initial contrast (for bwctusb only) [default: 0; legal: 0 - 1000]
+Contrast=0
+
+# If you have a switchable backlight.
+Backlight=no
+
+# If you have the additional output port ("bargraph") and you want to
+# be able to control it with the lcdproc OUTPUT command
+OutputPort=no
+
+# Specifies if the last line is pixel addressable or it controls an
+# underline effect. [default: true (= pixel addressable); legal: yes, no]
+#Lastline=true
+
+# Specifies the size of the LCD.
+# In case of multiple combined displays, this should be the total size.
+Size=20x4
+
+# For multiple combined displays: how many lines does each display have.
+# Vspan=2,2 means both displays have 2 lines.
+#vspan=2,2
+
+# If you have an HD66712, a KS0073 or an other 'almost HD44780-compatible',
+# set this flag to get into extended mode (4-line linear).
+# This flag is NOT the old obsolete Extended option.
+#ExtendedMode=yes
+
+# Character map to to map ISO-8859-1 to the LCD's character set
+# [default: hd44780_default; legal: hd44780_default, ea_ks0073 ]
+Charmap=hd44780_default
+
+# If your display is slow and cannot keep up with the flow of data from
+# LCDd, garbage can appear on the LCDd. Set this delay factor to 2 or 4
+# to increase the delays. Default: 1.
+#DelayMult=2
+
+# You can reduce the inserted delays by setting this to false.
+# On fast PCs it is possible your LCD does not respond correctly.
+# Default: true.
+DelayBus=true
+
+# If you have a keypad you can assign keystrings to the keys.
+# See documentation for used terms and how to wire it.
+# For example to give directly connected key 4 the string "Enter", use:
+# KeyDirect_4=Enter
+# For matrix keys use the X and Y coordinates of the key:
+# KeyMatrix_1_3=Enter
+KeyMatrix_4_1=Enter
+KeyMatrix_4_2=Up
+KeyMatrix_4_3=Down
+KeyMatrix_4_4=Escape
+
+
+
+## ICP A106 driver ##
+[icp_a106]
+Device=/dev/ttyS1
+
+
+
+## Code Mercenaries IO-Warrior driver ##
+[IOWarrior]
+
+# display dimensions
+Size=20x4
+
+# serial number [exactly as listed by usbview]
+# (if not given, the 1st IOWarrior found gets used)
+#SerialNumber=00000674
+
+# Specifies if the last line is pixel addressable or it controls an
+# underline effect. [default: true (= pixel addressable); legal: yes, no]
+#Lastline=true
+
+
+
+## Soundgraph/Ahanix/Silverstone/Uneed/Accent iMON driver ##
+[imon]
+
+# select the device to use
+Device=/dev/lcd0
+
+# display dimensions
+Size=16x2
+
+
+
+## IrMan driver ##
+[IrMan]
+#if in trouble with IrMan, try Lirc emulator for IrMan
+
+# Select the input device to use
+#Device=/dev/irman
+
+# Select the configuration file to use
+#Config=/etc/irman.cfg
+
+
+
+## Joystick driver ##
+[joy]
+
+# Select the input device to use [default: /dev/js0]
+Device=/dev/js0
+
+# set the axis map
+Map_Axis1neg=Left
+Map_Axis1pos=Right
+Map_Axis2neg=Up
+Map_Axis2pos=Down
+
+# set the button map
+Map_Button1=Enter
+Map_Button2=Escape
+
+
+
+## LB216 driver ##
+[lb216]
+
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/lcd
+
+# Set the initial brightness [default: 255; legal: 0 - 255]
+Brightness=255
+
+# Set the communication speed [default: 9600; legal: 2400, 9600]
+Speed=9600
+
+# Reinitialize the LCD's BIOS [default: no; legal: yes, no]
+Reboot=no
+
+
+
+## LCDM001 driver ##
+[lcdm001]
+
+Device=/dev/ttyS1
+
+# keypad settings
+# Keyname Function
+# Normal context Menu context
+# ------- -------------- ------------
+# PauseKey Pause/Continue Enter/select
+# BackKey Back(Go to previous screen) Up/Left
+# ForwardKey Forward(Go to next screen) Down/Right
+# MainMenuKey Open main menu Exit/Cancel
+PauseKey=LeftKey
+BackKey=UpKey
+ForwardKey=DownKey
+MainMenuKey=RightKey
+
+# You can rearrange the settings here.
+# If your device is broken, have a look at /usr/lib/lcdproc/lcdm001.h
+
+
+
+## HNE LCTerm driver ##
+[lcterm]
+Device=/dev/ttyS1
+Size=16x2
+
+
+
+## LIRC input driver ##
+[lirc]
+
+# Specify an alternative location of the lircrc file [default: ~/.lircrc]
+#lircrc=/etc/lircrc.lcdproc
+
+# Must be the same as in your lircrc
+#prog=lcdd
+
+
+
+##The driver for the VFD of the Medion MD8800 PC ##
+[MD8800]
+# device to use [default: /dev/ttyS1]
+#Device=/dev/ttyS1
+
+# display size [default: 16x2]
+#Size=16x2
+
+# Set the initial brightness [default: 1000; legal: 0 - 1000]
+Brightness=1000
+# Set the initial off-brightness [default: 0; legal: 0 - 1000]
+# This value is used when the display is normally
+# switched off in case LCDd is inactive
+OffBrightness=50
+
+
+
+## MSI MS-6931 driver for displays in 1HU servers ##
+[ms6931]
+
+# device to use [default: /dev/ttyS1]
+Device=/dev/ttyS1
+
+# display size [default: 16x2]
+#Size=16x2
+
+
+
+## MTC-S16209x driver ##
+[mtc_s16209x]
+
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/lcd
+
+# Set the initial brightness [default: 255; legal: 0 - 255]
+Brightness=255
+
+# Reinitialize the LCD's BIOS [default: no; legal: yes, no]
+Reboot=no
+
+
+
+## Matrix Orbital driver ##
+[MtxOrb]
+
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/ttyS0
+
+# Set the display size [default: 20x4]
+Size=20x4
+
+# Switch on the backlight? [default: yes]
+# NOTE: The driver will ignore this if the display is a vfd or vkd
+# as they crash if the backlight is turned off
+Backlight=yes
+
+# Set the initial contrast [default: 480]
+# NOTE: The driver will ignore this if the display
+# is a vfd or vkd as they don't have this feature
+Contrast=800
+
+# Set the communication speed [default: 19200; legal: 1200, 2400, 9600, 19200]
+Speed=19200
+
+# Set the display type [default: lcd; legal: lcd, lkd, vfd, vkd]
+Type=lkd
+
+# The following table translates from MtxOrb key letters to logical key namess.
+# By default no keys are mapped, meaning the keypad is not used at all.
+#KeyMap_A=Left
+#KeyMap_B=Right
+#KeyMap_C=Up
+#KeyMap_D=Down
+#KeyMap_E=Enter
+#KeyMap_F=Escape
+# See the [menu] section for an explanation of the key mappings
+
+# You can find out which key of your display sends which
+# character by setting keypad_test_mode to yes and running
+# LCDd. LCDd will output all characters it receives.
+# Afterwards you can modify the settings above and set
+# keypad_set_mode to no again.
+keypad_test_mode=no
+
+
+
+## Noritake VFD driver ##
+[NoritakeVFD]
+# device where the VFD is. Usual values are /dev/ttyS0 and /dev/ttyS1 [default: /dev/lcd]
+Device=/dev/ttyS0
+
+# Specifies the size of the LCD.
+Size=20x4
+
+# set the brightness
+Brightness=255
+
+# set the serial port speed [default: 9600, legal: 1200, 2400, 9600, 19200, 115200]
+Speed=9600
+
+# re-initialize VFD ?
+#Reboot=yes
+
+
+
+## Pyramid LCD driver ##
+[pyramid]
+
+# device to connect to [default: /dev/lcd]
+Device=/dev/ttyUSB0
+
+
+
+## Seiko Epson 1330 driver ##
+[sed1330]
+
+# Port where the LPT is. Common values are 0x278, 0x378 and 0x3BC
+Port=0x378
+
+# Type of LCD module (legal: G321D, G121C, G242C, G191D, G2446)
+# Note: G321D is the only one that is tested currently.
+Type=G321D
+
+
+
+## Seiko Epson 1520 driver ##
+[sed1520]
+
+# Port where the LPT is. Usual values are 0x278, 0x378 and 0x3BC
+Port=0x378
+
+
+
+## Serial VFD driver ##
+## Drives various (see below) serial 5x7dot VFD's. ##
+[serialVFD]
+
+# Specifies the displaytype.[default: 0]
+# 0 NEC (FIPC8367 based) VFDs.
+# 1 KD Rev 2.1.
+# 2 Noritake VFDs (*).
+# 3 Futaba VFDs
+# (* most should work, not testet yet.)
+Type=0
+
+# "no" if display connected serial, "yes" if connected parallel. [default: no(=serial)]
+use_parallel=no
+
+# Number of Custom-Characters [default: displaytype dependent]
+#Custom-Characters=0
+
+# Portaddress where the LPT is. Used in parallelmode only. Usual values are 0x278, 0x378 and 0x3BC
+Port=0x378
+
+# Device to use in serial mode. Usual values are /dev/ttyS0 and /dev/ttyS1
+Device=/dev/ttyS1
+
+# Specifies the size of the VFD.
+Size=20x2
+
+# Set the initial brightness [default: 1000; legal: 0 - 1000]
+# (4 steps 0-250, 251-500, 501-750, 751-1000)
+Brightness=1000
+# Set the initial off-brightness [default: 0; legal: 0 - 1000]
+# This value is used when the display is normally
+# switched off in case LCDd is inactive
+# (4 steps 0-250, 251-500, 501-750, 751-1000)
+OffBrightness=0
+
+# set the serial port speed [default: 9600; legal: 1200, 2400, 9600, 19200, 115200]
+Speed=9600
+
+# enable ISO 8859 1 compatibility [default: yes; legal: yes, no]
+#ISO_8859_1=yes
+
+
+
+## stv5730 driver ##
+[stv5730]
+
+# Port the device is connected to [default: 0x378]
+Port=0x378
+
+
+
+## SVGAlib driver ##
+[svga]
+
+# svgalib mode to use [default: G320x240x256; legal: supported svgalib modes]
+#Mode=G640x480x256
+
+# set display size [default: 20x4]
+Size=20x4
+
+# Set the initial contrast [default: 500; legal: 0 - 1000]
+# Can be set but does not change anything internally
+Contrast=500
+
+# Set the initial brightness [default: 1000; legal: 1 - 1000]
+Brightness=1000
+
+# Set the initial off-brightness [default: 500; legal: 1 - 1000]
+# This value is used when the display is normally
+# switched off in case LCDd is inactive
+OffBrightness=500
+
+
+
+## Text driver ##
+[text]
+# Set the display size [default: 20x4]
+Size=20x4
+
+
+
+## Toshiba T6963 driver ##
+[t6963]
+
+# set display size [default: 20x6]
+Size=20x6
+
+# port to use [default: 0x378; legal: 0x200 - 0x400]
+Port=0x378
+
+# Is ECP mode on? [default: yes; legal: yes, no]
+#ECPlpt=yes
+
+# Use graphics? [default: no; legal: yes, no]
+#graphic=no
+
+
+
+## Tyan Barebones LCD driver (GS10 & GS12 series) ##
+[tyan]
+
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/lcd
+
+# Set the communication speed [default: 9600; legal: 4800, 9600]
+Speed=9600
+
+# set display size [default: 16x2]
+Size=16x2
+
+
+
+## ELV ula200 driver ##
+[ula200]
+
+# Select the LCD size [default: 20x4]
+Size=20x4
+
+# If you have a non standard keypad you can associate any keystrings to keys.
+# There are 6 input key in the CwLnx hardware that generate characters
+# from 'A' to 'F'.
+#
+# The following it the built-in default mapping hardcoded in the driver.
+# You can leave those unchanged if you have a standard keypad.
+# You can change it if you want to report other keystrings or have a non
+# standard keypad.
+# KeyMap_A=Up
+# KeyMap_B=Down
+# KeyMap_C=Left
+# KeyMap_D=Right
+# KeyMap_E=Enter
+# KeyMap_F=Escape
+
+
+
+## Wirz SLI LCD driver ##
+[sli]
+
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/lcd
+
+# Set the communication speed [default: 19200; legal: 1200, 2400, 9600, 19200, 38400, 57600, 115200]
+Speed=19200
+
+
+
+## OnScreen Display using libxosd ##
+[xosd]
+
+# set display size [default: 20x4]
+Size=20x4
+
+# font to use
+Font=-*-terminus-*-r-*-*-*-320-*-*-*-*-*
+
+# EOF
diff --git a/abs/mv-core/MythVantage-config/templates/LCD/Silverstone/modules b/abs/mv-core/MythVantage-config/templates/LCD/Silverstone/modules
new file mode 100644
index 0000000..cd576c3
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/LCD/Silverstone/modules
@@ -0,0 +1 @@
+lirc_imon #LCD
diff --git a/abs/mv-core/MythVantage-config/templates/LCD/antec_fusion/LCDd.conf b/abs/mv-core/MythVantage-config/templates/LCD/antec_fusion/LCDd.conf
new file mode 100644
index 0000000..2596c25
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/LCD/antec_fusion/LCDd.conf
@@ -0,0 +1,869 @@
+# LCDd.conf -- configuration file for the LCDproc server daemon LCDd
+#
+# This file contains the configuration for the LCDd server.
+#
+# The format is ini-file-like. It is divided into sections that start at
+# markers that look like [section]. Comments are all line-based comments,
+# and are lines that start with '#' or ';'.
+#
+# The server has a 'central' section named [server]. For the menu there is
+# a section called [menu]. Further each driver has a section which
+# defines how the driver acts.
+#
+# The drivers are activated by specifiying them in a driver= line in the
+# server section, like:
+#
+# Driver=curses
+#
+# This tells LCDd to use the curses driver.
+# The first driver that is loaded and is capable of output defines the
+# size of the display. The default driver to use is curses.
+# If the driver is specified using the -d <driver> command line option,
+# the Driver= options in the config file are ignored.
+#
+# The drivers read their own options from the respective sections.
+
+
+
+## Server section with all kinds of settings for the LCDd server ##
+[server]
+
+# Tells the server to load the given drivers. Multiple lines can be given.
+# The name of the driver is case sensitive and determines the section
+# where to look for further configuration options of the specific driver
+# as well as the name of the dynamic driver module to load at runtime.
+# The latter one can be changed by giving af File= directive in the
+# driver specific section.
+#
+# The following drivers are supported:
+# bayrad, CFontz, CFontz633, CFontzPacket, curses, CwLnx, EyeboxOne,
+# g15, glcdlib, glk, hd44780, icp_a106, imon, IOWarrior, irman,
+# joy, lb216,lcdm001, lcterm, lirc,MD8800, ms6931, mtc_s16209x,
+# MtxOrb, NoritakeVFD, pyramid, sed1330, sed1520, serialVFD,
+# sli, stv5730, svga, t6963, text, tyan, ula200, xosd
+Driver=imon
+#Driver=curses
+
+# Tells the driver to bind to the given interface
+Bind=127.0.0.1
+
+# Listen on this specified port; defaults to 13666.
+Port=13666
+
+# Sets the reporting level; defaults to 2 (warnings and errors only).
+#ReportLevel=3
+
+# Should we report to syslog instead of stderr ? Default: no
+#ReportToSyslog=yes
+
+# Sets the default time in seconds to displays a screen.
+WaitTime=5
+
+# User to run as. LCDd will drop its root priviledges,
+# if any, and run as this user instead.
+User=nobody
+
+# If yes, the the serverscreen will be rotated as a usual info screen. If no,
+# it will be a background screen, only visible when no other screens are
+# active.
+#ServerScreen=no
+
+# The server will stay in the foreground if set to true.
+#Foreground=no
+
+# Where can we find the driver modules ?
+# IMPORTANT: Make sure to change this setting to reflect your
+# specific setup! Otherwise LCDd won't be able to find
+# the driver modules and will thus not be able to
+# function properly.
+# NOTE: Always place a slash as last character !
+DriverPath=/usr/lib/lcdproc/
+
+# The "...Key=" lines define what the server does with keypresses that
+# don't go to any client.
+# These are the defaults:
+ToggleRotateKey=Enter
+PrevScreenKey=Left
+NextScreenKey=Right
+#ScrollUpKey=Up
+#ScrollDownKey=Down
+
+# If you have only 4 keys, you can choose to use this:
+#ToggleRotateKey=Enter
+#PrevScreenKey=Up
+#NextScreenKey=Down
+
+# If you have only 3 keys, you can choose to use this:
+#ToggleRotateKey=Enter
+#PrevScreenKey=Up
+
+
+
+## The menu section. The menu is an internal LCDproc client. ##
+[menu]
+# You can configure what keys the menu should use. Note that the MenuKey
+# will be reserved exclusively, the others work in shared mode.
+
+# The following works excellent with 4 keys or more.
+MenuKey=Escape
+EnterKey=Enter
+UpKey=Up
+DownKey=Down
+# If you have 6 keys you may define these as well
+#LeftKey=Left
+#RightKey=Right
+
+# If you have only 3 keys, you could use something like this:
+#MenuKey=Escape
+#EnterKey=Enter
+#DownKey=Down
+
+
+
+### Driver sections are below this line, in alphabetical order ###
+
+
+## EMAC BayRAD driver ##
+[bayrad]
+
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/lcd
+
+# Set the communication speed [default: 9600; legal: 1200, 2400, 9600, 19200]
+Speed=9600
+
+
+
+## CrystalFontz driver (for CF632 & CF634) ##
+[CFontz]
+
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/ttyS0
+# Select the LCD size [default: 20x4]
+Size=20x4
+# Set the initial contrast [default: 560; legal: 0 - 1000]
+Contrast=350
+# Set the initial brightness [default: 255; legal: 0 - 255]
+Brightness=255
+# Set the initial off-brightness [default: 0; legal: 0 - 255]
+# This value is used when the display is normally
+# switched off in case LCDd is inactive
+OffBrightness=0
+# Set the communication speed [default: 9600; legal: 1200, 2400, 9600, 19200 or 115200]
+Speed=9600
+# Set the firmware version (New means >= 2.0) [default: no; legal: yes, no]
+NewFirmware=no
+# Reinitialize the LCD's BIOS [default: no; legal: yes, no]
+# normally you shouldn't need this
+Reboot=no
+
+
+
+## CrystalFontz633 driver (for CF633 only) ##
+[CFontz633]
+
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/ttyS0
+# Select the LCD type (size) [default: 16x2]
+Size=16x2
+# Set the initial contrast [default: 560; legal: 0 - 1000]
+Contrast=350
+# Set the initial brightness [default: 1000; legal: 0 - 1000]
+Brightness=1000
+# Set the initial off-brightness [default: 0; legal: 0 - 1000]
+# This value is used when the display is normally
+# switched off in case LCDd is inactive
+OffBrightness=50
+# Set the communication speed [default: 9600; legal: 1200, 2400, 9600, 19200, 115200]
+Speed=19200
+# Set the firmware version (New means >= 2.0) [default: no; legal: yes, no]
+# Currently this flag is not in use, there is no such thing as NewFirmware. ;=)
+#NewFirmware=no
+# Reinitialize the LCD's BIOS [default: no; legal: yes, no]
+# I want to reboot the LCD to make sure we start from a known state
+Reboot=yes
+
+
+
+## CrystalFontz packet driver (for CF631, CF633 & CF635) ##
+[CFontzPacket]
+
+# Select the LCD model [default: 633; legal: 631, 633, 635]
+Model=635
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/ttyUSB0
+# Select the LCD size [default: depending on model: 635: 20x4, 631: 20x2, 633: 16x2]
+Size=20x4
+# Set the initial contrast [default: 560; legal: 0 - 1000]
+Contrast=350
+# Set the initial brightness [default: 1000; legal: 0 - 1000]
+Brightness=1000
+# Set the initial off-brightness [default: 0; legal: 0 - 1000]
+# This value is used when the display is normally
+# switched off in case LCDd is inactive
+OffBrightness=50
+# Set the communication speed [default: 9600; legal: 1200, 2400, 9600, 19200, 115200]
+Speed=115200
+# Set the firmware version (New means >= 2.0) [default: no; legal: yes, no]
+# Currently this flag is not in use, there is no such thing as NewFirmware. ;=)
+#NewFirmware=no
+# Reinitialize the LCD's BIOS [default: no; legal: yes, no]
+# I want to reboot the LCD to make sure we start from a known state
+Reboot=yes
+
+
+
+## Curses driver ##
+[curses]
+
+# color settings
+# foreground color [default: blue]
+Foreground=blue
+# background color when "backlight" is off [default: cyan]
+Background=cyan
+# background color when "backlight" is on [default: red]
+Backlight=red
+
+# display size [default: 20x4]
+Size=20x4
+
+# What position (X,Y) to start the left top corner at...
+# Default: (7,7)
+TopLeftX=7
+TopLeftY=7
+
+# use ASC symbols for icons & bars [default: no; legal, yes, no]
+UseACS=no
+
+
+
+## Cwlinux driver ##
+[CwLnx]
+
+# Select the LCD model [default: 12232; legal: 12232, 1602]
+Model=12232
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/ttyUSB0
+
+# Select the LCD size [default: depending on model: 12232: 20x4, 1602: 16x2]
+Size=20x4
+
+# Set the communication speed [default: 19200; legal: 9600, 19200]
+Speed=19200
+
+# Reinitialize the LCD's BIOS [default: no; legal: yes, no]
+# normally you shouldn't need this
+Reboot=no
+
+# If you have a keypad connected. Keypad layout is currently not
+# configureable from the config file.
+Keypad=yes
+
+# If you have a non-standard keypad you can associate any keystrings to keys.
+# There are 6 input keys in the CwLnx hardware that generate characters
+# from 'A' to 'F'.
+#
+# The following is the built-in default mapping hardcoded in the driver.
+# You can leave those unchanged if you have a standard keypad.
+# You can change it if you want to report other keystrings or have a non
+# standard keypad.
+# KeyMap_A=Up
+# KeyMap_B=Down
+# KeyMap_C=Left
+# KeyMap_D=Right
+# KeyMap_E=Enter
+# KeyMap_F=Escape
+
+# keypad_test_mode permits to test keypad assignement
+# Default value is no
+#keypad_test_mode=yes
+
+
+
+## EyeboxOne driver ##
+[EyeboxOne]
+
+# Select the output device to use [default: /dev/ttyS1]
+#Device=/dev/cua01
+Device=/dev/ttyS1
+
+# Set the display size [default: 20x4]
+Size=20x4
+
+# Switch on the backlight? [default: yes]
+Backlight=yes
+
+# Switch on the cursor? [default: no]
+Cursor=no
+
+# Set the communication speed [default: 19200; legal: 1200, 2400, 9600, 19200]
+Speed=19200
+
+# Enter Key is a \r character, so it's hardcoded in the driver
+LeftKey=D
+RightKey=C
+UpKey=A
+DownKey=B
+EscapeKey=P
+
+# You can find out which key of your display sends which
+# character by setting keypad_test_mode to yes and running
+# LCDd. LCDd will output all characters it receives.
+# Afterwards you can modify the settings above and set
+# keypad_set_mode to no again.
+keypad_test_mode=no
+
+
+## g15 driver for Logitech G15 Keyboard LCDs ##
+[g15]
+
+# Display size (currently unused)
+size=20x5
+
+## glcdlib meta driver for graphical LCDs ##
+[glcdlib]
+
+## mandatory:
+
+# which graphical display supported by graphlcd-base to use [default: image]
+# (see /etc/graphlcd.conf for possible drivers)
+Driver=noritake800
+
+# no=use graphlcd bitmap fonts (they have only one size / font file)
+# yes=use fonts supported by FreeType2 (needs Freetype2 support in libglcdprocdriver and its dependants)
+UseFT2=yes
+
+# text resolution in fixed width characters [default: 16x4]
+# (if it won't fit according to available physical pixel resolutioni
+# and the minimum available font face size in pixels, then
+# 'DebugBorder' will automatically be turned on)
+TextResolution=20x4
+
+# path to font file to use
+FontFile=/usr/share/fonts/corefonts/courbd.ttf
+
+
+## these only apply if UseFT2=yes:
+
+# character encoding to use
+CharEncoding=iso8859-2
+
+# minumum size in pixels in which fonts should be rendered
+MinFontFaceSize=7x12
+
+
+## optional:
+Brightness=50 # Brightness (in %) if applicable
+Contrast=50 # Contrast (in %) if applicable
+Backlight=no # Backlight if applicable
+UpsideDown=no # flip image upside down
+Invert=no # invert light/dark pixels
+ShowDebugFrame=no # turns on/off 1 pixel thick debugging
+ # border whithin the usable text area,
+ # for setting up TextResolution and
+ # MinFontFaceSize (if using FT2);
+ShowBigBorder=no # border around the unused area
+ShowThinBorder=yes # border around the unused area
+PixelShiftX=0
+PixelShiftY=2
+
+
+
+## Matrix Orbital GLK driver ##
+[glk]
+
+# select the serial device to use [default: /dev/lcd]
+Device=/dev/lcd
+
+# set the initial contrast value [default: 560; legal: 0 - 1000]
+Contrast=560
+
+# set the serial port speed [default: 19200; legal: 9600, 19200, 38400]
+Speed=19200
+
+
+
+## Hitachi HD44780 driver ##
+[hd44780]
+
+# Select what type of connection. See documentation for types.
+ConnectionType=4bit
+
+# Port where the LPT is. Usual values are 0x278, 0x378 and 0x3BC
+Port=0x378
+
+# Device of the serial interface (default is /dev/lcd)
+Device=/dev/ttyS0
+
+# Bitrate of the serial port (0 for interface default)
+Speed=0
+
+# If you have a keypad connected.
+# You may also need to configure the keypad layout further on in this file.
+Keypad=no
+
+# set the initial contrast (for bwctusb only) [default: 0; legal: 0 - 1000]
+Contrast=0
+
+# If you have a switchable backlight.
+Backlight=no
+
+# If you have the additional output port ("bargraph") and you want to
+# be able to control it with the lcdproc OUTPUT command
+OutputPort=no
+
+# Specifies if the last line is pixel addressable or it controls an
+# underline effect. [default: true (= pixel addressable); legal: yes, no]
+#Lastline=true
+
+# Specifies the size of the LCD.
+# In case of multiple combined displays, this should be the total size.
+Size=20x4
+
+# For multiple combined displays: how many lines does each display have.
+# Vspan=2,2 means both displays have 2 lines.
+#vspan=2,2
+
+# If you have an HD66712, a KS0073 or an other 'almost HD44780-compatible',
+# set this flag to get into extended mode (4-line linear).
+# This flag is NOT the old obsolete Extended option.
+#ExtendedMode=yes
+
+# Character map to to map ISO-8859-1 to the LCD's character set
+# [default: hd44780_default; legal: hd44780_default, ea_ks0073 ]
+Charmap=hd44780_default
+
+# If your display is slow and cannot keep up with the flow of data from
+# LCDd, garbage can appear on the LCDd. Set this delay factor to 2 or 4
+# to increase the delays. Default: 1.
+#DelayMult=2
+
+# You can reduce the inserted delays by setting this to false.
+# On fast PCs it is possible your LCD does not respond correctly.
+# Default: true.
+DelayBus=true
+
+# If you have a keypad you can assign keystrings to the keys.
+# See documentation for used terms and how to wire it.
+# For example to give directly connected key 4 the string "Enter", use:
+# KeyDirect_4=Enter
+# For matrix keys use the X and Y coordinates of the key:
+# KeyMatrix_1_3=Enter
+KeyMatrix_4_1=Enter
+KeyMatrix_4_2=Up
+KeyMatrix_4_3=Down
+KeyMatrix_4_4=Escape
+
+
+
+## ICP A106 driver ##
+[icp_a106]
+Device=/dev/ttyS1
+
+
+
+## Code Mercenaries IO-Warrior driver ##
+[IOWarrior]
+
+# display dimensions
+Size=20x4
+
+# serial number [exactly as listed by usbview]
+# (if not given, the 1st IOWarrior found gets used)
+#SerialNumber=00000674
+
+# Specifies if the last line is pixel addressable or it controls an
+# underline effect. [default: true (= pixel addressable); legal: yes, no]
+#Lastline=true
+
+
+
+## Soundgraph/Ahanix/Silverstone/Uneed/Accent iMON driver ##
+[imon]
+
+# select the device to use
+Device=/dev/lcd0
+
+# display dimensions
+Size=16x2
+
+
+
+## IrMan driver ##
+[IrMan]
+#if in trouble with IrMan, try Lirc emulator for IrMan
+
+# Select the input device to use
+#Device=/dev/irman
+
+# Select the configuration file to use
+#Config=/etc/irman.cfg
+
+
+
+## Joystick driver ##
+[joy]
+
+# Select the input device to use [default: /dev/js0]
+Device=/dev/js0
+
+# set the axis map
+Map_Axis1neg=Left
+Map_Axis1pos=Right
+Map_Axis2neg=Up
+Map_Axis2pos=Down
+
+# set the button map
+Map_Button1=Enter
+Map_Button2=Escape
+
+
+
+## LB216 driver ##
+[lb216]
+
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/lcd
+
+# Set the initial brightness [default: 255; legal: 0 - 255]
+Brightness=255
+
+# Set the communication speed [default: 9600; legal: 2400, 9600]
+Speed=9600
+
+# Reinitialize the LCD's BIOS [default: no; legal: yes, no]
+Reboot=no
+
+
+
+## LCDM001 driver ##
+[lcdm001]
+
+Device=/dev/ttyS1
+
+# keypad settings
+# Keyname Function
+# Normal context Menu context
+# ------- -------------- ------------
+# PauseKey Pause/Continue Enter/select
+# BackKey Back(Go to previous screen) Up/Left
+# ForwardKey Forward(Go to next screen) Down/Right
+# MainMenuKey Open main menu Exit/Cancel
+PauseKey=LeftKey
+BackKey=UpKey
+ForwardKey=DownKey
+MainMenuKey=RightKey
+
+# You can rearrange the settings here.
+# If your device is broken, have a look at /usr/lib/lcdproc/lcdm001.h
+
+
+
+## HNE LCTerm driver ##
+[lcterm]
+Device=/dev/ttyS1
+Size=16x2
+
+
+
+## LIRC input driver ##
+[lirc]
+
+# Specify an alternative location of the lircrc file [default: ~/.lircrc]
+#lircrc=/etc/lircrc.lcdproc
+
+# Must be the same as in your lircrc
+#prog=lcdd
+
+
+
+##The driver for the VFD of the Medion MD8800 PC ##
+[MD8800]
+# device to use [default: /dev/ttyS1]
+#Device=/dev/ttyS1
+
+# display size [default: 16x2]
+#Size=16x2
+
+# Set the initial brightness [default: 1000; legal: 0 - 1000]
+Brightness=1000
+# Set the initial off-brightness [default: 0; legal: 0 - 1000]
+# This value is used when the display is normally
+# switched off in case LCDd is inactive
+OffBrightness=50
+
+
+
+## MSI MS-6931 driver for displays in 1HU servers ##
+[ms6931]
+
+# device to use [default: /dev/ttyS1]
+Device=/dev/ttyS1
+
+# display size [default: 16x2]
+#Size=16x2
+
+
+
+## MTC-S16209x driver ##
+[mtc_s16209x]
+
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/lcd
+
+# Set the initial brightness [default: 255; legal: 0 - 255]
+Brightness=255
+
+# Reinitialize the LCD's BIOS [default: no; legal: yes, no]
+Reboot=no
+
+
+
+## Matrix Orbital driver ##
+[MtxOrb]
+
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/ttyS0
+
+# Set the display size [default: 20x4]
+Size=20x4
+
+# Switch on the backlight? [default: yes]
+# NOTE: The driver will ignore this if the display is a vfd or vkd
+# as they crash if the backlight is turned off
+Backlight=yes
+
+# Set the initial contrast [default: 480]
+# NOTE: The driver will ignore this if the display
+# is a vfd or vkd as they don't have this feature
+Contrast=800
+
+# Set the communication speed [default: 19200; legal: 1200, 2400, 9600, 19200]
+Speed=19200
+
+# Set the display type [default: lcd; legal: lcd, lkd, vfd, vkd]
+Type=lkd
+
+# The following table translates from MtxOrb key letters to logical key namess.
+# By default no keys are mapped, meaning the keypad is not used at all.
+#KeyMap_A=Left
+#KeyMap_B=Right
+#KeyMap_C=Up
+#KeyMap_D=Down
+#KeyMap_E=Enter
+#KeyMap_F=Escape
+# See the [menu] section for an explanation of the key mappings
+
+# You can find out which key of your display sends which
+# character by setting keypad_test_mode to yes and running
+# LCDd. LCDd will output all characters it receives.
+# Afterwards you can modify the settings above and set
+# keypad_set_mode to no again.
+keypad_test_mode=no
+
+
+
+## Noritake VFD driver ##
+[NoritakeVFD]
+# device where the VFD is. Usual values are /dev/ttyS0 and /dev/ttyS1 [default: /dev/lcd]
+Device=/dev/ttyS0
+
+# Specifies the size of the LCD.
+Size=20x4
+
+# set the brightness
+Brightness=255
+
+# set the serial port speed [default: 9600, legal: 1200, 2400, 9600, 19200, 115200]
+Speed=9600
+
+# re-initialize VFD ?
+#Reboot=yes
+
+
+
+## Pyramid LCD driver ##
+[pyramid]
+
+# device to connect to [default: /dev/lcd]
+Device=/dev/ttyUSB0
+
+
+
+## Seiko Epson 1330 driver ##
+[sed1330]
+
+# Port where the LPT is. Common values are 0x278, 0x378 and 0x3BC
+Port=0x378
+
+# Type of LCD module (legal: G321D, G121C, G242C, G191D, G2446)
+# Note: G321D is the only one that is tested currently.
+Type=G321D
+
+
+
+## Seiko Epson 1520 driver ##
+[sed1520]
+
+# Port where the LPT is. Usual values are 0x278, 0x378 and 0x3BC
+Port=0x378
+
+
+
+## Serial VFD driver ##
+## Drives various (see below) serial 5x7dot VFD's. ##
+[serialVFD]
+
+# Specifies the displaytype.[default: 0]
+# 0 NEC (FIPC8367 based) VFDs.
+# 1 KD Rev 2.1.
+# 2 Noritake VFDs (*).
+# 3 Futaba VFDs
+# (* most should work, not testet yet.)
+Type=0
+
+# "no" if display connected serial, "yes" if connected parallel. [default: no(=serial)]
+use_parallel=no
+
+# Number of Custom-Characters [default: displaytype dependent]
+#Custom-Characters=0
+
+# Portaddress where the LPT is. Used in parallelmode only. Usual values are 0x278, 0x378 and 0x3BC
+Port=0x378
+
+# Device to use in serial mode. Usual values are /dev/ttyS0 and /dev/ttyS1
+Device=/dev/ttyS1
+
+# Specifies the size of the VFD.
+Size=20x2
+
+# Set the initial brightness [default: 1000; legal: 0 - 1000]
+# (4 steps 0-250, 251-500, 501-750, 751-1000)
+Brightness=1000
+# Set the initial off-brightness [default: 0; legal: 0 - 1000]
+# This value is used when the display is normally
+# switched off in case LCDd is inactive
+# (4 steps 0-250, 251-500, 501-750, 751-1000)
+OffBrightness=0
+
+# set the serial port speed [default: 9600; legal: 1200, 2400, 9600, 19200, 115200]
+Speed=9600
+
+# enable ISO 8859 1 compatibility [default: yes; legal: yes, no]
+#ISO_8859_1=yes
+
+
+
+## stv5730 driver ##
+[stv5730]
+
+# Port the device is connected to [default: 0x378]
+Port=0x378
+
+
+
+## SVGAlib driver ##
+[svga]
+
+# svgalib mode to use [default: G320x240x256; legal: supported svgalib modes]
+#Mode=G640x480x256
+
+# set display size [default: 20x4]
+Size=20x4
+
+# Set the initial contrast [default: 500; legal: 0 - 1000]
+# Can be set but does not change anything internally
+Contrast=500
+
+# Set the initial brightness [default: 1000; legal: 1 - 1000]
+Brightness=1000
+
+# Set the initial off-brightness [default: 500; legal: 1 - 1000]
+# This value is used when the display is normally
+# switched off in case LCDd is inactive
+OffBrightness=500
+
+
+
+## Text driver ##
+[text]
+# Set the display size [default: 20x4]
+Size=20x4
+
+
+
+## Toshiba T6963 driver ##
+[t6963]
+
+# set display size [default: 20x6]
+Size=20x6
+
+# port to use [default: 0x378; legal: 0x200 - 0x400]
+Port=0x378
+
+# Is ECP mode on? [default: yes; legal: yes, no]
+#ECPlpt=yes
+
+# Use graphics? [default: no; legal: yes, no]
+#graphic=no
+
+
+
+## Tyan Barebones LCD driver (GS10 & GS12 series) ##
+[tyan]
+
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/lcd
+
+# Set the communication speed [default: 9600; legal: 4800, 9600]
+Speed=9600
+
+# set display size [default: 16x2]
+Size=16x2
+
+
+
+## ELV ula200 driver ##
+[ula200]
+
+# Select the LCD size [default: 20x4]
+Size=20x4
+
+# If you have a non standard keypad you can associate any keystrings to keys.
+# There are 6 input key in the CwLnx hardware that generate characters
+# from 'A' to 'F'.
+#
+# The following it the built-in default mapping hardcoded in the driver.
+# You can leave those unchanged if you have a standard keypad.
+# You can change it if you want to report other keystrings or have a non
+# standard keypad.
+# KeyMap_A=Up
+# KeyMap_B=Down
+# KeyMap_C=Left
+# KeyMap_D=Right
+# KeyMap_E=Enter
+# KeyMap_F=Escape
+
+
+
+## Wirz SLI LCD driver ##
+[sli]
+
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/lcd
+
+# Set the communication speed [default: 19200; legal: 1200, 2400, 9600, 19200, 38400, 57600, 115200]
+Speed=19200
+
+
+
+## OnScreen Display using libxosd ##
+[xosd]
+
+# set display size [default: 20x4]
+Size=20x4
+
+# font to use
+Font=-*-terminus-*-r-*-*-*-320-*-*-*-*-*
+
+# EOF
diff --git a/abs/mv-core/MythVantage-config/templates/LCD/antec_fusion/lircd.conf b/abs/mv-core/MythVantage-config/templates/LCD/antec_fusion/lircd.conf
new file mode 100644
index 0000000..ce64936
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/LCD/antec_fusion/lircd.conf
@@ -0,0 +1,38 @@
+
+# Please make this file available to others
+# by sending it to <lirc@bartelmus.de>
+#
+# this config file was automatically generated
+# using lirc-0.8.1(default) on Thu Sep 6 09:06:50 2007
+#
+# contributed by
+#
+# brand: /tmp/out
+# model no. of remote control:
+# devices being controlled by this remote:
+#
+
+begin remote
+
+ name Antec_fusion_silver_v1
+ bits 16
+ eps 30
+ aeps 100
+
+ one 0 0
+ zero 0 0
+ post_data_bits 16
+ post_data 0xFF
+ gap 131985
+ min_repeat 6
+ toggle_bit 0
+
+
+ begin codes
+ CW 0x0001
+ CCW 0x0100
+ end codes
+
+end remote
+
+
diff --git a/abs/mv-core/MythVantage-config/templates/LCD/antec_fusion/lircrc b/abs/mv-core/MythVantage-config/templates/LCD/antec_fusion/lircrc
new file mode 100644
index 0000000..7a39704
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/LCD/antec_fusion/lircrc
@@ -0,0 +1,15 @@
+begin
+ remote = Antec_fusion_silver_v1
+ prog = mythtv
+ button = CW
+ repeat = 1
+ config = ]
+end
+
+begin
+ remote = Antec_fusion_silver_v1
+ prog = mythtv
+ button = CCW
+ repeat = 1
+ config = [
+end
diff --git a/abs/mv-core/MythVantage-config/templates/LCD/antec_fusion/modules b/abs/mv-core/MythVantage-config/templates/LCD/antec_fusion/modules
new file mode 100644
index 0000000..cd576c3
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/LCD/antec_fusion/modules
@@ -0,0 +1 @@
+lirc_imon #LCD
diff --git a/abs/mv-core/MythVantage-config/templates/LCD/xosd/LCDd.conf b/abs/mv-core/MythVantage-config/templates/LCD/xosd/LCDd.conf
new file mode 100644
index 0000000..5b37bd7
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/LCD/xosd/LCDd.conf
@@ -0,0 +1,957 @@
+# LCDd.conf -- configuration file for the LCDproc server daemon LCDd
+#
+# This file contains the configuration for the LCDd server.
+#
+# The format is ini-file-like. It is divided into sections that start at
+# markers that look like [section]. Comments are all line-based comments,
+# and are lines that start with '#' or ';'.
+#
+# The server has a 'central' section named [server]. For the menu there is
+# a section called [menu]. Further each driver has a section which
+# defines how the driver acts.
+#
+# The drivers are activated by specifiying them in a driver= line in the
+# server section, like:
+#
+# Driver=curses
+#
+# This tells LCDd to use the curses driver.
+# The first driver that is loaded and is capable of output defines the
+# size of the display. The default driver to use is curses.
+# If the driver is specified using the -d <driver> command line option,
+# the Driver= options in the config file are ignored.
+#
+# The drivers read their own options from the respective sections.
+
+
+
+## Server section with all kinds of settings for the LCDd server ##
+[server]
+
+# Tells the server to load the given drivers. Multiple lines can be given.
+# The name of the driver is case sensitive and determines the section
+# where to look for further configuration options of the specific driver
+# as well as the name of the dynamic driver module to load at runtime.
+# The latter one can be changed by giving af File= directive in the
+# driver specific section.
+#
+# The following drivers are supported:
+# bayrad, CFontz, CFontz633, CFontzPacket, curses, CwLnx, ea65,
+# EyeboxOne, g15, glcdlib, glk, hd44780, icp_a106, imon, IOWarrior,
+# irman, joy, lb216, lcdm001, lcterm, lirc, MD8800, ms6931, mtc_s16209x,
+# MtxOrb, NoritakeVFD, picolcd, pyramid, sed1330, sed1520, serialPOS,
+# serialVFD, sli, stv5730, svga, t6963, text, tyan, ula200, xosd
+Driver=xosd
+
+# Tells the driver to bind to the given interface
+Bind=127.0.0.1
+
+# Listen on this specified port; defaults to 13666.
+Port=13666
+
+# Sets the reporting level; defaults to 2 (warnings and errors only).
+ReportLevel=3
+
+# Should we report to syslog instead of stderr ? Default: no
+#ReportToSyslog=yes
+
+# Sets the default time in seconds to displays a screen.
+WaitTime=5
+
+# User to run as. LCDd will drop its root priviledges,
+# if any, and run as this user instead.
+User=nobody
+
+# If yes, the the serverscreen will be rotated as a usual info screen. If no,
+# it will be a background screen, only visible when no other screens are
+# active.
+#ServerScreen=no
+
+# The server will stay in the foreground if set to true.
+#Foreground=no
+
+# Where can we find the driver modules ?
+# IMPORTANT: Make sure to change this setting to reflect your
+# specific setup! Otherwise LCDd won't be able to find
+# the driver modules and will thus not be able to
+# function properly.
+# NOTE: Always place a slash as last character !
+DriverPath=/usr/lib/lcdproc/
+
+# GoodBye message: each entry represents a display line; default: builtin
+#GoodBye="Thanks for using"
+#GoodBye=" LCDproc!"
+
+# The "...Key=" lines define what the server does with keypresses that
+# don't go to any client.
+# These are the defaults:
+ToggleRotateKey=Enter
+PrevScreenKey=Left
+NextScreenKey=Right
+#ScrollUpKey=Up
+#ScrollDownKey=Down
+
+# If you have only 4 keys, you can choose to use this:
+#ToggleRotateKey=Enter
+#PrevScreenKey=Up
+#NextScreenKey=Down
+
+# If you have only 3 keys, you can choose to use this:
+#ToggleRotateKey=Enter
+#PrevScreenKey=Up
+
+
+
+## The menu section. The menu is an internal LCDproc client. ##
+[menu]
+# You can configure what keys the menu should use. Note that the MenuKey
+# will be reserved exclusively, the others work in shared mode.
+
+# The following works excellent with 4 keys or more.
+MenuKey=Escape
+EnterKey=Enter
+UpKey=Up
+DownKey=Down
+# If you have 6 keys you may define these as well
+#LeftKey=Left
+#RightKey=Right
+
+# If you have only 3 keys, you could use something like this:
+#MenuKey=Escape
+#EnterKey=Enter
+#DownKey=Down
+
+
+
+### Driver sections are below this line, in alphabetical order ###
+
+
+## EMAC BayRAD driver ##
+[bayrad]
+
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/lcd
+
+# Set the communication speed [default: 9600; legal: 1200, 2400, 9600, 19200]
+Speed=9600
+
+
+
+## CrystalFontz driver (for CF632 & CF634) ##
+[CFontz]
+
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/ttyS0
+# Select the LCD size [default: 20x4]
+Size=20x4
+# Set the initial contrast [default: 560; legal: 0 - 1000]
+Contrast=350
+# Set the initial brightness [default: 1000; legal: 0 - 1000]
+Brightness=1000
+# Set the initial off-brightness [default: 0; legal: 0 - 1000]
+# This value is used when the display is normally
+# switched off in case LCDd is inactive
+OffBrightness=0
+# Set the communication speed [default: 9600; legal: 1200, 2400, 9600, 19200 or 115200]
+Speed=9600
+# Set the firmware version (New means >= 2.0) [default: no; legal: yes, no]
+NewFirmware=no
+# Reinitialize the LCD's BIOS [default: no; legal: yes, no]
+# normally you shouldn't need this
+Reboot=no
+
+
+
+## CrystalFontz633 driver (for CF633 only) ##
+[CFontz633]
+
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/ttyS0
+# Select the LCD type (size) [default: 16x2]
+Size=16x2
+# Set the initial contrast [default: 560; legal: 0 - 1000]
+Contrast=350
+# Set the initial brightness [default: 1000; legal: 0 - 1000]
+Brightness=1000
+# Set the initial off-brightness [default: 0; legal: 0 - 1000]
+# This value is used when the display is normally
+# switched off in case LCDd is inactive
+OffBrightness=50
+# Set the communication speed [default: 9600; legal: 1200, 2400, 9600, 19200, 115200]
+Speed=19200
+# Set the firmware version (New means >= 2.0) [default: no; legal: yes, no]
+# Currently this flag is not in use, there is no such thing as NewFirmware. ;=)
+#NewFirmware=no
+# Reinitialize the LCD's BIOS [default: no; legal: yes, no]
+# I want to reboot the LCD to make sure we start from a known state
+Reboot=yes
+
+
+
+## CrystalFontz packet driver (for CF631, CF633 & CF635) ##
+[CFontzPacket]
+
+# Select the LCD model [default: 633; legal: 631, 633, 635]
+Model=635
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/ttyUSB0
+# Select the LCD size [default: depending on model: 635: 20x4, 631: 20x2, 633: 16x2]
+Size=20x4
+# Set the initial contrast [default: 560; legal: 0 - 1000]
+Contrast=350
+# Set the initial brightness [default: 1000; legal: 0 - 1000]
+Brightness=1000
+# Set the initial off-brightness [default: 0; legal: 0 - 1000]
+# This value is used when the display is normally
+# switched off in case LCDd is inactive
+OffBrightness=50
+# Set the communication speed [default: 9600; legal: 1200, 2400, 9600, 19200, 115200]
+Speed=115200
+# Set the firmware version (New means >= 2.0) [default: no; legal: yes, no]
+# Currently this flag is not in use, there is no such thing as NewFirmware. ;=)
+#NewFirmware=no
+# Reinitialize the LCD's BIOS [default: no; legal: yes, no]
+# I want to reboot the LCD to make sure we start from a known state
+Reboot=yes
+
+
+
+## Curses driver ##
+[curses]
+
+# color settings
+# foreground color [default: blue]
+Foreground=blue
+# background color when "backlight" is off [default: cyan]
+Background=cyan
+# background color when "backlight" is on [default: red]
+Backlight=red
+
+# display size [default: 20x4]
+Size=20x4
+
+# What position (X,Y) to start the left top corner at...
+# Default: (7,7)
+TopLeftX=7
+TopLeftY=7
+
+# use ASC symbols for icons & bars [default: no; legal, yes, no]
+UseACS=no
+
+
+
+## Cwlinux driver ##
+[CwLnx]
+
+# Select the LCD model [default: 12232; legal: 12232, 1602]
+Model=12232
+
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/ttyUSB0
+
+# Select the LCD size [default: depending on model: 12232: 20x4, 1602: 16x2]
+Size=20x4
+
+# Set the communication speed [default: 19200; legal: 9600, 19200]
+Speed=19200
+
+# Reinitialize the LCD's BIOS [default: no; legal: yes, no]
+# normally you shouldn't need this
+Reboot=no
+
+# If you have a keypad connected. Keypad layout is currently not
+# configureable from the config file.
+Keypad=yes
+
+# If you have a non-standard keypad you can associate any keystrings to keys.
+# There are 6 input keys in the CwLnx hardware that generate characters
+# from 'A' to 'F'.
+#
+# The following is the built-in default mapping hardcoded in the driver.
+# You can leave those unchanged if you have a standard keypad.
+# You can change it if you want to report other keystrings or have a non
+# standard keypad.
+# KeyMap_A=Up
+# KeyMap_B=Down
+# KeyMap_C=Left
+# KeyMap_D=Right
+# KeyMap_E=Enter
+# KeyMap_F=Escape
+
+# keypad_test_mode permits to test keypad assignement
+# Default value is no
+#keypad_test_mode=yes
+
+
+
+## ea65 driver for the display in AOpen XC Cube AV EA65 media barebones ##
+[ea65]
+
+# Device is fixed /dev/ttyS1
+# Width and Height are fixed 9x1
+
+# As the VFD is self luminescent we don't have a backlight
+# But we can use the backlight functions to control the front LEDs
+# Brightness 0 to 299 -> LEDs off
+# Brightness 300 to 699 -> LEDs half bright
+# Brightness 700 to 1000 -> LEDs full bright
+Brightness=500
+# OffBrightness is the the value used for the 'backlight off' state
+OffBrightness=0
+
+
+
+## EyeboxOne driver ##
+[EyeboxOne]
+
+# Select the output device to use [default: /dev/ttyS1]
+#Device=/dev/cua01
+Device=/dev/ttyS1
+
+# Set the display size [default: 20x4]
+Size=20x4
+
+# Switch on the backlight? [default: yes]
+Backlight=yes
+
+# Switch on the cursor? [default: no]
+Cursor=no
+
+# Set the communication speed [default: 19200; legal: 1200, 2400, 9600, 19200]
+Speed=19200
+
+# Enter Key is a \r character, so it's hardcoded in the driver
+LeftKey=D
+RightKey=C
+UpKey=A
+DownKey=B
+EscapeKey=P
+
+# You can find out which key of your display sends which
+# character by setting keypad_test_mode to yes and running
+# LCDd. LCDd will output all characters it receives.
+# Afterwards you can modify the settings above and set
+# keypad_set_mode to no again.
+keypad_test_mode=no
+
+
+
+## g15 driver for Logitech G15 Keyboard LCDs ##
+[g15]
+
+# Display size (currently unused)
+size=20x5
+
+## glcdlib meta driver for graphical LCDs ##
+[glcdlib]
+
+## mandatory:
+
+# which graphical display supported by graphlcd-base to use [default: image]
+# (see /etc/graphlcd.conf for possible drivers)
+Driver=noritake800
+
+# no=use graphlcd bitmap fonts (they have only one size / font file)
+# yes=use fonts supported by FreeType2 (needs Freetype2 support in libglcdprocdriver and its dependants)
+UseFT2=yes
+
+# text resolution in fixed width characters [default: 16x4]
+# (if it won't fit according to available physical pixel resolutioni
+# and the minimum available font face size in pixels, then
+# 'DebugBorder' will automatically be turned on)
+TextResolution=20x4
+
+# path to font file to use
+FontFile=/usr/share/fonts/corefonts/courbd.ttf
+
+## these only apply if UseFT2=yes:
+
+# character encoding to use
+CharEncoding=iso8859-2
+
+# minumum size in pixels in which fonts should be rendered
+MinFontFaceSize=7x12
+
+## optional:
+Brightness=50 # Brightness (in %) if applicable
+Contrast=50 # Contrast (in %) if applicable
+Backlight=no # Backlight if applicable
+UpsideDown=no # flip image upside down
+Invert=no # invert light/dark pixels
+ShowDebugFrame=no # turns on/off 1 pixel thick debugging
+ # border whithin the usable text area,
+ # for setting up TextResolution and
+ # MinFontFaceSize (if using FT2);
+ShowBigBorder=no # border around the unused area
+ShowThinBorder=yes # border around the unused area
+PixelShiftX=0
+PixelShiftY=2
+
+
+
+## Matrix Orbital GLK driver ##
+[glk]
+
+# select the serial device to use [default: /dev/lcd]
+Device=/dev/lcd
+
+# set the initial contrast value [default: 560; legal: 0 - 1000]
+Contrast=560
+
+# set the serial port speed [default: 19200; legal: 9600, 19200, 38400]
+Speed=19200
+
+
+
+## Hitachi HD44780 driver ##
+[hd44780]
+
+# Select what type of connection. See documentation for types.
+ConnectionType=4bit
+
+# Port where the LPT is. Usual values are 0x278, 0x378 and 0x3BC
+Port=0x378
+
+# Device of the serial interface (default is /dev/lcd)
+Device=/dev/ttyS0
+
+# Bitrate of the serial port (0 for interface default)
+Speed=0
+
+# If you have a keypad connected.
+# You may also need to configure the keypad layout further on in this file.
+Keypad=no
+
+# set the initial contrast (for bwctusb only) [default: 0; legal: 0 - 1000]
+Contrast=0
+
+# If you have a switchable backlight.
+Backlight=no
+
+# If you have the additional output port ("bargraph") and you want to
+# be able to control it with the lcdproc OUTPUT command
+OutputPort=no
+
+# Specifies if the last line is pixel addressable or it controls an
+# underline effect. [default: true (= pixel addressable); legal: yes, no]
+#Lastline=true
+
+# Specifies the size of the LCD.
+# In case of multiple combined displays, this should be the total size.
+Size=20x4
+
+# For multiple combined displays: how many lines does each display have.
+# Vspan=2,2 means both displays have 2 lines.
+#vspan=2,2
+
+# If you have an HD66712, a KS0073 or an other 'almost HD44780-compatible',
+# set this flag to get into extended mode (4-line linear).
+# This flag is NOT the old obsolete Extended option.
+#ExtendedMode=yes
+
+# Character map to to map ISO-8859-1 to the LCD's character set
+# [default: hd44780_default; legal: hd44780_default, ea_ks0073, sed1278f_0b ]
+Charmap=hd44780_default
+
+# If your display is slow and cannot keep up with the flow of data from
+# LCDd, garbage can appear on the LCDd. Set this delay factor to 2 or 4
+# to increase the delays. Default: 1.
+#DelayMult=2
+
+# Some displays (e.g. vdr-wakeup) need a message from the driver to that it
+# is still alive. When set to a value bigger then null the character in the
+# upper left corner is updated every <KeepAliveDisplay> seconds. Default: 0.
+#KeepAliveDisplay=0
+
+# If you experience occasional garbage on your display you can use this
+# option as workaround. If set to a value bigger than null it forces a
+# full screen refresh <RefreshDiplay> seconds. Default: 0.
+#RefreshDisplay=5
+
+# You can reduce the inserted delays by setting this to false.
+# On fast PCs it is possible your LCD does not respond correctly.
+# Default: true.
+DelayBus=true
+
+# If you have a keypad you can assign keystrings to the keys.
+# See documentation for used terms and how to wire it.
+# For example to give directly connected key 4 the string "Enter", use:
+# KeyDirect_4=Enter
+# For matrix keys use the X and Y coordinates of the key:
+# KeyMatrix_1_3=Enter
+KeyMatrix_4_1=Enter
+KeyMatrix_4_2=Up
+KeyMatrix_4_3=Down
+KeyMatrix_4_4=Escape
+
+
+
+## ICP A106 driver ##
+[icp_a106]
+Device=/dev/ttyS1
+
+
+
+## Code Mercenaries IO-Warrior driver ##
+[IOWarrior]
+
+# display dimensions
+Size=20x4
+
+# serial number [exactly as listed by usbview]
+# (if not given, the 1st IOWarrior found gets used)
+#SerialNumber=00000674
+
+# Specifies if the last line is pixel addressable or it controls an
+# underline effect. [default: true (= pixel addressable); legal: yes, no]
+#Lastline=true
+
+
+
+## Soundgraph/Ahanix/Silverstone/Uneed/Accent iMON driver ##
+[imon]
+
+# select the device to use
+Device=/dev/lcd0
+
+# display dimensions
+Size=16x2
+
+
+
+## IrMan driver ##
+[IrMan]
+#if in trouble with IrMan, try Lirc emulator for IrMan
+
+# Select the input device to use
+#Device=/dev/irman
+
+# Select the configuration file to use
+#Config=/etc/irman.cfg
+
+
+
+## Joystick driver ##
+[joy]
+
+# Select the input device to use [default: /dev/js0]
+Device=/dev/js0
+
+# set the axis map
+Map_Axis1neg=Left
+Map_Axis1pos=Right
+Map_Axis2neg=Up
+Map_Axis2pos=Down
+
+# set the button map
+Map_Button1=Enter
+Map_Button2=Escape
+
+
+
+## LB216 driver ##
+[lb216]
+
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/lcd
+
+# Set the initial brightness [default: 255; legal: 0 - 255]
+Brightness=255
+
+# Set the communication speed [default: 9600; legal: 2400, 9600]
+Speed=9600
+
+# Reinitialize the LCD's BIOS [default: no; legal: yes, no]
+Reboot=no
+
+
+
+## LCDM001 driver ##
+[lcdm001]
+
+Device=/dev/ttyS1
+
+# keypad settings
+# Keyname Function
+# Normal context Menu context
+# ------- -------------- ------------
+# PauseKey Pause/Continue Enter/select
+# BackKey Back(Go to previous screen) Up/Left
+# ForwardKey Forward(Go to next screen) Down/Right
+# MainMenuKey Open main menu Exit/Cancel
+PauseKey=LeftKey
+BackKey=UpKey
+ForwardKey=DownKey
+MainMenuKey=RightKey
+
+# You can rearrange the settings here.
+# If your device is broken, have a look at /usr/lib/lcdproc/lcdm001.h
+
+
+
+## HNE LCTerm driver ##
+[lcterm]
+Device=/dev/ttyS1
+Size=16x2
+
+
+
+## LIRC input driver ##
+[lirc]
+
+# Specify an alternative location of the lircrc file [default: ~/.lircrc]
+#lircrc=/etc/lircrc.lcdproc
+
+# Must be the same as in your lircrc
+#prog=lcdd
+
+
+
+##The driver for the VFD of the Medion MD8800 PC ##
+[MD8800]
+# device to use [default: /dev/ttyS1]
+#Device=/dev/ttyS1
+
+# display size [default: 16x2]
+#Size=16x2
+
+# Set the initial brightness [default: 1000; legal: 0 - 1000]
+Brightness=1000
+# Set the initial off-brightness [default: 0; legal: 0 - 1000]
+# This value is used when the display is normally
+# switched off in case LCDd is inactive
+OffBrightness=50
+
+
+
+## MSI MS-6931 driver for displays in 1HU servers ##
+[ms6931]
+
+# device to use [default: /dev/ttyS1]
+Device=/dev/ttyS1
+
+# display size [default: 16x2]
+#Size=16x2
+
+
+
+## MTC-S16209x driver ##
+[mtc_s16209x]
+
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/lcd
+
+# Set the initial brightness [default: 255; legal: 0 - 255]
+Brightness=255
+
+# Reinitialize the LCD's BIOS [default: no; legal: yes, no]
+Reboot=no
+
+
+
+## Matrix Orbital driver ##
+[MtxOrb]
+
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/ttyS0
+
+# Set the display size [default: 20x4]
+Size=20x4
+
+# Set the display type [default: lcd; legal: lcd, lkd, vfd, vkd]
+Type=lkd
+
+# Set the initial contrast [default: 480]
+# NOTE: The driver will ignore this if the display
+# is a vfd or vkd as they don't have this feature
+Contrast=480
+
+# Set the initial brightness [default: 1000; legal: 0 - 1000]
+Brightness=1000
+# Set the initial off-brightness [default: 0; legal: 0 - 1000]
+# This value is used when the display is normally
+# switched off in case LCDd is inactive
+OffBrightness=0
+
+# Set the communication speed [default: 19200; legal: 1200, 2400, 9600, 19200]
+Speed=19200
+
+# The following table translates from MtxOrb key letters to logical key names.
+# By default no keys are mapped, meaning the keypad is not used at all.
+#KeyMap_A=Left
+#KeyMap_B=Right
+#KeyMap_C=Up
+#KeyMap_D=Down
+#KeyMap_E=Enter
+#KeyMap_F=Escape
+# See the [menu] section for an explanation of the key mappings
+
+# You can find out which key of your display sends which
+# character by setting keypad_test_mode to yes and running
+# LCDd. LCDd will output all characters it receives.
+# Afterwards you can modify the settings above and set
+# keypad_set_mode to no again.
+keypad_test_mode=no
+
+
+
+## Noritake VFD driver ##
+[NoritakeVFD]
+# device where the VFD is. Usual values are /dev/ttyS0 and /dev/ttyS1 [default: /dev/lcd]
+Device=/dev/ttyS0
+
+# Specifies the size of the LCD.
+Size=20x4
+
+# set the brightness
+Brightness=255
+
+# set the serial port speed [default: 9600, legal: 1200, 2400, 9600, 19200, 115200]
+Speed=9600
+
+# re-initialize VFD ?
+#Reboot=yes
+
+
+
+## Mini-box.com picoLCD (usblcd) driver ##
+[picolcd]
+# This is for the Mini-Box.com usblcd device that ships with the M300. It can
+# also be purchased separately but this driver has only been tested on the M300
+# setup.
+
+# KeyTimeout is the time that LCDd spends waiting for a key press before cycling
+# through other duties. Higher values make LCDd use less CPU time and make
+# key presses more detectable. Lower values make LCDd more responsive but a
+# little prone to missing key presses. 500 (.5 second) is the default and a
+# balanced value.
+KeyTimeout=500
+
+# Contrast: [default: 1000; legal: 0 - 1000]
+Contrast=1000
+
+# Light the keys? i[default: on; legal: on, off]
+Keylights=on
+
+# If Keylights is on, the you can unlight specific keys below:
+# Key0 is the directional pad. Key1 - Key5 correspond to the F1 - F5 keys.
+# There is no LED for the +/- keys. This is a handy way to indicate to users
+# which keys are disabled. [default: on; legal: on, off]
+Key0Light=on
+Key1Light=on
+Key2Light=on
+Key3Light=on
+Key4Light=on
+Key5Light=on
+
+
+
+## Pyramid LCD driver ##
+[pyramid]
+
+# device to connect to [default: /dev/lcd]
+Device=/dev/ttyUSB0
+
+
+
+## Seiko Epson 1330 driver ##
+[sed1330]
+
+# Port where the LPT is. Common values are 0x278, 0x378 and 0x3BC
+Port=0x378
+
+# Type of LCD module (legal: G321D, G121C, G242C, G191D, G2446, SP14Q002)
+# Note: Currently only tested with G321D & SP14Q002.
+Type=G321D
+
+# Width x Height of a character cell in pixels [legal: 6x7 - 8x16; default: 6x10]
+CellSize=6x10
+
+# Select what type of connection [legal: classic, bitshaker; default: classic]
+ConnectionType=classic
+
+
+## Seiko Epson 1520 driver ##
+[sed1520]
+
+# Port where the LPT is. Usual values are 0x278, 0x378 and 0x3BC
+Port=0x378
+
+
+
+## serial POS display driver ##
+[serialPOS]
+
+# Device to use in serial modea [default: /dev/lcd]
+Device=/dev/lcd
+
+# Specifies the size of the display in characters. [default: 16x2]
+Size=16x2
+
+# Set the communication protocol to use with the POS display.
+# [default: AEDEX; legal: IEE, Epson, Emax, IBM, LogicControls, Ultimate]
+Type=AEDEX
+
+# communication baud rate with the display [default: 9600; legal: 1200, 2400, 19200, 115200]
+Speed=9600
+
+
+
+## Serial VFD driver ##
+## Drives various (see below) serial 5x7dot VFD's. ##
+[serialVFD]
+
+# Specifies the displaytype.[default: 0]
+# 0 NEC (FIPC8367 based) VFDs.
+# 1 KD Rev 2.1.
+# 2 Noritake VFDs (*).
+# 3 Futaba VFDs
+# (* most should work, not testet yet.)
+Type=0
+
+# "no" if display connected serial, "yes" if connected parallel. [default: no(=serial)]
+use_parallel=no
+
+# Number of Custom-Characters [default: displaytype dependent]
+#Custom-Characters=0
+
+# Portaddress where the LPT is. Used in parallelmode only. Usual values are 0x278, 0x378 and 0x3BC
+Port=0x378
+
+# Device to use in serial mode. Usual values are /dev/ttyS0 and /dev/ttyS1
+Device=/dev/ttyS1
+
+# Specifies the size of the VFD.
+Size=20x2
+
+# Set the initial brightness [default: 1000; legal: 0 - 1000]
+# (4 steps 0-250, 251-500, 501-750, 751-1000)
+Brightness=1000
+# Set the initial off-brightness [default: 0; legal: 0 - 1000]
+# This value is used when the display is normally
+# switched off in case LCDd is inactive
+# (4 steps 0-250, 251-500, 501-750, 751-1000)
+OffBrightness=0
+
+# set the serial port speed [default: 9600; legal: 1200, 2400, 9600, 19200, 115200]
+Speed=9600
+
+# enable ISO 8859 1 compatibility [default: yes; legal: yes, no]
+#ISO_8859_1=yes
+
+
+
+## stv5730 driver ##
+[stv5730]
+
+# Port the device is connected to [default: 0x378]
+Port=0x378
+
+
+
+## SVGAlib driver ##
+[svga]
+
+# svgalib mode to use [default: G320x240x256; legal: supported svgalib modes]
+#Mode=G640x480x256
+
+# set display size [default: 20x4]
+Size=20x4
+
+# Set the initial contrast [default: 500; legal: 0 - 1000]
+# Can be set but does not change anything internally
+Contrast=500
+
+# Set the initial brightness [default: 1000; legal: 1 - 1000]
+Brightness=1000
+
+# Set the initial off-brightness [default: 500; legal: 1 - 1000]
+# This value is used when the display is normally
+# switched off in case LCDd is inactive
+OffBrightness=500
+
+
+
+## Text driver ##
+[text]
+# Set the display size [default: 20x4]
+Size=20x4
+
+
+
+## Toshiba T6963 driver ##
+[t6963]
+
+# set display size [default: 20x6]
+Size=20x6
+
+# port to use [default: 0x378; legal: 0x200 - 0x400]
+Port=0x378
+
+# Is ECP mode on? [default: yes; legal: yes, no]
+#ECPlpt=yes
+
+# Use graphics? [default: no; legal: yes, no]
+#graphic=no
+
+
+
+## Tyan Barebones LCD driver (GS10 & GS12 series) ##
+[tyan]
+
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/lcd
+
+# Set the communication speed [default: 9600; legal: 4800, 9600]
+Speed=9600
+
+# set display size [default: 16x2]
+Size=16x2
+
+
+
+## ELV ula200 driver ##
+[ula200]
+
+# Select the LCD size [default: 20x4]
+Size=20x4
+
+# If you have a non standard keypad you can associate any keystrings to keys.
+# There are 6 input key in the CwLnx hardware that generate characters
+# from 'A' to 'F'.
+#
+# The following it the built-in default mapping hardcoded in the driver.
+# You can leave those unchanged if you have a standard keypad.
+# You can change it if you want to report other keystrings or have a non
+# standard keypad.
+# KeyMap_A=Up
+# KeyMap_B=Down
+# KeyMap_C=Left
+# KeyMap_D=Right
+# KeyMap_E=Enter
+# KeyMap_F=Escape
+
+
+
+## Wirz SLI LCD driver ##
+[sli]
+
+# Select the output device to use [default: /dev/lcd]
+Device=/dev/lcd
+
+# Set the communication speed [default: 19200; legal: 1200, 2400, 9600, 19200, 38400, 57600, 115200]
+Speed=19200
+
+
+
+## OnScreen Display using libxosd ##
+[xosd]
+
+# set display size [default: 20x4]
+Size=20x4
+
+# font to use, in XLFD format, as given by "xfontsel"
+Font=-*-clean-*-*-*-*-*-160-*-*-*-*-*-*
+
+
+# EOF
diff --git a/abs/mv-core/MythVantage-config/templates/audio/space_battle_A.wav b/abs/mv-core/MythVantage-config/templates/audio/space_battle_A.wav
new file mode 100644
index 0000000..3f1dd1c
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/audio/space_battle_A.wav
Binary files differ
diff --git a/abs/mv-core/MythVantage-config/templates/cc.orig.sh b/abs/mv-core/MythVantage-config/templates/cc.orig.sh
new file mode 100755
index 0000000..d8fd2dc
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/cc.orig.sh
@@ -0,0 +1,35 @@
+#!/usr/bin/perl
+# rwraithr added segment for 4 digit channels
+# make sure to set this string to
+# the corresponding remote in /etc/remoted.conf
+#$remote_name = "RC-u43c-1h";
+$remote_name = "$REMOTE_NAME";
+
+sub change_channel {
+ my($channel_digit) = @_;
+ system ("/usr/bin/irsend SEND_ONCE $remote_name $channel_digit");
+ sleep .5;
+}
+
+$channel=$ARGV[0];
+sleep 1;
+if (length($channel) > 3) {
+ change_channel(substr($channel,0,1));
+ change_channel(substr($channel,1,1));
+ change_channel(substr($channel,2,1));
+ change_channel(substr($channel,3,1));
+} elsif (length($channel) > 2) {
+ change_channel(substr($channel,0,1));
+ change_channel(substr($channel,1,1));
+ change_channel(substr($channel,2,1));
+} elsif (length($channel) > 1) {
+ change_channel(substr($channel,0,1));
+ change_channel(substr($channel,1,1));
+} else {
+ change_channel(substr($channel,0,1));
+}
+system ("/usr/bin/irsend SEND_ONCE $remote_name SELECT");
+
+#system ("sleep 2");
+#system ("/usr/bin/ivtvctl -p 2 -d /dev/video2");
+#system ("/usr/bin/ivtvctl -p 1 -d /dev/video2");
diff --git a/abs/mv-core/MythVantage-config/templates/cc.sh b/abs/mv-core/MythVantage-config/templates/cc.sh
new file mode 100755
index 0000000..0cce308
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/cc.sh
@@ -0,0 +1,5 @@
+#!/bin/bash
+/usr/local/bin/cc.orig.sh $@ &
+/usr/local/bin/cc_vol.sh &
+
+
diff --git a/abs/mv-core/MythVantage-config/templates/cc_vol.sh b/abs/mv-core/MythVantage-config/templates/cc_vol.sh
new file mode 100755
index 0000000..819008d
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/cc_vol.sh
@@ -0,0 +1,5 @@
+#!/bin/bash
+sleep 2
+/usr/local/bin/ivtvctl -p 2 -d /dev/video2
+/usr/local/bin/ivtvctl -p 1 -d /dev/video2
+
diff --git a/abs/mv-core/MythVantage-config/templates/change_chan.sh b/abs/mv-core/MythVantage-config/templates/change_chan.sh
new file mode 100755
index 0000000..5ad8765
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/change_chan.sh
@@ -0,0 +1,19 @@
+#!/bin/sh
+REMOTE_NAME=SA3250
+cmd="$1"
+
+case $cmd in
+ [0-9]*)
+ for digit in $(echo $1 | sed -e 's/./& /g'); do
+ irsend SEND_ONCE $REMOTE_NAME $digit
+ sleep 0.3
+ # If things work OK with sleep 1, try this for faster channel changes:
+ # sleep 0.3
+ done
+ ;;
+
+ *)
+ irsend SEND_ONCE $REMOTE_NAME $cmd
+ ;;
+ esac
+# /usr/bin/fix_audio.sh &
diff --git a/abs/mv-core/MythVantage-config/templates/cron.template b/abs/mv-core/MythVantage-config/templates/cron.template
new file mode 100644
index 0000000..3fcea10
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/cron.template
@@ -0,0 +1,4 @@
+# <minute> <hour> <day> <month> <dow> <command>
+
+
+00 HOUR * * * /usr/bin/sudo /sbin/halt-runit >/dev/null 2>&1 \ No newline at end of file
diff --git a/abs/mv-core/MythVantage-config/templates/etcnet/eth/ipv4address b/abs/mv-core/MythVantage-config/templates/etcnet/eth/ipv4address
new file mode 100644
index 0000000..1df28d2
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/etcnet/eth/ipv4address
@@ -0,0 +1,2 @@
+192.168.1.158/24
+
diff --git a/abs/mv-core/MythVantage-config/templates/etcnet/eth/ipv4route b/abs/mv-core/MythVantage-config/templates/etcnet/eth/ipv4route
new file mode 100644
index 0000000..373a4d1
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/etcnet/eth/ipv4route
@@ -0,0 +1,2 @@
+default via 192.168.1.1
+
diff --git a/abs/mv-core/MythVantage-config/templates/etcnet/eth/iwconfig b/abs/mv-core/MythVantage-config/templates/etcnet/eth/iwconfig
new file mode 100644
index 0000000..b1f14e0
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/etcnet/eth/iwconfig
@@ -0,0 +1,2 @@
+essid home_lan
+#key ababababab
diff --git a/abs/mv-core/MythVantage-config/templates/etcnet/eth/options b/abs/mv-core/MythVantage-config/templates/etcnet/eth/options
new file mode 100644
index 0000000..929da58
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/etcnet/eth/options
@@ -0,0 +1,7 @@
+# If you want to change current interface name, edit /etc/net/iftab,
+# rename current directory and uncomment this line:
+TYPE=eth
+DISABLED=no
+BOOTPROTO=dhcp
+ONBOOT=yes
+CONFIG_WIRELESS=no
diff --git a/abs/mv-core/MythVantage-config/templates/evrouter/MythVantage-4 b/abs/mv-core/MythVantage-config/templates/evrouter/MythVantage-4
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/evrouter/MythVantage-4
diff --git a/abs/mv-core/MythVantage-config/templates/evrouter/MythVantage-8 b/abs/mv-core/MythVantage-config/templates/evrouter/MythVantage-8
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/evrouter/MythVantage-8
diff --git a/abs/mv-core/MythVantage-config/templates/evrouter/MythVantage-Full b/abs/mv-core/MythVantage-config/templates/evrouter/MythVantage-Full
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/evrouter/MythVantage-Full
diff --git a/abs/mv-core/MythVantage-config/templates/evrouter/MythVantage8-minipac b/abs/mv-core/MythVantage-config/templates/evrouter/MythVantage8-minipac
new file mode 100644
index 0000000..0e3a708
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/evrouter/MythVantage8-minipac
@@ -0,0 +1,3 @@
+"Ultimarc Button/Joystick/Trackball Interface " "" none key/127 "Shell//usr/bin/restartfrontend.sh"
+"Ultimarc Button/Joystick/Trackball Interface " "" none key/18 "Shell/eject"
+
diff --git a/abs/mv-core/MythVantage-config/templates/evrouter/MythVantage8-uhid b/abs/mv-core/MythVantage-config/templates/evrouter/MythVantage8-uhid
new file mode 100644
index 0000000..7cb2e34
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/evrouter/MythVantage8-uhid
@@ -0,0 +1,3 @@
+"Universal Human Interface Device Universal Human Interface Device" "" none key/125 "Shell//usr/bin/restartfrontend.sh"
+"Universal Human Interface Device Universal Human Interface Device" "" none key/18 "Shell/eject"
+
diff --git a/abs/mv-core/MythVantage-config/templates/exports.template b/abs/mv-core/MythVantage-config/templates/exports.template
new file mode 100644
index 0000000..b946287
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/exports.template
@@ -0,0 +1,8 @@
+# /etc/exports
+#
+# See exports(5) for a description.
+
+# use exportfs -arv to reread
+/data/media REPLACEME(rw,all_squash,anonuid=1000,anongid=1000)
+/data/var/cache REPLACEME(rw,all_squash,anonuid=1000,anongid=1000)
+
diff --git a/abs/mv-core/MythVantage-config/templates/fstab.conf.template b/abs/mv-core/MythVantage-config/templates/fstab.conf.template
new file mode 100755
index 0000000..d27bcd9
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/fstab.conf.template
@@ -0,0 +1,16 @@
+#
+# /etc/fstab: static file system information
+#
+# <file system> <dir> <type> <options> <dump> <pass>
+none /dev/pts devpts defaults 0 0
+none /dev/shm tmpfs defaults 0 0
+
+/dev/cdrom /mnt/cd iso9660 ro,user,noauto,unhide 0 0
+/dev/dvd /mnt/dvd udf ro,user,noauto,unhide 0 0
+/dev/fd0 /mnt/fl vfat user,noauto 0 0
+
+/dev/sda1 / reiserfs defaults 0 1
+/dev/sda2 swap swap defaults 0 0
+/dev/sda3 /data reiserfs defaults 0 0
+192.168.1.6:/media /data/media nfs
+
diff --git a/abs/mv-core/MythVantage-config/templates/mysql.service b/abs/mv-core/MythVantage-config/templates/mysql.service
new file mode 100644
index 0000000..160450e
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/mysql.service
@@ -0,0 +1,13 @@
+<?xml version="1.0" standalone='no'?><!--*-nxml-*-->
+<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
+
+<service-group>
+
+ <name replace-wildcards="yes">mysql_myth on %h</name>
+
+ <service>
+ <type>_mysql._tcp</type>
+ <port>3306</port>
+ </service>
+
+</service-group>
diff --git a/abs/mv-core/MythVantage-config/templates/mysql.txt b/abs/mv-core/MythVantage-config/templates/mysql.txt
new file mode 100755
index 0000000..04531b5
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/mysql.txt
@@ -0,0 +1,29 @@
+DBHostName=127.0.0.1
+DBUserName=mythtv
+DBPassword=mythtv
+DBName=mythconverg
+DBType=QMYSQL3
+
+# Set the following if you want to use something other than the
+# machine's real hostname for identifying settings in the database.
+# This is useful if your hostname changes often, as otherwise
+# you'll need to reconfigure mythtv (or futz with the DB) every time.
+# TWO HOSTS MUST NOT USE THE SAME VALUE
+#
+#LocalHostName=my-unique-identifier-goes-here
+
+# If you want your frontend to be able to wake your MySQL server
+# using WakeOnLan, have a look at the following settings:
+#
+# Set the time the frontend waits (in seconds) between reconnect tries.
+# This should be the rough time your MySQL server needs for startup
+#WOLsqlReconnectWaitTime=0
+#
+#
+# This is the amount of retries to wake the MySQL server until the frontend
+# gives up
+#WOLsqlConnectRetry=5
+#
+#
+# This is the command executed to wake your MySQL server.
+#WOLsqlCommand=echo 'WOLsqlServerCommand not set'
diff --git a/abs/mv-core/MythVantage-config/templates/ncid.conf.template b/abs/mv-core/MythVantage-config/templates/ncid.conf.template
new file mode 100755
index 0000000..43ef490
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/ncid.conf.template
@@ -0,0 +1,51 @@
+# tcl/tk configuration file
+
+# Directory NCID uses to find the helper scripts
+set ProgDir /usr/share/ncid
+
+# default helper script
+set EXTPROG ncid-osd
+
+# Set Host to the NCID server address
+# Host defaults to 127.0.0.1
+#set Host 127.0.0.1
+set Host 192.168.1.5
+
+# The NCID port default is 3333
+set Port 3333
+
+# If the connection to the server is lost,
+# try every Delay seconds to reconnect
+# The Default: 60
+set Delay 20
+
+# If set to 1, display raw data received from the NCID server
+# If set to 0, do not display raw data received from the NCID server
+# Default: 0
+set Raw 0
+
+# If set to 1, output: date time number name
+# If set to 0, output: name number
+# Default: 0
+set All 1
+
+# If set to 1, display formatted CID, and CID log file on connect
+# If set to 0, ddo not isplay formatted CID, and CID log file on connect
+# Default: 0
+set Verbose 0
+
+# If set to 1, display information in terminal progran or external program
+# If set to 0, display information using a GUI
+# Default: 0
+set NoGUI 1
+
+# output name and number to external program
+# Default: 0
+set Callprog 1
+
+# ring number to call external program
+# Default: 0
+set CallOnRing 0
+
+# external called program
+set Program [list $ProgDir/$EXTPROG]
diff --git a/abs/mv-core/MythVantage-config/templates/ncidd.conf.template b/abs/mv-core/MythVantage-config/templates/ncidd.conf.template
new file mode 100644
index 0000000..daa2e79
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/ncidd.conf.template
@@ -0,0 +1,143 @@
+# ncid - Network CallerID Server Config File
+
+################################
+# Definitions and Line formats #
+################################
+
+# lines can be blank, or start with the words: send, set #
+#
+# A line is divided into words, separated by spaces
+#
+# A word is either a string of non-blank characters, everything
+# between double quotes, or an equal sign.
+#
+# SEND LINE FORMAT:
+# send DATATYPE [DATATYPE] ...
+# where DATATYPE = cidlog, cidinfo
+#
+# SET LINE FORMAT:
+# set ITEM = VALUE [ITEM = VALUE] ...
+# where ITEM = cidalias, cidlog, datalog, initcid, initstr,
+# lockfile, port, ttyclocal, ttyport, ttyspeed,
+# nomodem
+
+############################
+# Log and Info for Clients #
+############################
+
+# Send the call log to a client when connected
+# The default is not to send the call log file
+send cidlog
+
+# Send call info (LINE and RING) to a client at each ring
+# The default is not to send the call info line
+send cidinfo
+
+############################
+# NCID Communications Port #
+############################
+
+# The default TCP/IP port is 3333
+ set port = 3333
+
+#######################
+# Alias and Log Files #
+#######################
+
+# The default CID alias file: /etc/ncid/ncidd.alias
+# set cidalias = /etc/ncid/ncidd.alias
+
+# The default CID call log file: /var/log/cidcall.log
+# the log file must exist, ncidd will not create it
+# (also make the change in /etc/logrotate.d/ncidd
+# and also /etc/ncid/ncidrotate.conf)
+# set cidlog = /var/log/cidcall.log
+
+# The default tty data log file: /var/log/ciddata.log
+# the log file must exist, ncidd will not create it
+# (also make the change in /etc/logrotate.d/ncidd
+# and also /etc/ncid/ncidrotate.conf)
+# set datalog = /var/log/ciddata.log
+
+#####################
+# TTY Configuration #
+#####################
+
+# The default tty port: /dev/modem
+# set ttyport = /dev/cu.modem # Macintosh OS X
+ set ttyport = /dev/ttyS1
+
+# The default tty port speed: 19200
+# The tty speed can be one of: 38400, 19200, 9600, 4800
+# set ttyspeed = 4800 # NetCallerID port speed
+
+# Ignore tty control signals for internal modems and 3 wire serial cables
+# Disable tty control signals: ttyclocal = 1
+# Enable tty control signals: ttyclocal = 0 (default)
+# set ttyclocal = 1
+
+# The lockfile name is generated automatically
+# If tty port is /dev/modem, lockfile is: /var/lock/LCK..modem
+# set lockfile = /var/lock/LCK..ttyS0
+
+#####################
+# Modem or No Modem #
+#####################
+
+# Obtain CallerID from a CID device or a modem
+# device: nomodem = 1 (do not send AT commands)
+# modem: nomodem = 0 (default - send AT commands)
+# set nomodem = 1
+
+########################
+# Modem Initialization #
+########################
+
+# The default modem initialization is: "AT Z S0=0 E1 V1 Q0"
+# set initstr = "ATE1V1Q0"
+#
+# Alternate modem initialization string
+# set initstr = "AT&FE1V1Q0+VIP"
+
+# Addon strings to set modem for Distinctive Ring:
+# http://www.modemsite.com/56k/dring.asp
+#
+# 3Com/USR/TI chipset: ATS41=1
+# Reported Ring Codes: RING A, RING B, RING C
+# Rockwell/Conexant chipset: AT-SDR=7
+# Reported Ring Codes: RING 1, RING 2, RING 3
+# Lucent/Agere chipset: AT+VDR=1,0
+# Reported DROF/DRON messages: DRON=5 DROF=11, DRON=5 DROF=34
+#
+# Example adds 3Com DR to the default modem initialization
+# set initstr = "ATE1V1Q0S41=1"
+
+# The default for ncidd is to try two CID strings to setup
+# CallerID: "AT+VCID=1" and if that fails: "AT#CID=1".
+# set initcid = "AT#CID=1"
+#
+# Alternate CID strings to try if default does not work:
+# set initcid = "AT+FCLASS=8;+VCID=1"
+# set initcid = "AT-STE=1;+VCID=1"
+# set initcid = "AT-STE=1;#CID=1"
+
+#################
+# TiVo Settings #
+#################
+# set ttyclocal = 1 # TiVo requires CLOCAL
+# set ttyport = /dev/ttyS1 # TiVo Modem Port
+# set lockfile = /var/tmp/modemlock # needed for TiVo Modem Port
+#
+# To use a modem on the TiVo serial port
+# Tivo (stereo mini jack) ->
+# -> (stereo mini plug) TiVo serial cable (9-pin male) ->
+# -> (9-pin Female) PC modem cable (25-pin Male ->
+# -> (25-pin Female) Modem
+# if the modem has switches, disable DTR
+# Use this string to set the modem before attaching it to the TiVo:
+# AT&F0&D0&B1&W
+#
+# set ttyport = /dev/ttyS3 # TiVo Serial Port
+#
+# End TiVo Settings
+
diff --git a/abs/mv-core/MythVantage-config/templates/real_change_chan.sh b/abs/mv-core/MythVantage-config/templates/real_change_chan.sh
new file mode 100755
index 0000000..efeba88
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/real_change_chan.sh
@@ -0,0 +1,19 @@
+#!/bin/sh
+REMOTE_NAME=SA3250
+cmd="$1"
+
+case $cmd in
+ [0-9]*)
+ for digit in $(echo $1 | sed -e 's/./& /g'); do
+ irsend SEND_ONCE $REMOTE_NAME $digit
+ sleep 0.3
+ # If things work OK with sleep 1, try this for faster channel changes:
+ # sleep 0.3
+ done
+ ;;
+
+ *)
+ irsend SEND_ONCE $REMOTE_NAME $cmd
+ ;;
+ esac
+ /usr/bin/fix_audio.sh &
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/ATI_wonder/lircd.ATI.conf b/abs/mv-core/MythVantage-config/templates/remotes/ATI_wonder/lircd.ATI.conf
new file mode 100644
index 0000000..e7c1539
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/ATI_wonder/lircd.ATI.conf
@@ -0,0 +1,357 @@
+
+# Please make this file available to others
+# by sending it to <lirc@bartelmus.de>
+#
+# this config file was automatically generated
+# using lirc-0.7.0pre2(atiusb) on Fri Jan 2 19:09:02 2004
+#
+# contributed by
+#
+# brand: ATI Remote Wonder
+# model no. of remote control:
+# devices being controlled by this remote:
+#
+
+begin remote
+
+ name wonder
+ bits 32
+ eps 30
+ aeps 100
+
+ one 0 0
+ zero 0 0
+ gap 147987
+ toggle_bit 0
+
+
+ begin codes
+ A 0x0000000014C500F0
+ B 0x0000000014C601F0
+ POWER 0x0000000014C702F0
+ TV 0x0000000014C803F0
+ DVD 0x0000000014C904F0
+ WEB 0x0000000014CA05F0
+ GUIDE 0x0000000014CB06F0
+ GRAB 0x0000000014CC07F0
+ VOL_DOWN 0x0000000014CE09F0
+ VOL_UP 0x0000000014CD08F0
+ MUTE 0x0000000014CF0AF0
+ CH_DOWN 0x0000000014D10CF0
+ CH_UP 0x0000000014D00BF0
+ A 0x0000000014C500F0
+ B 0x0000000014C601F0
+ 1 0x0000000014D20DF0
+ 2 0x0000000014D30EF0
+ 3 0x0000000014D40FF0
+ 4 0x0000000014D510F0
+ 5 0x0000000014D611F0
+ 6 0x0000000014D712F0
+ 7 0x0000000014D813F0
+ 8 0x0000000014D914F0
+ 9 0x0000000014DA15F0
+ 0 0x0000000014DC17F0
+ MENU 0x0000000014DB16F0
+ CHECK 0x0000000014DD18F0
+ C 0x0000000014DE19F0
+ D 0x0000000014E01BF0
+ UP 0x0000000014DF1AF0
+ LEFT 0x0000000014E21DF0
+ DOWN 0x0000000014E722F0
+ RIGHT 0x0000000014E41FF0
+ OK 0x0000000014E31EF0
+ REPLAY 0x0000000014E11CF0
+ FULLSCREEN 0x0000000014E520F0
+ E 0x0000000014E621F0
+ F 0x0000000014E823F0
+ REWIND 0x0000000014E924F0
+ FORWARD 0x0000000014EB26F0
+ PLAY 0x0000000014EA25F0
+ RECORD 0x0000000014EC27F0
+ STOP 0x0000000014ED28F0
+ PAUSE 0x0000000014EE29F0
+ end codes
+
+end remote
+
+
+
+# this config file was automatically generated
+# using lirc-0.7.0(atiusb) on Sat Feb 12 13:22:29 2005
+#
+# contributed by Steffen
+#
+# brand: ATI Sapphire Remote Bob II USB
+# model no. of remote control: 5000024400
+# devices being controlled by this remote: MythTV
+#
+
+begin remote
+
+name wonder II
+bits 16
+eps 30
+aeps 100
+
+one 0 0
+zero 0 0
+pre_data_bits 8
+pre_data 0x0
+post_data_bits 16
+post_data 0x0
+gap 299851
+toggle_bit 0
+
+
+begin codes
+aux1 0x023F
+aux2 0x023F
+aux3 0x023F
+aux4 0x023F
+mouse_left_btn 0x02A9
+mouse_right_btn 0x02AA
+a 0x0278
+b 0x0279
+power 0x020C
+dvd 0x0238
+tv 0x0239
+help 0x02BE
+pc 0x023F
+resize 0x02D5
+hand 0x02D0
+ati 0x028E
+vol_up 0x0210
+vol_down 0x0211
+mute 0x020D
+ch_up 0x0220
+ch_down 0x0221
+mouse_up 0x013F
+mouse_down 0x013F
+mouse_left 0x013F
+mouse_right 0x013F
+1 0x0201
+2 0x0202
+3 0x0203
+4 0x0204
+5 0x0205
+6 0x0206
+7 0x0207
+8 0x0208
+9 0x0209
+0 0x0200
+list 0x0254
+check 0x0282
+info 0x02F9
+timer 0x0296
+arrow_up 0x0258
+arrow_left 0x025A
+arrow_right 0x025B
+arrow_down 0x0259
+ok 0x025C
+c 0x017A
+d 0x027B
+play 0x022C
+e 0x027C
+f 0x027D
+rewind 0x0229
+rec 0x0237
+stop 0x0231
+pause 0x0230
+ffwd 0x0228
+end codes
+
+end remote
+
+
+# Please make this file available to others
+# by sending it to <lirc at bartelmus.de>
+#
+# this config file was automatically generated
+# using lirc-0.7.0-CVS(atiusb) on Sat Jun 19 16:27:14 2004
+#
+# contributed by gLaNDix
+#
+# brand: ATI
+# model no. of remote control: 5000023600
+# devices being controlled by this remote: MythTV 0.14
+#
+# USB ID: 0bc7:0004
+#
+
+begin remote
+
+ name REMOTE_WONDER
+ bits 16
+ eps 30
+ aeps 100
+
+ one 0 0
+ zero 0 0
+ pre_data_bits 8
+ pre_data 0x14
+ post_data_bits 16
+ post_data 0x0
+ gap 227933
+ toggle_bit 0
+
+
+ begin codes
+ A 0x000000000000D500
+ B 0x000000000000D601
+ C 0x000000000000EE19
+ D 0x000000000000F01B
+ E 0x000000000000F621
+ F 0x000000000000F823
+ POWER 0x000000000000D702
+ TV 0x000000000000D803
+ DVD 0x000000000000D904
+ WEB 0x000000000000DA05
+ BOOK 0x000000000000DB06
+ HAND 0x000000000000DC07
+ MOUSE_LEFT_BTN 0x0000000000004D78
+ MOUSE_LEFTBUTTONUP 0x0000000000004E79
+ MOUSE_LEFTBUTTONDBLCLICK 0x0000000000004E79
+ MOUSE_RIGHT_BTN 0x000000000000517C
+ MOUSE_RIGHTBUTTONUP 0x000000000000527D
+ MOUSE_RIGHTBUTTONDBLCLICK 0x000000000000537E
+ MOUSE_LEFT 0x0000000000004570
+ MOUSE_RIGHT 0x0000000000004671
+ MOUSE_UP 0x0000000000004772
+ MOUSE_DOWN 0x0000000000004873
+ MOUSE_UPRIGHT 0x0000000000004A75
+ MOUSE_DOWNRIGHT 0x0000000000004B76
+ MOUSE_DOWNLEFT 0x0000000000004C77
+ MOUSE_UPLEFT 0x0000000000004974
+ VOL_UP 0x000000000000DD08
+ VOL_DOWN 0x000000000000DE09
+ MUTE 0x000000000000DF0A
+ CH_DOWN 0x000000000000E10C
+ CH_UP 0x000000000000E00B
+ 1 0x000000000000E20D
+ 2 0x000000000000E30E
+ 3 0x000000000000E40F
+ 4 0x000000000000E510
+ 5 0x000000000000E611
+ 6 0x000000000000E712
+ 7 0x000000000000E813
+ 8 0x000000000000E914
+ 9 0x000000000000EA15
+ 0 0x000000000000EC17
+ DVD_ROOTMENU 0x000000000000EB16
+ SETUP 0x000000000000ED18
+ ARROW_UP 0x000000000000EF1A
+ ARROW_RIGHT 0x000000000000F41F
+ ARROW_DOWN 0x000000000000F722
+ ARROW_LEFT 0x000000000000F21D
+ OK 0x000000000000F31E
+ MAXAMIZE 0x000000000000F520
+ TV_ON_DEMAND 0x000000000000F11C
+ BACK 0x000000000000F924
+ PLAY 0x000000000000FA25
+ NEXT 0x000000000000FB26
+ RECORD 0x000000000000FC27
+ STOP 0x000000000000FD28
+ PAUSE 0x000000000000FE29
+ end codes
+
+end remote
+
+
+# Please make this file available to others
+# by sending it to <lirc@bartelmus.de>
+#
+# this config file was automatically generated
+# using lirc-0.7.0pre1(atiusb) on Fri Nov 28 16:56:46 2003
+#
+# contributed by Jason Piterak
+#
+# brand: ati
+# This uses the atiusb driver
+#=20
+# model no. of remote control: 5000022000
+#
+# devices being controlled by this remote:
+# MythTV PVR using knopmyth by Cecil and Dale at
+# http://mysettopbox.tv
+# Key map names are as per ATI's website:
+#http://www.ati.com/support/connectors/remotecontrol/atiremotecontrolbutton=s.html
+# Feel free to change them as you see fit :-)
+#
+# NOTE: There are 16 channels for this remote; this file only
+# supports one channel. See the GATOS project for information
+# on how to change the channel. Not tested. Unknown channel.
+#
+
+begin remote
+
+ name atiusb
+ bits 16
+ eps 30
+ aeps 100
+
+ one 0 0
+ zero 0 0
+ pre_data_bits 8
+ pre_data 0x14
+ post_data_bits 16
+ post_data 0xF000
+ gap 139891
+ toggle_bit 0
+
+
+ begin codes
+ a 0x000000000000C500
+ b 0x000000000000C601
+ power 0x000000000000C702
+ tv 0x000000000000C803
+ dvd 0x000000000000C904
+ web 0x000000000000CA05
+ media_library 0x000000000000CB06
+ drag 0x000000000000CC07
+ mouse-button_left 0x0000000000003D78
+ mouse-button_right 0x000000000000417C
+ mouse-up 0x0000000000003772
+ mouse-down 0x0000000000003873
+ mouse-left 0x0000000000003570
+ mouse-right 0x0000000000003671
+ mouse-left_up 0x0000000000003974
+ mouse-right_up 0x0000000000003A75
+ mouse-left_down 0x0000000000003C77
+ mouse-right_down 0x0000000000003B76
+ vol-up 0x000000000000CD08
+ vol-down 0x000000000000CE09
+ mute 0x000000000000CF0A
+ chan-up 0x000000000000D00B
+ chan-down 0x000000000000D10C
+ 1 0x000000000000D20D
+ 2 0x000000000000D30E
+ 3 0x000000000000D40F
+ 4 0x000000000000D510
+ 5 0x000000000000D611
+ 6 0x000000000000D712
+ 7 0x000000000000D813
+ 8 0x000000000000D914
+ 9 0x000000000000DA15
+ 0 0x000000000000DC17
+ dvd-root_menu 0x000000000000DB16
+ launch_setup 0x000000000000DD18
+ c 0x000000000000DE19
+ d 0x000000000000E01B
+ tv_on_demand 0x000000000000E11C
+ max_window 0x000000000000E520
+ cursor-up 0x000000000000DF1A
+ cursor-down 0x000000000000E722
+ cursor-left 0x000000000000E21D
+ cursor-right 0x000000000000E41F
+ ok 0x000000000000E31E
+ e 0x000000000000E621
+ f 0x000000000000E823
+ rewind 0x000000000000E924
+ play 0x000000000000EA25
+ fast_forward 0x000000000000EB26
+ record 0x000000000000EC27
+ stop 0x000000000000ED28
+ pause 0x000000000000EE29
+ end codes
+
+end remote
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/ATI_wonder/lircrc-atiwonder.txt b/abs/mv-core/MythVantage-config/templates/remotes/ATI_wonder/lircrc-atiwonder.txt
new file mode 100644
index 0000000..80eec07
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/ATI_wonder/lircrc-atiwonder.txt
@@ -0,0 +1,922 @@
+# ~/.mythtv/lircrc
+#
+# MythTV native LIRC config file for
+# the ATI-Wonder Remote
+# using lirc_atiusb driver
+#
+
+begin
+prog = mythtv
+button = a
+config = E
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = A
+config = E
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = b
+config = O
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = B
+config = O
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = B
+config = O
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = stop
+config = Esc
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = STOP
+config = Esc
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = ffwd
+config = Right
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = FORWARD
+config = Right
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = rewind
+config = Left
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = REWIND
+config = Left
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = pause
+config = P
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = PAUSE
+config = P
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = play
+config = P
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = PLAY
+config = P
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = mute
+config = |
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = MUTE
+config = |
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = vol_down
+config = F10
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = VOL_DOWN
+config = F10
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = vol_up
+config = F11
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = VOL_UP
+config = F11
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = f
+config = PgDown
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = F
+config = PgDown
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = e
+config = Esc
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = E
+config = Esc
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = ch_up
+config = Up
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = CH_UP
+config = Up
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = ch_down
+config = Down
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = CH_DOWN
+config = Down
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = ok
+config = Enter
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = OK
+config = Enter
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = 1
+config = 1
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = 2
+config = 2
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = 3
+config = 3
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = 4
+config = 4
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = 5
+config = 5
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = 6
+config = 6
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = 7
+config = 7
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = 8
+config = 8
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = 9
+config = 9
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = 0
+config = 0
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = rec
+config = R
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = RECORD
+config = R
+repeat = 5
+end
+
+
+# ~/.mythtv/lircrc
+#
+# MythTV native LIRC config file for
+# the ATI-Wonder Remote
+# using lirc_atiusb driver
+#
+
+begin
+#Jumppoint for Program Guide created in Mythweb
+ prog = mythtv
+ button = TV
+ config = !
+end
+
+begin
+#Jumppoint for DVD playback created in Mythweb
+ prog = mythtv
+ button = DVD
+ config = @
+end
+
+begin
+ prog = mythtv
+#Jumppoint for MythWeater created in Mythweb
+ button = WEB
+ config = #
+end
+
+begin
+ prog = mythtv
+#Jumppoint for MythVideo created in Mythweb
+ button = BOOK
+ config = $
+end
+
+begin
+ prog = mythtv
+#Jumppoint for MythWeater created in Mythweb
+ button = HAND
+ config = %
+end
+
+begin
+prog = mythtv
+button = 1
+config = 1
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = 2
+config = 2
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = 3
+config = 3
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = 4
+config = 4
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = 5
+config = 5
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = 6
+config = 6
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = 7
+config = 7
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = 8
+config = 8
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = 9
+config = 9
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = 0
+config = 0
+repeat = 5
+end
+
+begin
+ prog = mythtv
+ button = MOUSE_UP
+ config = Up
+end
+
+begin
+ prog = mythtv
+ button = MOUSE_DOWN
+ config = Down
+end
+
+begin
+ prog = mythtv
+ button = MOUSE_LEFT
+ config = Left
+end
+
+begin
+ prog = mythtv
+ button = MOUSE_RIGHT
+ config = Right
+end
+
+begin
+ prog = mythtv
+ button = MOUSE_RIGHT_BTN
+ config = Esc
+end
+
+begin
+ prog = mythtv
+# Enter button
+ button = MOUSE_LEFT_BTN
+ config = Return
+end
+
+begin
+ prog = mythtv
+ button = POWER
+ config = Esc
+end
+
+begin
+ prog = mythtv
+# Enter button
+ button = OK
+ config = Return
+end
+
+begin
+ prog = mythtv
+ button = ARROW_UP
+ config = Up
+end
+
+begin
+ prog = mythtv
+ button = ARROW_DOWN
+ config = Down
+end
+
+begin
+ prog = mythtv
+ button = ARROW_LEFT
+ config = Left
+end
+
+begin
+ prog = mythtv
+ button = ARROW_RIGHT
+ config = Right
+end
+
+begin
+ prog = mythtv
+ button = D
+ config = Esc
+end
+
+begin
+prog = mythtv
+button = CH_UP
+config = Up
+end
+
+begin
+prog = mythtv
+button = CH_DOWN
+config = Down
+end
+
+begin
+ prog = mythtv
+ button = VOL_DOWN
+ repeat = 3
+ config = F10
+end
+
+begin
+ prog = mythtv
+ button = VOL_UP
+ repeat = 3
+ config = F11
+end
+
+begin
+ prog = mythtv
+ button = MUTE
+ config = |
+end
+
+begin
+ prog = mythtv
+ button = DVD_ROOTMENU
+ config = M
+end
+
+begin
+ prog = mythtv
+# Enter button
+ button = SETUP
+ config = Return
+end
+
+
+begin
+ prog = mythtv
+ button = A
+ config = S
+end
+
+begin
+ prog = mythtv
+ button = B
+ config = I
+end
+
+begin
+ prog = mythtv
+ button = C
+ config = T
+end
+
+begin
+prog = mythtv
+# Change focus for PiP (to change channel in the other window)
+button = MAXAMIZE
+config = B
+end
+
+begin
+prog = mythtv
+# Toggle PiP on/off
+button = TV_ON_DEMAND
+config = V
+end
+
+begin
+ prog = mythtv
+ button = BACK
+ config = <
+end
+
+begin
+ prog = mythtv
+ button = NEXT
+ config = >
+end
+
+begin
+ prog = mythtv
+ button = BACK
+ config = Left
+end
+
+
+begin
+ prog = mythtv
+ button = NEXT
+ config = Right
+end
+
+begin
+prog = mythtv
+button = RECORD
+config = R
+end
+
+begin
+prog = mythtv
+button = STOP
+config = Esc
+end
+
+begin
+prog = mythtv
+button = PLAY
+config = P
+end
+
+begin
+prog = mythtv
+button = PAUSE
+config = P
+end
+
+#Page Up/Down
+begin
+prog = mythtv
+button = E
+config = PgUp
+end
+
+begin
+prog = mythtv
+button = F
+config = PgDown
+end
+
+begin
+prog = mythtv
+button = E
+# Use for backwards commercial skip
+config = Q
+end
+
+begin
+prog = mythtv
+button = F
+# Use for forward commercial skip
+config = Z
+end
+
+#Mplayer
+
+begin
+prog = mplayer
+button = PLAY
+config = pause
+end
+
+begin
+prog = mplayer
+button = PAUSE
+config = pause
+end
+
+begin
+prog = mplayer
+button = STOP
+config = quit
+end
+
+begin
+prog = mplayer
+button = POWER
+config = quit
+end
+
+begin
+prog = mplayer
+button = D
+config = quit
+end
+
+begin
+prog = mplayer
+button = MOUSE_RIGHT_BTN
+config = quit
+end
+
+begin
+prog = mplayer
+button = MUTE
+config = mute
+end
+
+begin
+prog = mplayer
+button = E
+repeat = 6
+config = seek -10
+end
+
+begin
+prog = mplayer
+button = F
+repeat = 6
+config = seek 10
+end
+
+begin
+prog = mplayer
+button = BACK
+repeat = 6
+config = seek -70
+end
+
+begin
+prog = mplayer
+button = NEXT
+repeat = 6
+config = seek 70
+end
+
+begin
+prog = mplayer
+button = VOL_DOWN
+repeat = 6
+config = volume -1
+end
+
+begin
+prog = mplayer
+button = VOL_UP
+repeat = 6
+config = volume 1
+end
+
+#Xine
+
+begin
+prog = xine
+button = PLAY
+config = Play
+end
+
+begin
+prog = xine
+button = PAUSE
+config = PAUSE
+end
+
+begin
+prog = xine
+button = Mute
+config = Mute
+end
+
+begin
+prog = xine
+button = STOP
+config = Stop
+end
+
+begin
+prog = xine
+button = POWER
+config = Quit
+end
+
+begin
+prog = xine
+button = D
+config = quit
+end
+
+begin
+prog = xine
+button = MOUSE_RIGHT_BTN
+config = quit
+end
+
+begin
+prog = xine
+button = ARROW_UP
+repeat = 4
+config = EventUp
+end
+
+begin
+prog = xine
+button = ARROW_DOWN
+repeat = 4
+config = EventDown
+end
+
+begin
+prog = xine
+button = ARROW_LEFT
+repeat = 4
+config = EventLeft
+end
+
+begin
+prog = xine
+button = ARROW_RIGHT
+repeat = 4
+config = EventRight
+end
+
+begin
+prog = xine
+button = OK
+repeat = 0
+config = EventSelect
+end
+
+begin
+prog = xine
+button = MOUSE_UP
+repeat = 4
+config = EventUp
+end
+
+begin
+prog = xine
+button = MOUSE_DOWN
+repeat = 4
+config = EventDown
+end
+
+begin
+prog = xine
+button = MOUSE_LEFT
+repeat = 4
+config = EventLeft
+end
+
+begin
+prog = xine
+button = MOUSE_RIGHT
+repeat = 4
+config = EventRight
+end
+
+begin
+prog = xine
+button = MOUSE_LEFT_BTN
+repeat = 0
+config = EventSelect
+end
+
+begin
+prog = xine
+button = DVD_ROOTMENU
+repeat = 0
+config = Menu
+end
+
+#vol down
+begin
+prog = xine
+button = VOL_DOWN
+repeat = 1
+config = Volume-
+end
+
+#vol up
+begin
+prog = xine
+button = VOL_UP
+repeat = 1
+config = Volume+
+end
+
+begin
+prog = xine
+button = TV_ON_DEMAND
+repeat = 1
+config = ZoomIn
+end
+
+begin
+prog = xine
+button = MAXAMIZE
+repeat = 1
+config = ZoomOut
+end
+
+#skip chapter forward
+begin
+prog = xine
+button = NEXT
+repeat = 1
+config = EventNext
+end
+
+#skip chapter backward
+begin
+prog = xine
+button = BACK
+repeat = 1
+config = EventPrior
+end
+
+begin
+prog = xine
+button = F
+repeat = 2
+config = SeekRelative+45
+end
+
+begin
+prog = xine
+button = E
+repeat = 2
+config = SeekRelative-45
+end
+
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/ATI_wonder/preview.jpg b/abs/mv-core/MythVantage-config/templates/remotes/ATI_wonder/preview.jpg
new file mode 100644
index 0000000..351a111
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/ATI_wonder/preview.jpg
Binary files differ
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/MX-500-jams/lircd.conf.MX-500-JAMS b/abs/mv-core/MythVantage-config/templates/remotes/MX-500-jams/lircd.conf.MX-500-JAMS
new file mode 100644
index 0000000..b76d32c
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/MX-500-jams/lircd.conf.MX-500-JAMS
@@ -0,0 +1,115 @@
+#
+# this config file was automatically generated
+# using lirc-0.7.1-CVS(serial) on Fri Feb 4 23:20:56 2005
+#
+# contributed by Christoph Bartelmus
+#
+# brand: Streamzap
+# model no. of remote control: PC Remote
+# devices being controlled by this remote: USB receiver
+#
+
+begin remote
+
+ name Streamzap_PC_Remote
+ bits 6
+ flags RC5|CONST_LENGTH
+ eps 30
+ aeps 100
+
+ one 889 889
+ zero 889 889
+ plead 889
+ pre_data_bits 8
+ pre_data 0xA3
+ gap 108344
+ toggle_bit 2
+
+
+ begin codes
+ 0 0x00
+ 1 0x01
+ 2 0x02
+ 3 0x03
+ 4 0x04
+ 5 0x05
+ 6 0x06
+ 7 0x07
+ 8 0x08
+ 9 0x09
+ POWER 0x0A
+ MUTE 0x0B
+ CH_UP 0x0C
+ VOL_UP 0x0D
+ CH_DOWN 0x0E
+ VOL_DOWN 0x0F
+ UP 0x10
+ LEFT 0x11
+ OK 0x12
+ RIGHT 0x13
+ DOWN 0x14
+ MENU 0x15
+ EXIT 0x16
+ PLAY 0x17
+ PAUSE 0x18
+ STOP 0x19
+ |<< 0x1A
+ >>| 0x1B
+ RECORD 0x1C
+ << 0x1D
+ >> 0x1E
+ RED 0x20
+ GREEN 0x21
+ YELLOW 0x22
+ BLUE 0x23
+ end codes
+
+end remote
+
+
+
+# Please make this file available to others
+# by sending it to <lirc@bartelmus.de>
+#
+# this config file was automatically generated
+# using lirc-0.7.2(streamzap) on Mon Dec 5 08:45:02 2005
+#
+# contributed by
+#
+# brand: RS_LD_120-MX500
+# model no. of remote control:
+# devices being controlled by this remote:
+#
+
+begin remote
+
+ name RS_LD
+ bits 15
+ flags SPACE_ENC|CONST_LENGTH
+ eps 30
+ aeps 100
+
+ one 384 1920
+ zero 384 896
+ ptrail 384
+ gap 70400
+ min_repeat 2
+ toggle_bit 0
+
+
+ begin codes
+ RESET 0x19FD
+ TIME 0X1902
+ BLANK 0X1B02
+ PICTURE 0X1882
+ ASPECT 0X1A82
+ BROWSE 0X1982
+ DELETE 0X1B82
+ CARD 0X1842
+ CARD_SOURCE 0X1A42
+ SPARE1 0X1942
+ end codes
+
+end remote
+
+
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/MX-500-jams/lircrc b/abs/mv-core/MythVantage-config/templates/remotes/MX-500-jams/lircrc
new file mode 100644
index 0000000..5e668b5
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/MX-500-jams/lircrc
@@ -0,0 +1,832 @@
+# StreamZap Remote
+# 'config' must either be a literal key, e.g. 'config = l' or must
+# refer to a defined key in MythTV, e.g. 'config = PLAY'a
+
+
+#restart frontend
+begin
+ remote = RS_LD
+ button = RESET
+ prog = irexec
+ repeat = 0
+ config = /usr/bin/restartfrontend.sh
+end
+
+#time
+begin
+ remote = RS_LD
+ button = TIME
+ prog = irexec
+ repeat = 10
+ config = /usr/bin/saytime.sh
+end
+
+#screen blank
+begin
+ remote = RS_LD
+ button = BLANK
+ prog = irexec
+ repeat = 0
+# config = ls
+ config = xset s activate ; xset s blank
+end
+
+
+#picture
+begin
+REMOTE = RS_LD
+prog = mythtv
+button = PICTURE
+repeat = 4
+config = f
+end
+
+#change aspect
+begin
+remote = RS_LD
+prog = mythtv
+button = ASPECT
+# change aspect ratio
+config = w
+end
+
+#Browse
+begin
+remote = RS_LD
+prog = mythtv
+button = BROWSE
+repeat = 8
+config = o
+end
+
+# delete key
+begin
+remote = RS_LD
+prog = mythtv
+button = DELETE
+repeat = 8
+config = d
+end
+
+
+#change card
+begin
+remote = RS_LD
+prog = mythtv
+button = CARD
+repeat = 8
+config = y
+end
+
+# Change TV card input
+begin
+remote = RS_LD
+prog = mythtv
+button = CARD_SOURCE
+repeat = 4
+config = C
+end
+
+
+
+# Cycle through channel history
+begin
+remote = Streamzap_PC_Remote
+prog = mythtv
+button = BLUE
+repeat = 4
+config = H
+end
+
+# Bring up OSD info
+begin
+remote = Streamzap_PC_Remote
+prog = mythtv
+button = YELLOW
+repeat = 4
+config = i
+end
+
+
+
+
+begin
+prog = mythtv
+button = 0
+config = 0
+end
+
+begin
+prog = mythtv
+button = 1
+config = 1
+end
+
+begin
+prog = mythtv
+button = 2
+config = 2
+end
+
+begin
+prog = mythtv
+button = 3
+config = 3
+end
+
+begin
+prog = mythtv
+button = 4
+config = 4
+end
+
+begin
+prog = mythtv
+button = 5
+config = 5
+end
+
+begin
+prog = mythtv
+button = 6
+config = 6
+end
+
+begin
+prog = mythtv
+button = 7
+config = 7
+end
+
+begin
+prog = mythtv
+button = 8
+config = 8
+end
+
+begin
+prog = mythtv
+button = 9
+config = 9
+end
+
+begin
+prog = mythtv
+button = POWER
+config = Esc
+end
+
+# ???
+begin
+prog = mythtv
+button = MUTE
+config = F9
+end
+
+begin
+prog = mythtv
+button = CH_UP
+repeat = 3
+config = PgUp
+end
+
+begin
+prog = mythtv
+button = VOL_UP
+repeat = 3
+config = ]
+end
+
+begin
+prog = mythtv
+button = CH_DOWN
+repeat = 3
+config = PgDown
+end
+
+begin
+prog = mythtv
+button = VOL_DOWN
+repeat = 3
+config = [
+end
+
+begin
+prog = mythtv
+button = UP
+repeat = 3
+config = Up
+end
+
+begin
+prog = mythtv
+button = LEFT
+# navigates, or skips back during playback or live tv.
+config = Left
+end
+
+begin
+prog = mythtv
+button = OK
+config = Return
+end
+
+begin
+prog = mythtv
+button = RIGHT
+# navigates, or skips forwards during playback or live tv.
+config = Right
+end
+
+begin
+prog = mythtv
+button = DOWN
+repeat = 3
+config = Down
+end
+
+begin
+prog = mythtv
+button = MENU
+config = m
+end
+
+begin
+prog = mythtv
+button = EXIT
+config = Esc
+end
+
+begin
+prog = mythtv
+button = PLAY
+config = Space
+end
+
+begin
+prog = mythtv
+button = PAUSE
+config = p
+end
+
+begin
+prog = mythtv
+button = STOP
+config = Esc
+end
+
+begin
+prog = mythtv
+# skip backward
+button = |<<
+config = PgUp
+end
+
+begin
+prog = mythtv
+# skip forward
+button = >>|
+config = PgDown
+end
+
+begin
+prog = mythtv
+button = RECORD
+config = r
+end
+
+begin
+prog = mythtv
+# rewind
+button = <<
+config = Home
+end
+
+begin
+prog = mythtv
+# fast forward
+button = >>
+config = End
+end
+
+begin
+prog = mythtv
+button = RED
+# Delete
+config = d
+end
+
+begin
+prog = mythtv
+button = GREEN
+# Info
+config = i
+end
+
+#begin
+#prog = mythtv
+#button = YELLOW
+# change aspect ratio
+#config = w
+#end
+
+begin
+prog = mythtv
+button = BLUE
+config = Tab
+end
+
+# MPLAYER
+begin
+prog = mplayer
+button = POWER
+config = quit
+end
+
+begin
+prog = mplayer
+button = MUTE
+config = mute
+end
+
+begin
+prog = mplayer
+button = VOL_UP
+repeat = 3
+config = volume +1
+end
+
+begin
+prog = mplayer
+button = VOL_DOWN
+repeat = 3
+config = volume -1
+end
+
+begin
+prog = mplayer
+button = UP
+repeat = 3
+config = seek +10
+end
+
+begin
+prog = mplayer
+button = LEFT
+# navigates, or skips back during playback or live tv.
+config = seek -60
+end
+
+begin
+prog = mplayer
+button = RIGHT
+# navigates, or skips forwards during playback or live tv.
+config = seek +60
+end
+
+begin
+prog = mplayer
+button = DOWN
+repeat = 3
+config = seek -10
+end
+
+begin
+prog = mplayer
+button = EXIT
+config = quit
+end
+
+begin
+prog = mplayer
+button = play
+config = speed_set 1.0
+end
+
+begin
+ prog = mplayer
+ button = pause
+ config = pause
+end
+
+begin
+prog = mplayer
+button = STOP
+config = quit
+end
+
+begin
+prog = mplayer
+# skip backward
+button = |<<
+config = seek -600
+end
+
+begin
+prog = mplayer
+# skip forward
+button = >>|
+config = seek +600
+end
+
+begin
+prog = mplayer
+# slow forward
+button = <<
+config = speed_mult 0.5
+end
+
+begin
+prog = mplayer
+# fast forward
+button = >>
+config = speed_mult 2.0
+end
+
+### xine commands
+
+begin
+prog = xine
+button = YELLOW
+repeat = 4
+#config = ToggleVisiblity
+config = OSDStreamInfos
+end
+
+begin
+prog = xine
+button = MENU
+repeat = 4
+config = SeekRelative+60
+end
+
+# increase brightness by 10
+begin
+ button = DELETE
+ prog = xine
+ repeat = 4
+ config = BrightnessControl+
+end
+
+# decrease brightness by 10
+begin
+ button = PICTURE
+ prog = xine
+ repeat = 4
+ config = BrightnessControl-
+end
+
+
+begin
+prog = xine
+button = PAUSE
+repeat = 4
+config = Pause
+end
+
+begin
+prog = xine
+button = PLAY
+repeat = 4
+config = Play
+end
+
+begin
+prog = xine
+button = STOP
+repeat = 4
+config = quit
+end
+
+begin
+prog = xine
+button = MUTE
+repeat = 4
+config = mute
+end
+
+begin
+prog = xine
+button = <<
+repeat = 4
+config = SeekRelative-30
+end
+
+begin
+prog = xine
+button = >>
+repeat = 4
+#config = SeekRelative+30
+config = SpeedFaster
+end
+
+begin
+prog = xine
+button = POWER
+repeat = 4
+config = quit
+end
+
+begin
+prog = xine
+button = EXIT
+repeat = 4
+config = quit
+end
+
+
+begin
+prog = xine
+button = FREEZE
+repeat = 4
+config = SeekRelative+1200
+end
+
+begin
+prog = xine
+button = MOVE
+repeat = 4
+config = SeekRelative-1200
+end
+
+begin
+prog = xine
+button = 3
+config = SpuNext
+repeat = 0
+end
+
+# Select previous sub picture (subtitle) channel.
+begin
+button = 1
+prog = xine
+repeat = 0
+config = SpuPrior
+end
+
+# Select next audio channel.
+begin
+button = 9
+prog = xine
+repeat = 0
+config = AudioChannelNext
+end
+
+# Select previous audio channel.
+begin
+button = 7
+prog = xine
+repeat = 0
+config = AudioChannelPrior
+end
+
+
+
+# Up event.
+begin
+
+button = UP
+prog = xine
+repeat = 8
+config = EventUp
+end
+
+# Down event.
+begin
+
+button = DOWN
+prog = xine
+repeat = 8
+config = EventDown
+end
+
+# Left event.
+begin
+
+button = LEFT
+prog = xine
+repeat = 8
+config = EventLeft
+end
+
+# Right event.
+begin
+
+button = RIGHT
+prog = xine
+repeat = 8
+config = EventRight
+end
+
+# Select event.
+begin
+prog = xine
+button = ok
+repeat = 8
+config = EventSelect
+end
+
+# Down Chapter
+begin
+
+button = CH_DOWN
+prog = xine
+repeat = 8
+config = EventPrior
+end
+
+# Next Chapter.
+begin
+
+button = CH_UP
+prog = xine
+repeat = 8
+config = EventNext
+end
+
+# menu.
+begin
+
+button = record
+prog = xine
+repeat = 8
+config = RootMenu
+end
+
+# Toggle aspect ratio
+begin
+prog = xine
+button = ASPECT
+repeat = 0
+config = ToggleAspectRatio
+end
+
+
+
+#######xmms
+begin xmms
+ begin
+ prog = xmms
+ button = PLAY
+ config = PLAY
+ end
+ begin
+ prog = xmms
+ button = clear
+ config = PLAYLIST_CLEAR
+ end
+ begin
+ prog = xmms
+ button = load
+ config = PLAYLIST_ADD .xmms/xmms.m3u
+ end
+ begin
+ prog = xmms
+ button = PAUSE
+ config = PAUSE
+ end
+ begin
+ prog = xmms
+ button = STOP
+ config = STOP
+ end
+ begin
+ prog = xmms
+ button = EXIT
+ config = QUIT
+ flags = mode
+ end
+
+ begin
+ prog = xmms
+ button = POWER
+ config = QUIT
+ flags = mode
+ end
+
+ begin
+ prog = xmms
+ button = CH_UP
+ config = NEXT
+ end
+ begin
+ prog = xmms
+ button = CH_DOWN
+ config = PREV
+ end
+
+
+
+begin
+ prog = xmms
+ button = >>|
+ config = NEXT
+ end
+begin
+ prog = xmms
+ button = |<<
+ config = PREV
+end
+
+
+begin
+ prog = xmms
+ button = <<
+ config = FWD 10
+ repeat = 2
+ end
+ begin
+ prog = xmms
+ button = <<
+ config = BWD 10
+ repeat = 2
+ end
+ begin
+ prog = xmms
+ button = volup
+ config = VOL_UP 10
+ repeat = 2
+ end
+ begin
+ prog = xmms
+ button = voldown
+ config = VOL_DOWN 10
+ repeat = 2
+ end
+ begin
+ prog = xmms
+ button = 1
+ config = ONE
+ end
+ begin
+ prog = xmms
+ button = 2
+ config = TWO
+ end
+ begin
+ prog = xmms
+ button = 3
+ config = THREE
+ end
+ begin
+ prog = xmms
+ button = 4
+ config = FOUR
+ end
+ begin
+ prog = xmms
+ button = 5
+ config = FIVE
+ end
+ begin
+ prog = xmms
+ button = 6
+ config = SIX
+ end
+ begin
+ prog = xmms
+ button = 7
+ config = SEVEN
+ end
+ begin
+ prog = xmms
+ button = 8
+ config = EIGHT
+ end
+ begin
+ prog = xmms
+ button = 9
+ config = NINE
+ end
+ begin
+ prog = xmms
+ button = 0
+ config = ZERO
+ end
+ begin
+ prog = xmms
+ button = enter
+ config = SETPOS
+ end
+end xmms
+
+#
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/MX-500-jams/preview.jpg b/abs/mv-core/MythVantage-config/templates/remotes/MX-500-jams/preview.jpg
new file mode 100644
index 0000000..38857f9
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/MX-500-jams/preview.jpg
Binary files differ
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/MythVantage-one/lircd.conf b/abs/mv-core/MythVantage-config/templates/remotes/MythVantage-one/lircd.conf
new file mode 100644
index 0000000..b76d32c
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/MythVantage-one/lircd.conf
@@ -0,0 +1,115 @@
+#
+# this config file was automatically generated
+# using lirc-0.7.1-CVS(serial) on Fri Feb 4 23:20:56 2005
+#
+# contributed by Christoph Bartelmus
+#
+# brand: Streamzap
+# model no. of remote control: PC Remote
+# devices being controlled by this remote: USB receiver
+#
+
+begin remote
+
+ name Streamzap_PC_Remote
+ bits 6
+ flags RC5|CONST_LENGTH
+ eps 30
+ aeps 100
+
+ one 889 889
+ zero 889 889
+ plead 889
+ pre_data_bits 8
+ pre_data 0xA3
+ gap 108344
+ toggle_bit 2
+
+
+ begin codes
+ 0 0x00
+ 1 0x01
+ 2 0x02
+ 3 0x03
+ 4 0x04
+ 5 0x05
+ 6 0x06
+ 7 0x07
+ 8 0x08
+ 9 0x09
+ POWER 0x0A
+ MUTE 0x0B
+ CH_UP 0x0C
+ VOL_UP 0x0D
+ CH_DOWN 0x0E
+ VOL_DOWN 0x0F
+ UP 0x10
+ LEFT 0x11
+ OK 0x12
+ RIGHT 0x13
+ DOWN 0x14
+ MENU 0x15
+ EXIT 0x16
+ PLAY 0x17
+ PAUSE 0x18
+ STOP 0x19
+ |<< 0x1A
+ >>| 0x1B
+ RECORD 0x1C
+ << 0x1D
+ >> 0x1E
+ RED 0x20
+ GREEN 0x21
+ YELLOW 0x22
+ BLUE 0x23
+ end codes
+
+end remote
+
+
+
+# Please make this file available to others
+# by sending it to <lirc@bartelmus.de>
+#
+# this config file was automatically generated
+# using lirc-0.7.2(streamzap) on Mon Dec 5 08:45:02 2005
+#
+# contributed by
+#
+# brand: RS_LD_120-MX500
+# model no. of remote control:
+# devices being controlled by this remote:
+#
+
+begin remote
+
+ name RS_LD
+ bits 15
+ flags SPACE_ENC|CONST_LENGTH
+ eps 30
+ aeps 100
+
+ one 384 1920
+ zero 384 896
+ ptrail 384
+ gap 70400
+ min_repeat 2
+ toggle_bit 0
+
+
+ begin codes
+ RESET 0x19FD
+ TIME 0X1902
+ BLANK 0X1B02
+ PICTURE 0X1882
+ ASPECT 0X1A82
+ BROWSE 0X1982
+ DELETE 0X1B82
+ CARD 0X1842
+ CARD_SOURCE 0X1A42
+ SPARE1 0X1942
+ end codes
+
+end remote
+
+
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/MythVantage-one/lircrc b/abs/mv-core/MythVantage-config/templates/remotes/MythVantage-one/lircrc
new file mode 100755
index 0000000..2663c63
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/MythVantage-one/lircrc
@@ -0,0 +1,857 @@
+# StreamZap Remote
+# 'config' must either be a literal key, e.g. 'config = l' or must
+# refer to a defined key in MythTV, e.g. 'config = PLAY'a
+
+
+#restart frontend
+begin
+ remote = RS_LD
+ button = RESET
+ prog = irexec
+ repeat = 0
+ config = /usr/bin/restartfrontend.sh
+end
+
+#time
+begin
+ remote = RS_LD
+ button = TIME
+ prog = irexec
+ repeat = 10
+ config = /usr/bin/saytime.sh
+end
+
+#screen blank
+begin
+ remote = RS_LD
+ button = BLANK
+ prog = irexec
+ repeat = 0
+# config = ls
+ config = xset s activate ; xset s blank
+end
+
+
+#picture
+begin
+REMOTE = RS_LD
+prog = mythtv
+button = PICTURE
+repeat = 5
+config = f
+end
+
+#change aspect
+begin
+remote = RS_LD
+prog = mythtv
+button = ASPECT
+# change aspect ratio
+config = w
+repeat = 5
+end
+
+#Browse
+begin
+remote = RS_LD
+prog = mythtv
+button = BROWSE
+repeat = 8
+config = o
+end
+
+# delete key
+begin
+remote = RS_LD
+prog = mythtv
+button = DELETE
+repeat = 8
+config = d
+end
+
+
+#change card
+begin
+remote = RS_LD
+prog = mythtv
+button = CARD
+repeat = 8
+config = y
+end
+
+# Change TV card input
+begin
+remote = RS_LD
+prog = mythtv
+button = CARD_SOURCE
+repeat = 4
+config = C
+end
+
+
+
+# Cycle through channel history
+begin
+remote = Streamzap_PC_Remote
+prog = mythtv
+button = BLUE
+repeat = 4
+config = H
+end
+
+# Bring up OSD info
+begin
+remote = Streamzap_PC_Remote
+prog = mythtv
+button = YELLOW
+repeat = 4
+config = i
+end
+
+
+
+
+begin
+prog = mythtv
+button = 0
+config = 0
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = 1
+config = 1
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = 2
+config = 2
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = 3
+config = 3
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = 4
+config = 4
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = 5
+config = 5
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = 6
+config = 6
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = 7
+config = 7
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = 8
+config = 8
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = 9
+config = 9
+repeat = 5
+end
+
+
+begin
+prog = mythtv
+button = POWER
+config = Esc
+end
+
+# ???
+begin
+prog = mythtv
+button = MUTE
+config = F9
+end
+
+begin
+prog = mythtv
+button = CH_UP
+repeat = 3
+config = PgUp
+end
+
+begin
+prog = mythtv
+button = VOL_UP
+repeat = 3
+config = ]
+end
+
+begin
+prog = mythtv
+button = CH_DOWN
+repeat = 3
+config = PgDown
+end
+
+begin
+prog = mythtv
+button = VOL_DOWN
+repeat = 3
+config = [
+end
+
+begin
+prog = mythtv
+button = UP
+repeat = 3
+config = Up
+end
+
+begin
+prog = mythtv
+button = LEFT
+# navigates, or skips back during playback or live tv.
+config = Left
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = OK
+config = Return
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = RIGHT
+# navigates, or skips forwards during playback or live tv.
+config = Right
+end
+
+begin
+prog = mythtv
+button = DOWN
+repeat = 3
+config = Down
+end
+
+begin
+prog = mythtv
+button = MENU
+config = m
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = EXIT
+config = Esc
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = PLAY
+config = Space
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = PAUSE
+config = p
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = STOP
+config = Esc
+repeat = 5
+end
+
+begin
+prog = mythtv
+# skip backward
+button = |<<
+config = PgUp
+repeat = 5
+end
+
+begin
+prog = mythtv
+# skip forward
+button = >>|
+config = PgDown
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = RECORD
+config = r
+repeat = 5
+end
+
+begin
+prog = mythtv
+# rewind
+button = <<
+config = Home
+repeat = 5
+end
+
+begin
+prog = mythtv
+# fast forward
+button = >>
+config = End
+repeat = 5
+end
+
+begin
+prog = mythtv
+button = RED
+# Delete
+config = d
+end
+
+begin
+prog = mythtv
+button = GREEN
+# Info
+config = S
+repeat = 5
+end
+
+#begin
+#prog = mythtv
+#button = YELLOW
+# change aspect ratio
+#config = w
+#end
+
+begin
+prog = mythtv
+button = BLUE
+config = Tab
+end
+
+# MPLAYER
+begin
+prog = mplayer
+button = POWER
+config = quit
+end
+
+begin
+prog = mplayer
+button = MUTE
+config = mute
+end
+
+begin
+prog = mplayer
+button = VOL_UP
+repeat = 3
+config = volume +1
+end
+
+begin
+prog = mplayer
+button = VOL_DOWN
+repeat = 3
+config = volume -1
+end
+
+begin
+prog = mplayer
+button = UP
+repeat = 3
+config = seek +10
+end
+
+begin
+prog = mplayer
+button = LEFT
+# navigates, or skips back during playback or live tv.
+config = seek -60
+end
+
+begin
+prog = mplayer
+button = RIGHT
+# navigates, or skips forwards during playback or live tv.
+config = seek +60
+end
+
+begin
+prog = mplayer
+button = DOWN
+repeat = 3
+config = seek -10
+end
+
+begin
+prog = mplayer
+button = EXIT
+config = quit
+end
+
+begin
+prog = mplayer
+button = play
+config = speed_set 1.0
+end
+
+begin
+ prog = mplayer
+ button = pause
+ config = pause
+end
+
+begin
+prog = mplayer
+button = STOP
+config = quit
+end
+
+begin
+prog = mplayer
+# skip backward
+button = |<<
+config = seek -600
+end
+
+begin
+prog = mplayer
+# skip forward
+button = >>|
+config = seek +600
+end
+
+begin
+prog = mplayer
+# slow forward
+button = <<
+config = speed_mult 0.5
+end
+
+begin
+prog = mplayer
+# fast forward
+button = >>
+config = speed_mult 2.0
+end
+
+### xine commands
+
+begin
+prog = xine
+button = YELLOW
+repeat = 4
+#config = ToggleVisiblity
+config = OSDStreamInfos
+end
+
+begin
+prog = xine
+button = MENU
+repeat = 4
+config = SeekRelative+60
+end
+
+# increase brightness by 10
+begin
+ button = DELETE
+ prog = xine
+ repeat = 4
+ config = BrightnessControl+
+end
+
+# decrease brightness by 10
+begin
+ button = PICTURE
+ prog = xine
+ repeat = 4
+ config = BrightnessControl-
+end
+
+
+begin
+prog = xine
+button = PAUSE
+repeat = 4
+config = Pause
+end
+
+begin
+prog = xine
+button = PLAY
+repeat = 4
+config = Play
+end
+
+begin
+prog = xine
+button = STOP
+repeat = 4
+config = quit
+end
+
+begin
+prog = xine
+button = MUTE
+repeat = 4
+config = mute
+end
+
+begin
+prog = xine
+button = <<
+repeat = 4
+config = SeekRelative-30
+end
+
+begin
+prog = xine
+button = >>
+repeat = 4
+#config = SeekRelative+30
+config = SpeedFaster
+end
+
+begin
+prog = xine
+button = POWER
+repeat = 4
+config = quit
+end
+
+begin
+prog = xine
+button = EXIT
+repeat = 4
+config = quit
+end
+
+
+begin
+prog = xine
+button = FREEZE
+repeat = 4
+config = SeekRelative+1200
+end
+
+begin
+prog = xine
+button = MOVE
+repeat = 4
+config = SeekRelative-1200
+end
+
+begin
+prog = xine
+button = 3
+config = SpuNext
+repeat = 0
+end
+
+# Select previous sub picture (subtitle) channel.
+begin
+button = 1
+prog = xine
+repeat = 0
+config = SpuPrior
+end
+
+# Select next audio channel.
+begin
+button = 9
+prog = xine
+repeat = 0
+config = AudioChannelNext
+end
+
+# Select previous audio channel.
+begin
+button = 7
+prog = xine
+repeat = 0
+config = AudioChannelPrior
+end
+
+
+
+# Up event.
+begin
+
+button = UP
+prog = xine
+repeat = 8
+config = EventUp
+end
+
+# Down event.
+begin
+
+button = DOWN
+prog = xine
+repeat = 8
+config = EventDown
+end
+
+# Left event.
+begin
+
+button = LEFT
+prog = xine
+repeat = 8
+config = EventLeft
+end
+
+# Right event.
+begin
+
+button = RIGHT
+prog = xine
+repeat = 8
+config = EventRight
+end
+
+# Select event.
+begin
+prog = xine
+button = ok
+repeat = 8
+config = EventSelect
+end
+
+# Down Chapter
+begin
+
+button = CH_DOWN
+prog = xine
+repeat = 8
+config = EventPrior
+end
+
+# Next Chapter.
+begin
+
+button = CH_UP
+prog = xine
+repeat = 8
+config = EventNext
+end
+
+# menu.
+begin
+
+button = record
+prog = xine
+repeat = 8
+config = RootMenu
+end
+
+# Toggle aspect ratio
+begin
+prog = xine
+button = ASPECT
+repeat = 0
+config = ToggleAspectRatio
+end
+
+
+
+#######xmms
+begin xmms
+ begin
+ prog = xmms
+ button = PLAY
+ config = PLAY
+ end
+ begin
+ prog = xmms
+ button = clear
+ config = PLAYLIST_CLEAR
+ end
+ begin
+ prog = xmms
+ button = load
+ config = PLAYLIST_ADD .xmms/xmms.m3u
+ end
+ begin
+ prog = xmms
+ button = PAUSE
+ config = PAUSE
+ end
+ begin
+ prog = xmms
+ button = STOP
+ config = STOP
+ end
+ begin
+ prog = xmms
+ button = EXIT
+ config = QUIT
+ flags = mode
+ end
+
+ begin
+ prog = xmms
+ button = POWER
+ config = QUIT
+ flags = mode
+ end
+
+ begin
+ prog = xmms
+ button = CH_UP
+ config = NEXT
+ end
+ begin
+ prog = xmms
+ button = CH_DOWN
+ config = PREV
+ end
+
+
+
+begin
+ prog = xmms
+ button = >>|
+ config = NEXT
+ end
+begin
+ prog = xmms
+ button = |<<
+ config = PREV
+end
+
+
+begin
+ prog = xmms
+ button = <<
+ config = FWD 10
+ repeat = 2
+ end
+ begin
+ prog = xmms
+ button = <<
+ config = BWD 10
+ repeat = 2
+ end
+ begin
+ prog = xmms
+ button = volup
+ config = VOL_UP 10
+ repeat = 2
+ end
+ begin
+ prog = xmms
+ button = voldown
+ config = VOL_DOWN 10
+ repeat = 2
+ end
+ begin
+ prog = xmms
+ button = 1
+ config = ONE
+ end
+ begin
+ prog = xmms
+ button = 2
+ config = TWO
+ end
+ begin
+ prog = xmms
+ button = 3
+ config = THREE
+ end
+ begin
+ prog = xmms
+ button = 4
+ config = FOUR
+ end
+ begin
+ prog = xmms
+ button = 5
+ config = FIVE
+ end
+ begin
+ prog = xmms
+ button = 6
+ config = SIX
+ end
+ begin
+ prog = xmms
+ button = 7
+ config = SEVEN
+ end
+ begin
+ prog = xmms
+ button = 8
+ config = EIGHT
+ end
+ begin
+ prog = xmms
+ button = 9
+ config = NINE
+ end
+ begin
+ prog = xmms
+ button = 0
+ config = ZERO
+ end
+ begin
+ prog = xmms
+ button = enter
+ config = SETPOS
+ end
+end xmms
+
+#
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/MythVantage-one/preview.jpg b/abs/mv-core/MythVantage-config/templates/remotes/MythVantage-one/preview.jpg
new file mode 100644
index 0000000..e2af610
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/MythVantage-one/preview.jpg
Binary files differ
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/RadioShack_15-2116-Jarod_Wilson/lircd-rs.conf b/abs/mv-core/MythVantage-config/templates/remotes/RadioShack_15-2116-Jarod_Wilson/lircd-rs.conf
new file mode 100644
index 0000000..f8175f3
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/RadioShack_15-2116-Jarod_Wilson/lircd-rs.conf
@@ -0,0 +1,87 @@
+# this config file was generated
+# using lirc-0.7.0pre2(hauppauge) on Thu Jan 1 00:35:50 2004
+#
+# contributed by Jarod Wilson <jcw@wilsonet.com>
+#------------------------------------------------------------------------------
+#
+# filename: RadioShack_15-2116-vcr0081.lirc
+# encoding: RC-5
+# brand: RadioShack Universal (and others)
+# model: 15-2116, set as VCR type 0081
+# supported devices: all
+#
+# note: requires quite a bit of key reassignment w/keymover and EFCs...
+# see http://wilsonet.com/mythtv/rs15-2116.html for HOWTO
+#
+#------------------------------------------------------------------------------
+
+begin remote
+
+ name rs15-2116-vcr0081
+ bits 11
+ flags RC5|CONST_LENGTH
+ eps 20
+ aeps 0
+ header 0 0
+ one 889 889
+ zero 889 889
+ plead 889
+ ptrail 0
+ foot 0 0
+ repeat 0 0
+ pre_data_bits 2
+ pre_data 0x02
+ post_data_bits 0
+ post_data 0x0
+ pre 0 0
+ post 0 0
+ gap 113792
+ toggle_bit 2
+ frequency 36000
+ duty_cycle 50
+
+ begin codes
+ 0 0x0000000000000140
+ 1 0x0000000000000141
+ 2 0x0000000000000142
+ 3 0x0000000000000143
+ 4 0x0000000000000144
+ 5 0x0000000000000145
+ 6 0x0000000000000146
+ 7 0x0000000000000147
+ 8 0x0000000000000148
+ 9 0x0000000000000149
+ INFO 0x000000000000014a
+ SELECT 0x000000000000014b
+ POWER 0x000000000000014c
+ MUTE 0x000000000000014d
+ MOVE 0x000000000000014e
+ VOL+ 0x0000000000000150
+ VOL- 0x0000000000000151
+ RIGHT 0x000000000000015a
+ LEFT 0x000000000000015b
+ ENTER 0x000000000000015c
+ MENU 0x000000000000015d
+ CH+ 0x0000000000000160
+ CH- 0x0000000000000161
+ PIP 0x0000000000000162
+ SWAP 0x0000000000000163
+ SLEEP 0x0000000000000166
+ FREEZE 0x0000000000000168
+ PAUSE 0x0000000000000169
+ SKIP 0x000000000000016a
+ EXIT 0x0000000000000171
+ REW 0x0000000000000172
+ REPLAY 0x0000000000000173
+ FFWD 0x0000000000000174
+ PLAY 0x0000000000000175
+ STOP 0x0000000000000176
+ REC 0x0000000000000177
+ SKIP 0x0000000000000178
+ +100 0x0000000000000179
+ LAST 0x000000000000017b
+ GUIDE 0x000000000000017c
+ TV/VIDEO 0x000000000000017e
+ end codes
+
+end remote
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/RadioShack_15-2116-Jarod_Wilson/lircrc-rs b/abs/mv-core/MythVantage-config/templates/remotes/RadioShack_15-2116-Jarod_Wilson/lircrc-rs
new file mode 100644
index 0000000..91c0de5
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/RadioShack_15-2116-Jarod_Wilson/lircrc-rs
@@ -0,0 +1,539 @@
+# ~/.mythtv/lircrc
+#
+# MythTV native LIRC config file for
+# the RadioShack 15-2116, VCR type 0081
+# using Hauppauge IR receiver
+#
+# By Jarod Wilson, 2003/12/31
+# Amalgamated from Harry O's
+# .lircrc, the mythtv.org docs, and
+# a few touches of my own. :)
+#
+
+# Channel Up
+begin
+prog = mythtv
+button = CH+
+repeat = 4
+config = Up
+end
+
+# Channel Down
+begin
+prog = mythtv
+button = CH-
+repeat = 4
+config = Down
+end
+
+# OK/Select
+begin
+prog = mythtv
+button = SELECT
+repeat = 4
+config = Return
+end
+
+# Play
+begin
+prog = mythtv
+button = PLAY
+repeat = 4
+config = Space
+end
+
+# Stop
+begin
+prog = mythtv
+button = STOP
+repeat = 4
+config = Esc
+end
+
+# Escape/Exit/Back
+begin
+prog = mythtv
+button = EXIT
+repeat = 4
+config = Esc
+end
+
+# Power Off/Exit
+begin
+prog = mythtv
+button = POWER
+repeat = 4
+config = Esc
+end
+
+# Pause
+begin
+prog = mythtv
+button = PAUSE
+repeat = 4
+config = P
+end
+
+# Mute
+begin
+prog = mythtv
+button = MUTE
+repeat = 4
+config = |
+end
+
+# Rewind (10 sec default)
+begin
+prog = mythtv
+button = REW
+repeat = 4
+config = Left
+end
+
+begin
+prog = mythtv
+button = LEFT
+repeat = 4
+config = Left
+end
+
+# Fast forward (30 sec default)
+begin
+prog = mythtv
+button = FFWD
+repeat = 4
+config = Right
+end
+
+begin
+prog = mythtv
+button = RIGHT
+repeat = 4
+config = Right
+end
+
+# Skip forward (10 min default)
+begin
+prog = mythtv
+button = FREEZE
+repeat = 4
+config = PgDown
+end
+
+# Skip backward (10 min default)
+begin
+prog = mythtv
+button = MOVE
+repeat = 4
+config = PgUp
+end
+
+# Record
+begin
+prog = mythtv
+button = REC
+repeat = 4
+config = R
+end
+
+# OSD browse
+begin
+prog = mythtv
+button = GUIDE
+repeat = 4
+config = O
+end
+
+# Display EPG while in live TV,
+# View selected show while in EPG
+begin
+prog = mythtv
+button = MENU
+repeat = 4
+config = M
+end
+
+# Bring up OSD info
+begin
+prog = mythtv
+button = INFO
+repeat = 4
+config = I
+end
+
+# Change display aspect ratio
+begin
+prog = mythtv
+button = +100
+repeat = 4
+config = W
+end
+
+# Seek to previous commercial cut point
+begin
+prog = mythtv
+button = SLEEP
+repeat = 4
+config = Q
+end
+
+# Seek to next commercial cut point
+begin
+prog = mythtv
+button = ENTER
+repeat = 4
+config = Z
+end
+
+# Change TV card input
+begin
+prog = mythtv
+button = TV/VIDEO
+repeat = 4
+config = C
+end
+
+# Toggle Picture-In-Picture
+begin
+prog = mythtv
+button = PIP
+repeat = 4
+config = V
+end
+
+# Swap PIP
+begin
+prog = mythtv
+button = SWAP
+repeat = 4
+config = N
+end
+
+# Cycle through channel history
+begin
+prog = mythtv
+button = LAST
+repeat = 4
+config = H
+end
+
+# Numbers 0-9
+
+begin
+prog = mythtv
+button = 0
+repeat = 4
+config = 0
+end
+
+begin
+prog = mythtv
+button = 1
+repeat = 4
+config = 1
+end
+
+begin
+prog = mythtv
+button = 2
+repeat = 4
+config = 2
+end
+
+begin
+prog = mythtv
+button = 3
+repeat = 4
+config = 3
+end
+
+begin
+prog = mythtv
+button = 4
+repeat = 4
+config = 4
+end
+
+begin
+prog = mythtv
+button = 5
+repeat = 4
+config = 5
+end
+
+begin
+prog = mythtv
+button = 6
+repeat = 4
+config = 6
+end
+
+begin
+prog = mythtv
+button = 7
+repeat = 4
+config = 7
+end
+
+begin
+prog = mythtv
+button = 8
+repeat = 4
+config = 8
+end
+
+begin
+prog = mythtv
+button = 9
+repeat = 4
+config = 9
+end
+
+### MPlayer commands
+
+begin
+prog = mplayer
+button = MENU
+repeat = 4
+config = osd
+end
+
+begin
+prog = mplayer
+button = PAUSE
+repeat = 4
+config = pause
+end
+
+begin
+prog = mplayer
+button = PLAY
+repeat = 4
+config = seek +1
+end
+
+begin
+prog = mplayer
+button = STOP
+repeat = 4
+config = quit
+end
+
+begin
+prog = mplayer
+button = MUTE
+repeat = 4
+config = mute
+end
+
+begin
+prog = mplayer
+button = REW
+repeat = 4
+config = seek -10
+end
+
+begin
+prog = mplayer
+button = LEFT
+repeat = 4
+config = seek -10
+end
+
+begin
+prog = mplayer
+button = FFWD
+repeat = 4
+config = seek +30
+end
+
+begin
+prog = mplayer
+button = RIGHT
+repeat = 4
+config = seek +30
+end
+
+begin
+prog = mplayer
+button = EXIT
+repeat = 4
+config = quit
+end
+
+begin
+prog = mplayer
+button = FREEZE
+repeat = 4
+config = seek +1200
+end
+
+begin
+prog = mplayer
+button = MOVE
+repeat = 4
+config = seek -1200
+end
+
+begin
+prog = mplayer
+button = +100
+repeat = 4
+config = vo_fullscreen
+end
+
+### Xine commands
+
+begin
+prog = xine
+button = PLAY
+repeat = 3
+config = Play
+end
+
+begin
+prog = xine
+button = STOP
+repeat = 3
+config = Stop
+end
+
+begin
+prog = xine
+button = POWER
+repeat = 3
+config = Quit
+end
+
+begin
+prog = xine
+button = EXIT
+repeat = 3
+config = Quit
+end
+
+begin
+prog = xine
+button = PAUSE
+repeat = 3
+config = Pause
+end
+
+begin
+prog = xine
+button = CH+
+repeat = 3
+config = EventUp
+end
+
+begin
+prog = xine
+button = CH-
+repeat = 3
+config = EventDown
+end
+
+begin
+prog = xine
+button = LEFT
+repeat = 3
+config = EventLeft
+end
+
+begin
+prog = xine
+button = RIGHT
+repeat = 3
+config = EventRight
+end
+
+begin
+prog = xine
+button = SELECT
+repeat = 3
+config = EventSelect
+end
+
+begin
+prog = xine
+button = GUIDE
+repeat = 3
+config = Menu
+end
+
+begin
+prog = xine
+button = FFWD
+repeat = 3
+config = SeekRelative+30
+end
+
+begin
+prog = xine
+button = REW
+repeat = 3
+config = SeekRelative-30
+end
+
+begin
+prog = xine
+button = VOL+
+repeat = 3
+config = Volume+
+end
+
+begin
+prog = xine
+button = VOL-
+repeat = 3
+config = Volume-
+end
+
+begin
+prog = xine
+button = MUTE
+repeat = 3
+config = Mute
+end
+
+begin
+prog = xine
+button = MENU
+repeat = 3
+config = RootMenu
+end
+
+begin
+prog = xine
+button = FREEZE
+repeat = 3
+config = EventNext
+end
+
+begin
+prog = xine
+button = LAST
+repeat = 3
+config = EventPrior
+end
+
+begin
+prog = xine
+button = INFO
+repeat = 3
+config = OSDStreamInfos
+end
+
+begin
+prog = xine
+button = ENTER
+repeat = 3
+config = SpeedFaster
+end
+
+begin
+prog = xine
+button = SLEEP
+repeat = 3
+config = SpeedSlower
+end
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/RadioShack_15-2116-Jarod_Wilson/preview.jpg b/abs/mv-core/MythVantage-config/templates/remotes/RadioShack_15-2116-Jarod_Wilson/preview.jpg
new file mode 100644
index 0000000..d465839
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/RadioShack_15-2116-Jarod_Wilson/preview.jpg
Binary files differ
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/gr8zap/lircd.conf.streamzap b/abs/mv-core/MythVantage-config/templates/remotes/gr8zap/lircd.conf.streamzap
new file mode 100644
index 0000000..8e453b9
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/gr8zap/lircd.conf.streamzap
@@ -0,0 +1,69 @@
+#
+# this config file was automatically generated
+# using lirc-0.7.1-CVS(serial) on Fri Feb 4 23:20:56 2005
+#
+# contributed by Christoph Bartelmus
+#
+# brand: Streamzap
+# model no. of remote control: PC Remote
+# devices being controlled by this remote: USB receiver
+#
+
+begin remote
+
+ name Streamzap_PC_Remote
+ bits 6
+ flags RC5|CONST_LENGTH
+ eps 30
+ aeps 100
+
+ one 889 889
+ zero 889 889
+ plead 889
+ pre_data_bits 8
+ pre_data 0xA3
+ gap 108344
+ toggle_bit 2
+
+
+ begin codes
+ 0 0x00
+ 1 0x01
+ 2 0x02
+ 3 0x03
+ 4 0x04
+ 5 0x05
+ 6 0x06
+ 7 0x07
+ 8 0x08
+ 9 0x09
+ POWER 0x0A
+ MUTE 0x0B
+ CH_UP 0x0C
+ VOL_UP 0x0D
+ CH_DOWN 0x0E
+ VOL_DOWN 0x0F
+ UP 0x10
+ LEFT 0x11
+ OK 0x12
+ RIGHT 0x13
+ DOWN 0x14
+ MENU 0x15
+ EXIT 0x16
+ PLAY 0x17
+ PAUSE 0x18
+ STOP 0x19
+ |<< 0x1A
+ >>| 0x1B
+ RECORD 0x1C
+ << 0x1D
+ >> 0x1E
+ RED 0x20
+ GREEN 0x21
+ YELLOW 0x22
+ BLUE 0x23
+ end codes
+
+end remote
+
+
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/gr8zap/lircrc b/abs/mv-core/MythVantage-config/templates/remotes/gr8zap/lircrc
new file mode 100644
index 0000000..6f86bfe
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/gr8zap/lircrc
@@ -0,0 +1,472 @@
+# StreamZap Remote
+# 'config' must either be a literal key, e.g. 'config = l' or must
+# refer to a defined key in MythTV, e.g. 'config = PLAY'
+begin
+ prog = mythtv
+ button = 0
+ config = 0
+end
+
+begin
+ prog = mythtv
+ button = 1
+ config = 1
+end
+
+begin
+ prog = mythtv
+ button = 2
+ config = 2
+end
+
+begin
+ prog = mythtv
+ button = 3
+ config = 3
+end
+
+begin
+ prog = mythtv
+ button = 4
+ config = 4
+end
+
+begin
+ prog = mythtv
+ button = 5
+ config = 5
+end
+
+begin
+ prog = mythtv
+ button = 6
+ config = 6
+end
+
+begin
+ prog = mythtv
+ button = 7
+ config = 7
+end
+
+begin
+ prog = mythtv
+ button = 8
+ config = 8
+end
+
+begin
+ prog = mythtv
+ button = 9
+ config = 9
+end
+
+begin
+ prog = mythtv
+ button = POWER
+ config = Esc
+end
+
+# ???
+begin
+ prog = mythtv
+ button = MUTE
+ config = F9
+end
+
+begin
+ prog = mythtv
+ button = CH_UP
+ repeat = 3
+ config = Up
+end
+
+begin
+ prog = mythtv
+ button = VOL_UP
+ repeat = 3
+ config = ]
+end
+
+begin
+ prog = mythtv
+ button = CH_DOWN
+ repeat = 3
+ config = Down
+end
+
+begin
+ prog = mythtv
+ button = VOL_DOWN
+ repeat = 3
+ config = [
+end
+
+begin
+ prog = mythtv
+ button = UP
+ repeat = 3
+ config = Up
+end
+
+begin
+ prog = mythtv
+ button = LEFT
+# navigates, or skips back during playback or live tv.
+ config = Left
+end
+
+begin
+ prog = mythtv
+ button = OK
+ config = Return
+end
+
+begin
+ prog = mythtv
+ button = RIGHT
+# navigates, or skips forwards during playback or live tv.
+ config = Right
+end
+
+begin
+ prog = mythtv
+ button = DOWN
+ repeat = 3
+ config = Down
+end
+
+begin
+ prog = mythtv
+ button = MENU
+ config = m
+end
+
+begin
+ prog = mythtv
+ button = EXIT
+ config = Esc
+end
+
+begin
+ prog = mythtv
+ button = PLAY
+ config = l
+end
+
+begin
+ prog = mythtv
+ button = PAUSE
+ config = p
+end
+
+begin
+ prog = mythtv
+ button = STOP
+ config = Esc
+end
+
+begin
+ prog = mythtv
+ # skip backward
+ button = |<<
+ config = PgUp
+end
+
+begin
+ prog = mythtv
+ # skip forward
+ button = >>|
+ config = PgDown
+end
+
+begin
+ prog = mythtv
+ button = RECORD
+ config = r
+end
+
+begin
+ prog = mythtv
+ # rewind
+ button = <<
+ config = <
+end
+
+begin
+ prog = mythtv
+ # fast forward
+ button = >>
+ config = >
+end
+
+begin
+ prog = mythtv
+ button = RED
+ # Delete
+ config = z
+end
+
+begin
+ prog = mythtv
+ button = GREEN
+ # Info
+ config = i
+end
+
+begin
+ prog = mythtv
+ button = YELLOW
+ # change aspect ratio
+ config = w
+end
+
+begin
+ prog = mythtv
+ button = BLUE
+ config = Tab
+end
+
+# MPLAYER
+begin
+ prog = mplayer
+ button = POWER
+ config = quit
+end
+
+begin
+ prog = mplayer
+ button = MUTE
+ config = mute
+end
+
+begin
+ prog = mplayer
+ button = VOL_UP
+ repeat = 3
+ config = volume +1
+end
+
+begin
+ prog = mplayer
+ button = VOL_DOWN
+ repeat = 3
+ config = volume -1
+end
+
+begin
+ prog = mplayer
+ button = UP
+ repeat = 3
+ config = seek +10
+end
+
+begin
+ prog = mplayer
+ button = LEFT
+# navigates, or skips back during playback or live tv.
+ config = seek -30
+end
+
+begin
+ prog = mplayer
+ button = RIGHT
+# navigates, or skips forwards during playback or live tv.
+ config = seek +60
+end
+
+begin
+ prog = mplayer
+ button = DOWN
+ repeat = 3
+ config = seek -10
+end
+
+begin
+ prog = mplayer
+ button = EXIT
+ config = quit
+end
+
+begin
+ prog = mplayer
+ button = play
+ config = speed_set 1.0
+end
+
+begin
+ prog = mplayer
+ button = pause
+ config = pause
+end
+
+begin
+ prog = mplayer
+ button = STOP
+ config = quit
+end
+
+begin
+ prog = mplayer
+ # skip backward
+ button = |<<
+ config = seek -600
+end
+
+begin
+ prog = mplayer
+ # skip forward
+ button = >>|
+ config = seek +600
+end
+
+begin
+ prog = mplayer
+ # slow forward
+ button = <<
+ config = speed_mult 0.5
+end
+
+begin
+ prog = mplayer
+ # fast forward
+ button = >>
+ config = speed_mult 2.0
+end
+
+### Xine lirc setup By AnDy!
+
+begin
+prog = xine
+button = PLAY
+repeat = 3
+config = Play
+end
+
+begin
+prog = xine
+button = STOP
+repeat = 3
+config = Stop
+end
+
+begin
+prog = xine
+button = PAUSE
+repeat = 3
+config = Pause
+end
+
+begin
+prog = xine
+button = UP
+repeat = 3
+config = EventUp
+end
+
+begin
+prog = xine
+button = DOWN
+repeat = 3
+config = EventDown
+end
+
+begin
+prog = xine
+button = LEFT
+repeat = 3
+config = EventLeft
+end
+
+begin
+prog = xine
+button = RIGHT
+repeat = 3
+config = EventRight
+end
+
+begin
+prog = xine
+button = OK
+repeat = 3
+config = EventSelect
+end
+
+begin
+prog = xine
+button = EXIT
+repeat = 3
+config = Menu
+end
+
+begin
+prog = xine
+button = >>
+repeat = 3
+#config = SpeedFaster
+config = SeekRelative+60
+end
+
+begin
+prog = xine
+button = <<
+repeat = 3
+#config = SpeedSlower
+config = SeekRelative-60
+end
+
+begin
+prog = xine
+button = VOL_UP
+repeat = 3
+config = Volume+
+end
+
+begin
+prog = xine
+button = VOL_DOWN
+repeat = 3
+config = Volume-
+end
+
+begin
+prog = xine
+button = MUTE
+repeat = 3
+config = Mute
+end
+
+begin
+prog = xine
+button = MENU
+repeat = 3
+config = RootMenu
+end
+
+begin
+prog = xine
+button = >>|
+repeat = 3
+config = EventNext
+end
+
+begin
+prog = xine
+button = |<<
+repeat = 3
+config = EventPrior
+end
+
+begin
+prog = xine
+button = GREEN
+repeat = 3
+config = OSDStreamInfos
+end
+
+begin
+prog = xine
+button = POWER
+repeat = 3
+config = Quit
+end
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/gr8zap/preview.jpg b/abs/mv-core/MythVantage-config/templates/remotes/gr8zap/preview.jpg
new file mode 100644
index 0000000..4d1a5fe
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/gr8zap/preview.jpg
Binary files differ
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/hauppauge/lircd.conf.hauppauge b/abs/mv-core/MythVantage-config/templates/remotes/hauppauge/lircd.conf.hauppauge
new file mode 100644
index 0000000..4987807
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/hauppauge/lircd.conf.hauppauge
@@ -0,0 +1,274 @@
+#
+# this config file was automatically generated
+# using lirc-0.5.5pre8 on Sun Apr 18 11:43:45 1999
+#
+# contributed by Jens Leuschner <leuschner@gmx.net>
+#
+# brand: Hauppauge
+# model:
+# supported devices: WinTV primo; WinTV pci; WinTV radio
+#
+# This config file will work with both homebrew receivers and
+# original Hauppauge TV cards !!!
+#
+
+begin remote
+
+ name Hauppauge
+ bits 13
+ flags SHIFT_ENC
+ eps 30
+ aeps 100
+
+ one 950 830
+ zero 950 830
+ plead 960
+ gap 89584
+ repeat_bit 2
+
+ begin codes
+ TV 0x000000000000100F
+ RADIO 0x000000000000100C
+ FULL_SCREEN 0x000000000000102E
+ CH+ 0x0000000000001020
+ CH- 0x0000000000001021
+ VOL- 0x0000000000001011
+ VOL+ 0x0000000000001010
+ MUTE 0x000000000000100D
+ SOURCE 0x0000000000001022
+ 1 0x0000000000001001
+ 2 0x0000000000001002
+ 3 0x0000000000001003
+ 4 0x0000000000001004
+ 5 0x0000000000001005
+ 6 0x0000000000001006
+ 7 0x0000000000001007
+ 8 0x0000000000001008
+ 9 0x0000000000001009
+ 0 0x0000000000001000
+ RESERVED 0x000000000000101E
+ MINIMIZE 0x0000000000001026
+ end codes
+
+end remote
+
+
+#
+# this config file was automatically generated
+# using lirc-0.6.6(animax) on Tue Apr 15 19:50:27 2003
+#
+# contributed by
+#
+# brand: Hauppauge
+# model no. of remote control:
+# devices being controlled by this remote: PVR 2/350
+#
+
+begin remote
+
+ name hauppauge_pvr
+ bits 13
+ flags RC5|CONST_LENGTH
+ eps 30
+ aeps 100
+
+ one 969 811
+ zero 969 811
+ plead 1097
+ gap 114605
+ toggle_bit 2
+
+
+ begin codes
+ Power 0x00000000000017FD
+ Go 0x00000000000017FB
+ 1 0x00000000000017C1
+ 2 0x00000000000017C2
+ 3 0x00000000000017C3
+ 4 0x00000000000017C4
+ 5 0x00000000000017C5
+ 6 0x00000000000017C6
+ 7 0x00000000000017C7
+ 8 0x00000000000017C8
+ 9 0x00000000000017C9
+ Back/Exit 0x00000000000017DF
+ 0 0x00000000000017C0
+ Menu 0x00000000000017CD
+ Red 0x00000000000017CB
+ Green 0x00000000000017EE
+ Yellow 0x00000000000017F8
+ Blue 0x00000000000017E9
+ Ch+ 0x00000000000017E0
+ Ch- 0x00000000000017E1
+ Vol- 0x00000000000017D1
+ Vol+ 0x00000000000017D0
+ Ok 0x00000000000017E5
+ Mute 0x00000000000017CF
+ Blank 0x00000000000017CC
+ Full 0x00000000000017FC
+ Rewind 0x00000000000017F2
+ Play 0x00000000000017F5
+ Forward 0x00000000000017F4
+ Record 0x00000000000017F7
+ Stop 0x00000000000017F6
+ Pause 0x00000000000017F0
+ Replay 0x00000000000017E4
+ Skip 0x00000000000017DE
+ end codes
+
+end remote
+
+
+#
+# this config file was automatically generated
+# using lirc-0.7.0(any) on Sun Nov 28 20:25:09 2004
+#
+# contributed by
+#
+# brand: Hauppauge 350
+# Created: G.J. Werler (The Netherlands)
+# Project: Mythtv Fedora Pundit-R www.mythtvportal.com
+# Date: 2004/11/28
+# model no. of remote control: Hauppauge A415-HPG
+# devices being controlled by this remote: PVR-350
+#
+
+begin remote
+
+ name Hauppauge_350
+ bits 13
+ flags RC5|CONST_LENGTH
+ eps 30
+ aeps 100
+
+ one 969 811
+ zero 969 811
+ plead 1097
+ gap 114605
+ toggle_bit 2
+
+
+ begin codes
+ Go 0x00000000000017BB
+ Power 0x00000000000017BD
+ TV 0x000000000000179C
+ Videos 0x0000000000001798
+ Music 0x0000000000001799
+ Pictures 0x000000000000179A
+ Guide 0x000000000000179B
+ Radio 0x000000000000178C
+ Up 0x0000000000001794
+ Left 0x0000000000001796
+ Right 0x0000000000001797
+ Down 0x0000000000001795
+ OK 0x00000000000017A5
+ Back/Exit 0x000000000000179F
+ Menu/i 0x000000000000178D
+ Vol+ 0x0000000000001790
+ Vol- 0x0000000000001791
+ Prev.Ch 0x0000000000001792
+ Mute 0x000000000000178F
+ Ch+ 0x00000000000017A0
+ Ch- 0x00000000000017A1
+ Record 0x00000000000017B7
+ Stop 0x00000000000017B6
+ Rewind 0x00000000000017B2
+ Play 0x00000000000017B5
+ Forward 0x00000000000017B4
+ Replay/SkipBackward 0x00000000000017A4
+ Pause 0x00000000000017B0
+ SkipForward 0x000000000000179E
+ 1 0x0000000000001781
+ 2 0x0000000000001782
+ 3 0x0000000000001783
+ 4 0x0000000000001784
+ 5 0x0000000000001785
+ 6 0x0000000000001786
+ 7 0x0000000000001787
+ 8 0x0000000000001788
+ 9 0x0000000000001789
+ Asterix 0x000000000000178A
+ 0 0x0000000000001780
+ # 0x000000000000178E
+ Red 0x000000000000178B
+ Green 0x00000000000017AE
+ Yellow 0x00000000000017B8
+ Blue 0x00000000000017A9
+ end codes
+
+end remote
+#
+# this config file was automatically generated
+# using lirc-0.7.0pre4(serial) on Sun Oct 2 00:24:32 2005
+#
+# contributed by anton|ganthaler.at and juergen.wilhelm|aon.at
+# members of linux user group Vorarlberg www.lugv.at
+#
+# for ir remote controler from Hauppauge WinTV Nexus-S
+# most of the keys are supported
+#
+# brand: Hauppauge
+# model no. of remote control: WinTV Nexus-S
+# devices being controlled by this remote:
+#
+
+begin remote
+
+ name Hauppauge_WinTV_Nexus-S
+ bits 13
+ flags RC5|CONST_LENGTH
+ eps 30
+ aeps 100
+
+ one 944 828
+ zero 944 828
+ plead 980
+ gap 113932
+ min_repeat 1
+ toggle_bit 2
+
+
+ begin codes
+ Up 0x0000000000001794
+ Down 0x0000000000001795
+ Left 0x0000000000001796
+ Right 0x0000000000001797
+ Power 0x00000000000017BD
+ Ok 0x00000000000017A5
+ Menu 0x000000000000178D
+ Back 0x000000000000179F
+ Red 0x000000000000178B
+ Green 0x00000000000017AE
+ Yellow 0x00000000000017B8
+ Blue 0x00000000000017A9
+ 0 0x0000000000001780
+ 1 0x0000000000001781
+ 2 0x0000000000001782
+ 3 0x0000000000001783
+ 4 0x0000000000001784
+ 5 0x0000000000001785
+ 6 0x0000000000001786
+ 7 0x0000000000001787
+ 8 0x0000000000001788
+ 9 0x0000000000001789
+ Play 0x00000000000017B5
+ Pause 0x00000000000017B0
+ Stop 0x00000000000017B6
+ Record 0x00000000000017B7
+ FastFwd 0x00000000000017B4
+ FastRwd 0x00000000000017B2
+ Channel+ 0x00000000000017A0
+ Channel- 0x00000000000017A1
+ Volume+ 0x0000000000001790
+ Volume- 0x0000000000001791
+ Mute 0x000000000000178F
+ Timers 0x000000000000178A
+ Recordings 0x000000000000178E
+ Back 0x000000000000179F
+ Record 0x00000000000017B7
+ Pause 0x00000000000017B0
+ end codes
+
+end remote
+
+
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/hauppauge/lircmd.conf.hauppauge b/abs/mv-core/MythVantage-config/templates/remotes/hauppauge/lircmd.conf.hauppauge
new file mode 100644
index 0000000..d0f36e8
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/hauppauge/lircmd.conf.hauppauge
@@ -0,0 +1,33 @@
+#
+# lircmd config file
+#
+
+PROTOCOL IntelliMouse
+
+# ACCELERATOR start max multiplier
+
+ACCELERATOR 2 30 5
+
+ACTIVATE * RESERVED
+
+MOVE_N * 2
+MOVE_NE * 3
+MOVE_E * 6
+MOVE_SE * 9
+MOVE_S * 8
+MOVE_SW * 7
+MOVE_W * 4
+MOVE_NW * 1
+MOVE_IN * CH+
+MOVE_OUT * CH-
+
+BUTTON1_TOGGLE * 5
+BUTTON1_TOGGLE * RADIO
+BUTTON2_TOGGLE * VOL+
+BUTTON3_TOGGLE * SOURCE
+
+BUTTON1_CLICK * TV
+BUTTON1_CLICK * VOL-
+BUTTON3_CLICK * MUTE
+
+# BUTTONx_CLICK, BUTTONx_UP, BUTTONx_DOWN are also possible
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/hauppauge/preview.jpg b/abs/mv-core/MythVantage-config/templates/remotes/hauppauge/preview.jpg
new file mode 100644
index 0000000..a40a1e8
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/hauppauge/preview.jpg
Binary files differ
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/imon-pad/lircd.conf b/abs/mv-core/MythVantage-config/templates/remotes/imon-pad/lircd.conf
new file mode 100644
index 0000000..97bbf4c
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/imon-pad/lircd.conf
@@ -0,0 +1,88 @@
+# Please make this file available to others
+# by sending it to <lirc@bartelmus.de>
+#
+# this config file was automatically generated
+# using lirc-0.8.0(imon_pad) on Mon Jan 23 20:22:11 2006
+#
+# contributed by M.Brakemeier
+#
+# brand: SoundGraph
+# model no. of remote control: iMON-PAD
+# devices being controlled by this remote:
+#
+
+begin remote
+
+ name iMON-PAD
+ bits 32
+ eps 30
+ aeps 100
+
+ one 0 0
+ zero 0 0
+ gap 235965
+ min_repeat 1
+ toggle_bit 0
+
+ begin codes
+ AppExit 0x288195B7
+ Power 0x289115B7
+ Record 0x298115B7
+ Play 0x2A8115B7
+ Open 0x29B1d5B7
+ Rewind 0x2A8195B7
+ Pause 0x2A9115B7
+ FastForward 0x2B8115B7
+ PrevChapter 0x2B9115B7
+ Stop 0x2B9715B7
+ NextChapter 0x298195B7
+ Esc 0x2BB715B7
+ Eject 0x299395B7
+ AppLauncher 0x29B715B7
+ MultiMon 0x2AB195B7
+ TaskSwitcher 0x2A9395B7
+ Mute 0x2B9595B7
+ Vol+ 0x28A395B7
+ Vol- 0x28A595B7
+ Ch+ 0x289395B7
+ Ch- 0x288795B7
+ Timer 0x2B8395B7
+ 1 0x28B595B7
+ 2 0x2BB195B7
+ 3 0x28B195B7
+ 4 0x2A8595B7
+ 5 0x299595B7
+ 6 0x2AA595B7
+ 7 0x2B9395B7
+ 8 0x2A8515B7
+ 9 0x2AA115B7
+ 0 0x2BA595B7
+ ShiftTab 0x28B515B7
+ Tab 0x29A115B7
+ Red 0x2B8515B7 # MyMovie
+ Green 0x299195B7 # MyMusic
+ Blue 0x2BA115B7 # MyPhoto
+ Yellow 0x28A515B7 # MyTV
+ Bookmark 0x288515B7
+ Thumbnail 0x2AB715B7
+ AspectRatio 0x29A595B7
+ FullScreen 0x2AA395B7
+ Purple 0x29A295B7 # MyDVD
+ Menu 0x2BA385B7
+ Caption 0x298595B7
+ Language 0x2B8595B7
+ MouseKeyboard 0x299115B7
+ SelectSpace 0x2A9315B7
+ MouseMenu 0x28B715B7
+ MouseRightClick 0x688481B7
+ Enter 0x28A195B7
+ MouseLeftClick 0x688301B7
+ WindowsKey 0x2B8195B7
+ Backspace 0x28A115B7
+ Mouse_N 0x690281B7
+ Mouse_S 0x688291B7
+ Mouse_W 0x6A8281B7
+ Mouse_E 0x688A81B7
+ end codes
+
+end remote
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/imon-pad/lircrc b/abs/mv-core/MythVantage-config/templates/remotes/imon-pad/lircrc
new file mode 100644
index 0000000..3ad34d8
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/imon-pad/lircrc
@@ -0,0 +1,240 @@
+###################################
+# lircrc config as used by Stev391 June 2007
+# Not all of the buttons are configured yet, only the commonly used buttons
+###################################
+
+# Escape
+begin
+ prog = mythtv
+ button = AppExit
+ config = Esc
+ repeat = 3
+end
+
+# Escape Key 2
+begin
+ prog = mythtv
+ button = Esc
+ config = Esc
+end
+
+# Channel Up
+begin
+ prog = mythtv
+ button = Ch+
+ config = Up
+ repeat = 3
+end
+
+# Channel Down
+begin
+ prog = mythtv
+ button = Ch-
+ config = Down
+ repeat = 3
+end
+
+# Volume Up
+begin
+ prog = mythtv
+ button = Vol+
+ repeat = 3
+ config = Right
+end
+
+# Volume Down
+begin
+ prog = mythtv
+ button = Vol-
+ repeat = 3
+ config = Left
+end
+
+# Enter/Return
+begin
+ prog = mythtv
+ button = Enter
+ config = Return
+end
+
+# Menu Button
+begin
+ prog = mythtv
+ button = Menu
+ config = M
+end
+
+# Mute
+begin
+ prog = mythtv
+ button = Mute
+ config = F9
+end
+
+# Rewind
+begin
+ prog = mythtv
+ button = Rewind
+ config = PgUp
+end
+
+# Fast Forward
+begin
+ prog = mythtv
+ button = FastForward
+ config = PgDown
+end
+
+# Play
+begin
+ prog = mythtv
+ button = Play
+ config = P
+end
+
+# Pause
+begin
+ prog = mythtv
+ button = Pause
+ config = P
+end
+
+# Record
+begin
+ prog = mythtv
+ button = Record
+ config = R
+end
+
+# Stop
+begin
+ prog = mythtv
+ button = Stop
+ config = O
+end
+
+# Previous Track/Chapter
+begin
+ prog = mythtv
+ button = PrevChapter
+ config = Home
+end
+
+# Next Track/Chapter
+begin
+ prog = mythtv
+ button = NextChapter
+ config = End
+end
+
+# Jump Point to MythVideo
+begin
+ prog = mythtv
+ button = MyMovie
+ config = F12
+end
+
+# Jump Point to MythMusic
+begin
+ prog = mythtv
+ button = MyMusic
+ config = F11
+end
+
+# Jump Point to LiveTV
+begin
+ prog = mythtv
+ button = MyTV
+ config = F10
+end
+
+# Jump Point to Main Menu
+begin
+ prog = mythtv
+ button = Multimon
+ config = F2
+end
+
+# Jump Point to Myth Gallery
+begin
+ prog = mythtv
+ button = MyPhoto
+ config = F3
+end
+
+# Jump Point to Play DVD
+begin
+ prog = mythtv
+ button = MyDVD
+ config = F4
+end
+
+# Display Information
+begin
+ prog = mythtv
+ button = Caption
+ config = I
+end
+
+##############################
+# Numbers
+##############################
+begin
+ prog = mythtv
+ button = 0
+ config = 0
+end
+
+begin
+ prog = mythtv
+ button = 1
+ config = 1
+end
+
+begin
+ prog = mythtv
+ button = 2
+ config = 2
+end
+
+begin
+ prog = mythtv
+ button = 3
+ config = 3
+end
+
+begin
+ prog = mythtv
+ button = 4
+ config = 4
+end
+
+begin
+ prog = mythtv
+ button = 5
+ config = 5
+end
+
+begin
+ prog = mythtv
+ button = 6
+ config = 6
+end
+
+begin
+ prog = mythtv
+ button = 7
+ config = 7
+end
+
+begin
+ prog = mythtv
+ button = 8
+ config = 8
+end
+
+begin
+ prog = mythtv
+ button = 9
+ config = 9
+end
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/imon-pad/preview.jpg b/abs/mv-core/MythVantage-config/templates/remotes/imon-pad/preview.jpg
new file mode 100644
index 0000000..47368c5
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/imon-pad/preview.jpg
Binary files differ
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/mceusb/lircd-mceusb.conf b/abs/mv-core/MythVantage-config/templates/remotes/mceusb/lircd-mceusb.conf
new file mode 100644
index 0000000..ec3b73e
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/mceusb/lircd-mceusb.conf
@@ -0,0 +1,88 @@
+#
+# RC-6 config file
+#
+# source: http://home.hccnet.nl/m.majoor/projects__remote_control.htm
+# http://home.hccnet.nl/m.majoor/pronto.pdf
+#
+# used by: Philips
+#
+#########
+#
+# Philips Media Center Edition remote control
+# For use with the USB MCE ir receiver
+#
+# Dan Conti dconti|acm.wwu.edu
+#
+# Radio, Print, RecTV are only available on the HP Media Center remote control
+#
+
+begin remote
+
+ name mceusb
+ bits 16
+ flags RC6|CONST_LENGTH
+ eps 30
+ aeps 100
+
+ header 2667 889
+ one 444 444
+ zero 444 444
+ pre_data_bits 21
+ pre_data 0x37FF0
+ gap 105000
+ toggle_bit 22
+ rc6_mask 0x100000000
+
+
+ begin codes
+
+# starts at af
+ Radio 0x00007baf
+ Print 0x00007bb1
+ Videos 0x00007bb5
+ Pictures 0x00007bb6
+ RecTV 0x00007bb7
+ Music 0x00007bb8
+ TV 0x00007bb9
+# no ba - d8
+ Guide 0x00007bd9
+ LiveTV 0x00007bda
+ DVD 0x00007bdb
+ Back 0x00007bdc
+ OK 0x00007bdd
+ Right 0x00007bde
+ Left 0x00007bdf
+ Down 0x00007be0
+ Up 0x00007be1
+# no e2,e3
+ Replay 0x00007be4
+ Skip 0x00007be5
+ Stop 0x00007be6
+ Pause 0x00007be7
+ Record 0x00007be8
+ Play 0x00007be9
+ Rewind 0x00007bea
+ Forward 0x00007beb
+ ChanDown 0x00007bec
+ ChanUp 0x00007bed
+ VolDown 0x00007bee
+ VolUp 0x00007bef
+ More 0x00007bf0
+ Mute 0x00007bf1
+ Home 0x00007bf2
+ Power 0x00007bf3
+ Enter 0x00007bf4
+ Clear 0x00007bf5
+ Nine 0x00007bf6
+ Eight 0x00007bf7
+ Seven 0x00007bf8
+ Six 0x00007bf9
+ Five 0x00007bfa
+ Four 0x00007bfb
+ Three 0x00007bfc
+ Two 0x00007bfd
+ One 0x00007bfe
+ Zero 0x00007bff
+ end codes
+
+end remote
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/mceusb/lircrc-mceusb b/abs/mv-core/MythVantage-config/templates/remotes/mceusb/lircrc-mceusb
new file mode 100644
index 0000000..3738bfa
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/mceusb/lircrc-mceusb
@@ -0,0 +1,393 @@
+# lircrc.mceusb
+
+###################
+#
+# MythTV
+#
+###################
+begin
+ prog = mythtv
+ button = One
+ config = 1
+end
+
+begin
+ prog = mythtv
+ button = Two
+ config = 2
+end
+
+begin
+ prog = mythtv
+ button = Three
+ config = 3
+end
+
+begin
+ prog = mythtv
+ button = Four
+ config = 4
+end
+
+begin
+ prog = mythtv
+ button = Five
+ config = 5
+end
+
+begin
+ prog = mythtv
+ button = Six
+ config = 6
+end
+
+begin
+ prog = mythtv
+ button = Seven
+ config = 7
+end
+
+begin
+ prog = mythtv
+ button = Eight
+ config = 8
+end
+
+begin
+ prog = mythtv
+ button = Nine
+ config = 9
+end
+
+begin
+ prog = mythtv
+ button = Zero
+ config = 0
+end
+
+begin
+ prog = mythtv
+ button = Back
+ config = Esc
+end
+
+begin
+ prog = mythtv
+ button = Guide
+ config = M
+end
+
+begin
+ prog = mythtv
+ button = More
+ config = I
+end
+
+begin
+ prog = mythtv
+ button = VolDown
+ config = F10
+end
+
+begin
+ prog = mythtv
+ button = VolUp
+ config = F11
+end
+
+begin
+ prog = mythtv
+ button = Up
+ config = Up
+end
+
+begin
+ prog = mythtv
+ button = Down
+ config = Down
+end
+
+begin
+ prog = mythtv
+ button = Left
+ config = Left
+end
+
+begin
+ prog = mythtv
+ button = Right
+ config = Right
+end
+
+begin
+ prog = mythtv
+ button = Play
+ config = Return
+end
+
+begin
+ prog = mythtv
+ button = OK
+ config = Return
+end
+
+begin
+ prog = mythtv
+ button = Mute
+ config = |
+end
+
+begin
+ prog = mythtv
+ button = Rewind
+ config = Left
+end
+
+begin
+ prog = mythtv
+ button = Forward
+ config = Right
+end
+
+begin
+ prog = mythtv
+ button = Record
+ config = R
+end
+
+begin
+ prog = mythtv
+ button = Stop
+ config = O
+end
+
+begin
+ prog = mythtv
+ button = Pause
+ config = P
+end
+
+# Use for backwards commercial skip
+begin
+ prog = mythtv
+ button = Replay
+ config = Q
+end
+
+# Use for forward commercial skip
+begin
+ prog = mythtv
+ button = Skip
+ config = Z
+end
+
+
+###################
+#
+# MPlayer
+#
+###################
+begin
+ prog = mplayer
+ button = Stop
+ config = quit
+end
+
+begin
+ prog = mplayer
+ button = Play
+ config = seek +1
+end
+
+begin
+ prog = mplayer
+ button = More
+ config = osd
+end
+
+begin
+ prog = mplayer
+ button = Replay
+ config = seek -10
+ repeat = 1
+end
+
+begin
+ prog = mplayer
+ button = Skip
+ config = seek +10
+ repeat = 1
+end
+
+begin
+ prog = mplayer
+ button = Rewind
+ config = seek -30
+ repeat = 1
+end
+
+begin
+ prog = mplayer
+ button = Forward
+ config = seek +30
+ repeat = 1
+end
+
+begin
+ prog = mplayer
+ button = Pause
+ config = pause
+end
+
+begin
+ prog = mplayer
+ button = VolUp
+ config = volume +1
+ repeat = 1
+end
+
+begin
+ prog = mplayer
+ button = VolDown
+ config = volume -1
+ repeat = 1
+end
+
+begin
+ prog = mplayer
+ button = Mute
+ config = mute
+end
+
+###################
+#
+# Xine
+#
+###################
+# Xine lirc setup
+begin
+prog = xine
+button = Play
+repeat = 3
+config = Play
+end
+
+begin
+prog = xine
+button = Stop
+repeat = 3
+config = Stop
+end
+
+begin
+prog = xine
+button = Back
+repeat = 3
+config = Quit
+end
+
+begin
+prog = xine
+button = Pause
+repeat = 3
+config = Pause
+end
+
+begin
+prog = xine
+button = Up
+repeat = 3
+config = EventUp
+end
+
+begin
+prog = xine
+button = Down
+repeat = 3
+config = EventDown
+end
+
+begin
+prog = xine
+button = Left
+repeat = 3
+config = EventLeft
+end
+
+begin
+prog = xine
+button = Right
+repeat = 3
+config = EventRight
+end
+
+begin
+prog = xine
+button = OK
+repeat = 3
+config = EventSelect
+end
+
+begin
+prog = xine
+button = Home
+repeat = 3
+config = Menu
+end
+
+begin
+prog = xine
+button = Forward
+repeat = 3
+config = SpeedFaster
+end
+
+begin
+prog = xine
+button = Rewind
+repeat = 3
+config = SpeedSlower
+end
+
+begin
+prog = xine
+button = VolUp
+repeat = 3
+config = Volume+
+end
+
+begin
+prog = xine
+button = VolDown
+repeat = 3
+config = Volume-
+end
+
+begin
+prog = xine
+button = Mute
+repeat = 3
+config = Mute
+end
+
+begin
+prog = xine
+button = ChanUp
+repeat = 3
+config = EventNext
+end
+
+begin
+prog = xine
+button = ChanDown
+repeat = 3
+config = EventPrior
+end
+
+begin
+prog = xine
+button = More
+repeat = 3
+config = OSDStreamInfos
+end
+
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/mceusb/preview.jpg b/abs/mv-core/MythVantage-config/templates/remotes/mceusb/preview.jpg
new file mode 100644
index 0000000..0aa6a4a
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/mceusb/preview.jpg
Binary files differ
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/no_remote/preview.jpg b/abs/mv-core/MythVantage-config/templates/remotes/no_remote/preview.jpg
new file mode 100644
index 0000000..1d887dd
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/no_remote/preview.jpg
Binary files differ
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/one-for-juski/lircd.conf.juski b/abs/mv-core/MythVantage-config/templates/remotes/one-for-juski/lircd.conf.juski
new file mode 100644
index 0000000..879f9ac
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/one-for-juski/lircd.conf.juski
@@ -0,0 +1,59 @@
+
+begin remote
+
+ name juski
+ bits 13
+ flags RC5|CONST_LENGTH
+ eps 30
+ aeps 100
+
+ one 912 852
+ zero 912 852
+ plead 936
+ gap 113882
+ toggle_bit 2
+
+
+ begin codes
+ menu 0x0000000000001013
+ 1 0x0000000000001001
+ 2 0x0000000000001002
+ 3 0x0000000000001003
+ 4 0x0000000000001004
+ 5 0x0000000000001005
+ 6 0x0000000000001006
+ 7 0x0000000000001007
+ 8 0x0000000000001008
+ 9 0x0000000000001009
+ 10 0x000000000000101C
+ 0 0x0000000000001000
+ av 0x0000000000001014
+ left 0x0000000000001017
+ up 0x0000000000001015
+ right 0x0000000000001018
+ down 0x0000000000001016
+ vol- 0x000000000000100B
+ ch+ 0x000000000000100D
+ vol+ 0x000000000000100A
+ ok 0x0000000000001010
+ ch- 0x000000000000100E
+ rew 0x0000000000001021
+ play 0x000000000000101F
+ pause 0x0000000000001020
+ ffw 0x0000000000001022
+ red 0x0000000000001025
+ green 0x0000000000001023
+ yellow 0x0000000000001011
+ blue 0x0000000000001010
+ a 0x000000000000102F
+ b 0x0000000000001030
+ c 0x0000000000001031
+ d 0x0000000000001032
+ e 0x0000000000001033
+ f 0x0000000000001034
+ g 0x0000000000001035
+ h 0x0000000000001036
+ end codes
+
+end remote
+
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/one-for-juski/lircrc b/abs/mv-core/MythVantage-config/templates/remotes/one-for-juski/lircrc
new file mode 100644
index 0000000..584cfec
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/one-for-juski/lircrc
@@ -0,0 +1,394 @@
+# ~/.mythtv/lircrc
+#
+# Mythtv LIRC config file for 'OFA' remote control
+#
+# By Justin Hornsby, 02 July 2005
+#
+#
+
+# Menu (m key)
+begin
+prog = mythtv
+button = red
+repeat = 3
+config = m
+end
+
+# Volume Up
+begin
+prog = mythtv
+button = vol+
+repeat = 3
+config = ]
+end
+
+# Volume Down
+begin
+prog = mythtv
+button = vol-
+repeat = 3
+config = [
+end
+
+# Arrow Up
+begin
+prog = mythtv
+button = up
+repeat = 3
+config = Up
+end
+
+# Arrow down
+begin
+prog = mythtv
+button = down
+repeat = 3
+config = Down
+end
+
+# Arrow left
+begin
+prog = mythtv
+button = left
+repeat = 3
+config = Left
+end
+
+# Arrow right
+begin
+prog = mythtv
+button = right
+repeat = 3
+config = Right
+end
+
+# OK / Select
+begin
+prog = mythtv
+button = ok
+repeat = 3
+config = Space
+end
+
+# Info
+begin
+prog = mythtv
+button = 10
+repeat = 3
+config = i
+end
+
+begin
+prog = mythtv
+button = blue
+repeat = 3
+config = Space
+end
+
+# Play
+begin
+prog = mythtv
+button = play
+repeat = 3
+config = Return
+end
+
+# Stop
+begin
+prog = mythtv
+button = green
+repeat = 3
+config = Esc
+end
+
+# ESC/Exit/Back
+begin
+prog = mythtv
+button = av
+repeat = 3
+
+config = Esc
+end
+
+# Pause
+begin
+prog = mythtv
+button = pause
+repeat = 3
+config = P
+end
+
+# Fast Forward
+begin
+prog = mythtv
+button = ffw
+repeat = 3
+config = Right
+end
+
+# Rewind
+begin
+prog = mythtv
+button = rew
+repeat = 3
+config = Left
+end
+
+# Skip forward (10 min default)
+begin
+prog = mythtv
+button = a
+repeat = 3
+config = PgDown
+end
+
+# Skip backward (10 min default)
+begin
+prog = mythtv
+button = b
+repeat = 3
+config = PgUP
+end
+
+# OSD browse
+begin
+prog = mythtv
+button = 10
+repeat = 3
+config = O
+end
+
+# Display EPG while in live TV,
+# View selected show while in EPG
+begin
+prog = mythtv
+button = blue
+repeat = 3
+config = M
+end
+
+# Change display aspect ratio
+begin
+prog = mythtv
+button = 0
+repeat = 3
+config = W
+end
+
+# Numbers 0-9
+
+begin
+prog = mythtv
+button = 0
+repeat = 3
+config = 0
+end
+
+begin
+prog = mythtv
+button = 1
+repeat = 3
+config = 1
+end
+
+begin
+prog = mythtv
+button = 2
+repeat = 3
+config = 2
+end
+
+begin
+prog = mythtv
+button = 3
+repeat = 3
+config = 3
+end
+
+begin
+prog = mythtv
+button = 4
+repeat = 3
+config = 4
+end
+
+begin
+prog = mythtv
+button = 5
+repeat = 3
+config = 5
+end
+
+begin
+prog = mythtv
+button = 6
+repeat = 3
+config = 6
+end
+
+begin
+prog = mythtv
+button = 7
+repeat = 3
+config = 7
+end
+
+begin
+prog = mythtv
+button = 8
+repeat = 3
+config = 8
+end
+
+begin
+prog = mythtv
+button = 9
+repeat = 3
+config = 9
+end
+
+### Xine lirc setup
+
+begin
+prog = xine
+button = play
+repeat = 3
+config = Play
+end
+
+begin
+prog = xine
+button = blue
+repeat = 3
+config = ToggleAspectRatio
+end
+
+begin
+prog = xine
+button = green
+repeat = 3
+config = Stop
+end
+
+
+begin
+prog = xine
+button = av
+repeat = 3
+config = Quit
+end
+
+begin
+prog = xine
+button = pause
+repeat = 3
+config = Pause
+end
+
+begin
+prog = xine
+button = up
+repeat = 3
+config = EventUp
+end
+
+begin
+prog = xine
+button = down
+repeat = 3
+config = EventDown
+end
+
+
+begin
+prog = xine
+button = left
+repeat = 3
+config = EventLeft
+end
+
+begin
+prog = xine
+button = right
+repeat = 3
+config = EventRight
+end
+
+begin
+prog = xine
+button = ok
+repeat = 3
+config = EventSelect
+end
+
+begin
+prog = xine
+button = red
+repeat = 3
+config = Menu
+end
+
+begin
+prog = xine
+button = ffw
+repeat = 3
+config = SeekRelative+60
+end
+
+begin
+prog = xine
+button = rew
+repeat = 3
+config = SeekRelative-60
+end
+
+begin
+prog = xine
+button = vol+
+repeat = 3
+config = Volume+
+end
+
+begin
+prog = xine
+button = vol-
+repeat = 3
+config = Volume-
+end
+
+#begin
+#prog = xine
+#button = MUTE
+#repeat = 3
+#config = Mute
+#end
+
+begin
+prog = xine
+button = blue
+repeat = 3
+config = RootMenu
+end
+
+begin
+prog = xine
+button = a
+repeat = 3
+config = EventNext
+end
+
+begin
+prog = xine
+button = b
+repeat = 3
+config = EventPrior
+end
+
+begin
+prog = xine
+button = 10
+repeat = 3
+#config = OSDStreamInfos
+config = ToggleInterleave
+end
+
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/one-for-juski/preview.jpg b/abs/mv-core/MythVantage-config/templates/remotes/one-for-juski/preview.jpg
new file mode 100644
index 0000000..6d683c7
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/one-for-juski/preview.jpg
Binary files differ
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/receiver_usb.id b/abs/mv-core/MythVantage-config/templates/remotes/receiver_usb.id
new file mode 100644
index 0000000..b99f91b
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/receiver_usb.id
@@ -0,0 +1,4 @@
+0bc7:0005 snapstream_firefly X10 Wireless Technology, Inc.
+0e9c:0000 streamzap Streamzap, Inc. Streamzap Remote Control
+0471:0815 mceusb Microsoft usb receiver_transmitter rc6
+
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/snapstream_firefly/lircd.snapstrm.conf b/abs/mv-core/MythVantage-config/templates/remotes/snapstream_firefly/lircd.snapstrm.conf
new file mode 100644
index 0000000..288bb51
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/snapstream_firefly/lircd.snapstrm.conf
@@ -0,0 +1,127 @@
+# Please make this file available to others
+# by sending it to <lirc@bartelmus.de>
+#
+# this config file was automatically generated
+# using lirc-0.7.0(any) on Fri Mar 11 08:51:45 2005
+#
+# contributed by
+#
+# brand: Snapstream Firefly Remote
+# model no. of remote control:
+# devices being controlled by this remote:
+#
+
+begin remote
+
+name Snapstream_Firefly
+bits 40
+eps 30
+aeps 100
+
+one 0 0
+zero 0 0
+gap 219964
+toggle_bit 0
+
+
+begin codes
+MAXI 0x0000001481AC0000
+MAXI 0x00000014012C0000
+CLOSE 0x00000014D7020000
+CLOSE 0x0000001457820000
+1 0x00000014628D0000
+1 0x00000014E20D0000
+2 0x00000014E30E0000
+2 0x00000014638E0000
+3 0x00000014648F0000
+3 0x00000014E40F0000
+4 0x00000014E5100000
+4 0x0000001465900000
+5 0x0000001466910000
+5 0x00000014E6110000
+6 0x00000014E7120000
+6 0x0000001467920000
+7 0x0000001468930000
+7 0x00000014E8130000
+8 0x00000014E9140000
+8 0x0000001469940000
+9 0x000000146A950000
+9 0x00000014EA150000
+0 0x00000014EC170000
+0 0x000000146C970000
+BACK 0x000000146B960000
+BACK 0x00000014EB160000
+ENT 0x00000014ED180000
+ENT 0x000000146D980000
+VOL+ 0x000000145E890000
+VOL+ 0x00000014DE090000
+VOL- 0x000000145D880000
+VOL- 0x00000014DD080000
+MUTE 0x000000145F8A0000
+MUTE 0x00000014DF0A0000
+FIREFLY 0x0000001455800000
+FIREFLY 0x00000014D5000000
+CH+ 0x00000014608B0000
+CH+ 0x00000014E00B0000
+CH- 0x00000014618C0000
+CH- 0x00000014E10C0000
+INFO 0x0000001483AE0000
+INFO 0x00000014032E0000
+OPTION 0x0000001484AF0000
+OPTION 0x00000014042F0000
+UP 0x000000146F9A0000
+UP 0x00000014EF1A0000
+LEFT 0x00000014729D0000
+LEFT 0x00000014F21D0000
+DOWN 0x0000001477A20000
+DOWN 0x00000014F7220000
+RIGHT 0x00000014749F0000
+RIGHT 0x00000014F41F0000
+OK 0x00000014739E0000
+OK 0x00000014F31E0000
+MENU 0x00000014719C0000
+MENU 0x00000014F11C0000
+EXIT 0x0000001475A00000
+EXIT 0x00000014F5200000
+REC 0x00000014FC270000
+REC 0x000000147CA70000
+PLAY 0x00000014FA250000
+PLAY 0x000000147AA50000
+STOP 0x00000014FD280000
+STOP 0x000000147DA80000
+REW 0x00000014F9240000
+REW 0x0000001479A40000
+FWD 0x00000014FB260000
+FWD 0x000000147BA60000
+PREV 0x00000014002B0000
+PREV 0x0000001480AB0000
+PAUSE 0x00000014FE290000
+PAUSE 0x000000147EA90000
+NEXT 0x00000014FF2A0000
+NEXT 0x000000147FAA0000
+MUSIC 0x00000014DB060000
+MUSIC 0x000000145B860000
+PHOTOS 0x00000014DA050000
+PHOTOS 0x000000145A850000
+DVD 0x00000014D9040000
+DVD 0x0000001459840000
+TV 0x00000014D8030000
+TV 0x0000001458830000
+VIDEO 0x00000014DC070000
+VIDEO 0x000000145C870000
+HELP 0x00000014D6010000
+HELP 0x0000001456810000
+MOUSE 0x00000014022D0000
+MOUSE 0x0000001482AD0000
+A 0x00000014EE190000
+A 0x000000146E990000
+B 0x00000014F01B0000
+B 0x00000014709B0000
+C 0x00000014F6210000
+C 0x0000001476A10000
+D 0x00000014F8230000
+D 0x0000001478A30000
+
+end codes
+
+end remote \ No newline at end of file
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/snapstream_firefly/lircrc-snapstrm.txt b/abs/mv-core/MythVantage-config/templates/remotes/snapstream_firefly/lircrc-snapstrm.txt
new file mode 100644
index 0000000..e918011
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/snapstream_firefly/lircrc-snapstrm.txt
@@ -0,0 +1,590 @@
+# ~/.mythtv/lircrc
+#
+# MythTV native LIRC config file for
+# the new grey Hauppauge remote
+#
+# Modified from Jarod Wilson's which came from Jeff Campbell's
+# By Brad Templeton
+
+
+# Here we have the jump point commands. They only work if you have
+# defined function keys for these jump points. For me the most
+# common command is the menu of recordings, so I put that on "videos"
+# even though that's counter-intuitive
+
+begin
+prog = mythtv
+button = TV
+repeat = 3
+config = F5
+end
+
+begin
+prog = mythtv
+button = Videos
+repeat = 3
+config = F2
+end
+
+# Not yet defined
+begin
+prog = mythtv
+button = Music
+repeat = 3
+config = Up
+end
+
+# Given another function for now, I don't use mythgallery
+begin
+prog = mythtv
+button = Pictures
+repeat = 3
+config = F
+end
+
+begin
+prog = mythtv
+button = Guide
+repeat = 3
+config = F3
+end
+
+# I stuck the "todo" list on here as Myth has no radio function
+begin
+prog = mythtv
+button = Radio
+repeat = 3
+config = F4
+end
+
+begin
+prog = mythtv
+button = UP
+repeat = 3
+config = Up
+end
+
+begin
+prog = mythtv
+button = DOWN
+repeat = 3
+config = Down
+end
+
+begin
+prog = mythtv
+button = LEFT
+repeat = 3
+config = Left
+end
+
+begin
+prog = mythtv
+button = RIGHT
+repeat = 3
+config = Right
+end
+
+# Channel Up
+begin
+prog = mythtv
+button = Channel-UP
+repeat = 3
+config = Up
+end
+
+# Channel Down
+begin
+prog = mythtv
+button = Channel-DOWN
+repeat = 3
+config = Down
+end
+
+# OK/Select
+begin
+prog = mythtv
+button = Ok
+config = Space
+end
+
+# Play
+begin
+prog = mythtv
+button = Play
+config = Return
+end
+
+# Stop
+begin
+prog = mythtv
+button = Stop
+config = I
+end
+
+# Escape/Exit/Back
+begin
+prog = mythtv
+button = BACK
+config = Esc
+end
+
+# Power Off/Exit
+begin
+prog = mythtv
+button = POWER
+config = Esc
+end
+
+
+# Pause
+begin
+prog = mythtv
+button = Pause
+repeat = 3
+config = P
+end
+
+# Mute
+begin
+prog = mythtv
+button = Mute
+repeat = 3
+config = |
+end
+
+# Fast forward (30 sec default)
+begin
+prog = mythtv
+button = Rewind
+repeat = 3
+config = PgUp
+end
+
+# Rewind (10 sec default)
+begin
+prog = mythtv
+button = Forward
+repeat = 3
+config = PgDown
+end
+
+# Skip forward (10 min default)
+begin
+prog = mythtv
+button = Next
+repeat = 3
+config = End
+end
+
+# Skip backward (10 min default)
+begin
+prog = mythtv
+button = Previous
+repeat = 3
+config = Home
+end
+
+# Record
+begin
+prog = mythtv
+button = Record
+repeat = 3
+config = R
+end
+
+# Delete
+begin
+prog = mythtv
+button = Red
+repeat = 3
+config = D
+end
+
+# Decrease play speed
+begin
+prog = mythtv
+button = Green
+repeat = 3
+config = J
+end
+
+# Display EPG while in live TV,
+# View selected show while in EPG
+begin
+prog = mythtv
+button = Menu
+repeat = 3
+config = M
+end
+
+# Scroll up
+begin
+prog = mythtv
+button = Volume-UP
+repeat = 3
+config = F11
+end
+
+# Scroll down
+begin
+prog = mythtv
+button = Volume-DOWN
+repeat = 3
+config = F10
+end
+
+# Bring up OSD info
+begin
+prog = mythtv
+button = Go
+repeat = 3
+config = I
+end
+
+# Change display aspect ratio
+begin
+prog = mythtv
+button = Prev-Channel
+repeat = 3
+config = W
+end
+
+# double speed watch
+begin
+prog = mythtv
+button = Yellow
+repeat = 3
+config = J
+end
+
+# change tuners
+#begin
+#prog = mythtv
+#button = hash
+#repeat = 3
+#config = Y
+#end
+
+# Bring up Time stretch
+begin
+prog = mythtv
+button = Blue
+repeat = 3
+config = Y
+end
+
+# Numbers 0-9
+
+begin
+prog = mythtv
+button = 0
+repeat = 3
+config = 0
+end
+
+begin
+prog = mythtv
+button = 1
+repeat = 3
+config = 1
+end
+
+begin
+prog = mythtv
+button = 2
+repeat = 3
+config = 2
+end
+
+begin
+prog = mythtv
+button = 3
+repeat = 3
+config = 3
+end
+
+begin
+prog = mythtv
+button = 4
+repeat = 3
+config = 4
+end
+
+begin
+prog = mythtv
+button = 5
+repeat = 3
+config = 5
+end
+
+begin
+prog = mythtv
+button = 6
+repeat = 3
+config = 6
+end
+
+begin
+prog = mythtv
+button = 7
+repeat = 3
+config = 7
+end
+
+begin
+prog = mythtv
+button = 8
+repeat = 3
+config = 8
+end
+
+begin
+prog = mythtv
+button = 9
+repeat = 3
+config = 9
+end
+
+
+### MPlayer lirc setup
+
+# Show OSD
+begin
+prog = mplayer
+button = MENU
+repeat = 3
+config = osd
+end
+
+# Pause playback
+begin
+prog = mplayer
+button = PAUSE
+repeat = 3
+config = pause
+end
+
+# Skip ahead a minute if playing
+# If paused, resume playing
+begin
+prog = mplayer
+button = PLAY
+repeat = 3
+config = seek +1
+end
+
+# Stop playback and exit
+begin
+prog = mplayer
+button = Back
+repeat = 3
+config = quit
+end
+
+# Mute
+begin
+prog = mplayer
+button = MUTE
+repeat = 3
+config = mute
+end
+
+# Seek back 10 seconds
+begin
+prog = mplayer
+button = LEFT
+repeat = 3
+config = seek -7
+end
+
+# Seek forward 30 seconds
+begin
+prog = mplayer
+button = RIGHT
+repeat = 3
+config = seek +30
+end
+
+# Quit
+begin
+prog = mplayer
+button = EXIT
+repeat = 3
+config = quit
+end
+
+# Seek forward 10 minutes
+begin
+prog = mplayer
+button = SKIP
+repeat = 3
+config = seek +600
+end
+
+# Seek backward 10 minutes
+begin
+prog = mplayer
+button = REPLAY
+repeat = 3
+config = seek -600
+end
+
+# Toggle full-screen
+begin
+prog = mplayer
+button = FULL
+repeat = 3
+config = vo_fullscreen
+end
+
+### Xine lirc setup
+
+begin
+prog = xine
+button = PLAY
+repeat = 3
+config = Play
+end
+
+begin
+prog = xine
+button = STOP
+repeat = 3
+config = Stop
+end
+
+begin
+prog = xine
+button = OFF
+repeat = 3
+config = Quit
+end
+
+begin
+prog = xine
+button = PAUSE
+repeat = 3
+config = Pause
+end
+
+begin
+prog = xine
+button = CH+
+repeat = 3
+config = EventUp
+end
+
+begin
+prog = xine
+button = CH-
+repeat = 3
+config = EventDown
+end
+
+begin
+prog = xine
+button = VOL-
+repeat = 3
+config = EventLeft
+end
+
+begin
+prog = xine
+button = VOL+
+repeat = 3
+config = EventRight
+end
+
+begin
+prog = xine
+button = OK
+repeat = 3
+config = EventSelect
+end
+
+begin
+prog = xine
+button = BACK
+repeat = 3
+config = Menu
+end
+
+begin
+prog = xine
+button = FFW
+repeat = 3
+#config = SpeedFaster
+config = SeekRelative+60
+end
+
+begin
+prog = xine
+button = REW
+repeat = 3
+#config = SpeedSlower
+config = SeekRelative-60
+end
+
+begin
+prog = xine
+button = FULL
+repeat = 3
+config = Volume+
+end
+
+begin
+prog = xine
+button = BLANK
+repeat = 3
+config = Volume-
+end
+
+begin
+prog = xine
+button = MUTE
+repeat = 3
+config = Mute
+end
+
+begin
+prog = xine
+button = MENU
+repeat = 3
+config = RootMenu
+end
+
+begin
+prog = xine
+button = SKIP
+repeat = 3
+config = EventNext
+end
+
+begin
+prog = xine
+button = REPLAY
+repeat = 3
+config = EventPrior
+end
+
+begin
+prog = xine
+button = GO
+repeat = 3
+config = OSDStreamInfos
+end
+
+begin
+prog = xine
+button = RED
+repeat = 3
+config = Quit
+end
+
+begin
+prog = xine
+button = RED
+repeat = 3
+config = Quit
+end \ No newline at end of file
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/snapstream_firefly/preview.jpg b/abs/mv-core/MythVantage-config/templates/remotes/snapstream_firefly/preview.jpg
new file mode 100644
index 0000000..a1fbc6e
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/snapstream_firefly/preview.jpg
Binary files differ
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/streamzap/lircd.conf.streamzap b/abs/mv-core/MythVantage-config/templates/remotes/streamzap/lircd.conf.streamzap
new file mode 100644
index 0000000..8e453b9
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/streamzap/lircd.conf.streamzap
@@ -0,0 +1,69 @@
+#
+# this config file was automatically generated
+# using lirc-0.7.1-CVS(serial) on Fri Feb 4 23:20:56 2005
+#
+# contributed by Christoph Bartelmus
+#
+# brand: Streamzap
+# model no. of remote control: PC Remote
+# devices being controlled by this remote: USB receiver
+#
+
+begin remote
+
+ name Streamzap_PC_Remote
+ bits 6
+ flags RC5|CONST_LENGTH
+ eps 30
+ aeps 100
+
+ one 889 889
+ zero 889 889
+ plead 889
+ pre_data_bits 8
+ pre_data 0xA3
+ gap 108344
+ toggle_bit 2
+
+
+ begin codes
+ 0 0x00
+ 1 0x01
+ 2 0x02
+ 3 0x03
+ 4 0x04
+ 5 0x05
+ 6 0x06
+ 7 0x07
+ 8 0x08
+ 9 0x09
+ POWER 0x0A
+ MUTE 0x0B
+ CH_UP 0x0C
+ VOL_UP 0x0D
+ CH_DOWN 0x0E
+ VOL_DOWN 0x0F
+ UP 0x10
+ LEFT 0x11
+ OK 0x12
+ RIGHT 0x13
+ DOWN 0x14
+ MENU 0x15
+ EXIT 0x16
+ PLAY 0x17
+ PAUSE 0x18
+ STOP 0x19
+ |<< 0x1A
+ >>| 0x1B
+ RECORD 0x1C
+ << 0x1D
+ >> 0x1E
+ RED 0x20
+ GREEN 0x21
+ YELLOW 0x22
+ BLUE 0x23
+ end codes
+
+end remote
+
+
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/streamzap/lircrc b/abs/mv-core/MythVantage-config/templates/remotes/streamzap/lircrc
new file mode 100755
index 0000000..5e668b5
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/streamzap/lircrc
@@ -0,0 +1,832 @@
+# StreamZap Remote
+# 'config' must either be a literal key, e.g. 'config = l' or must
+# refer to a defined key in MythTV, e.g. 'config = PLAY'a
+
+
+#restart frontend
+begin
+ remote = RS_LD
+ button = RESET
+ prog = irexec
+ repeat = 0
+ config = /usr/bin/restartfrontend.sh
+end
+
+#time
+begin
+ remote = RS_LD
+ button = TIME
+ prog = irexec
+ repeat = 10
+ config = /usr/bin/saytime.sh
+end
+
+#screen blank
+begin
+ remote = RS_LD
+ button = BLANK
+ prog = irexec
+ repeat = 0
+# config = ls
+ config = xset s activate ; xset s blank
+end
+
+
+#picture
+begin
+REMOTE = RS_LD
+prog = mythtv
+button = PICTURE
+repeat = 4
+config = f
+end
+
+#change aspect
+begin
+remote = RS_LD
+prog = mythtv
+button = ASPECT
+# change aspect ratio
+config = w
+end
+
+#Browse
+begin
+remote = RS_LD
+prog = mythtv
+button = BROWSE
+repeat = 8
+config = o
+end
+
+# delete key
+begin
+remote = RS_LD
+prog = mythtv
+button = DELETE
+repeat = 8
+config = d
+end
+
+
+#change card
+begin
+remote = RS_LD
+prog = mythtv
+button = CARD
+repeat = 8
+config = y
+end
+
+# Change TV card input
+begin
+remote = RS_LD
+prog = mythtv
+button = CARD_SOURCE
+repeat = 4
+config = C
+end
+
+
+
+# Cycle through channel history
+begin
+remote = Streamzap_PC_Remote
+prog = mythtv
+button = BLUE
+repeat = 4
+config = H
+end
+
+# Bring up OSD info
+begin
+remote = Streamzap_PC_Remote
+prog = mythtv
+button = YELLOW
+repeat = 4
+config = i
+end
+
+
+
+
+begin
+prog = mythtv
+button = 0
+config = 0
+end
+
+begin
+prog = mythtv
+button = 1
+config = 1
+end
+
+begin
+prog = mythtv
+button = 2
+config = 2
+end
+
+begin
+prog = mythtv
+button = 3
+config = 3
+end
+
+begin
+prog = mythtv
+button = 4
+config = 4
+end
+
+begin
+prog = mythtv
+button = 5
+config = 5
+end
+
+begin
+prog = mythtv
+button = 6
+config = 6
+end
+
+begin
+prog = mythtv
+button = 7
+config = 7
+end
+
+begin
+prog = mythtv
+button = 8
+config = 8
+end
+
+begin
+prog = mythtv
+button = 9
+config = 9
+end
+
+begin
+prog = mythtv
+button = POWER
+config = Esc
+end
+
+# ???
+begin
+prog = mythtv
+button = MUTE
+config = F9
+end
+
+begin
+prog = mythtv
+button = CH_UP
+repeat = 3
+config = PgUp
+end
+
+begin
+prog = mythtv
+button = VOL_UP
+repeat = 3
+config = ]
+end
+
+begin
+prog = mythtv
+button = CH_DOWN
+repeat = 3
+config = PgDown
+end
+
+begin
+prog = mythtv
+button = VOL_DOWN
+repeat = 3
+config = [
+end
+
+begin
+prog = mythtv
+button = UP
+repeat = 3
+config = Up
+end
+
+begin
+prog = mythtv
+button = LEFT
+# navigates, or skips back during playback or live tv.
+config = Left
+end
+
+begin
+prog = mythtv
+button = OK
+config = Return
+end
+
+begin
+prog = mythtv
+button = RIGHT
+# navigates, or skips forwards during playback or live tv.
+config = Right
+end
+
+begin
+prog = mythtv
+button = DOWN
+repeat = 3
+config = Down
+end
+
+begin
+prog = mythtv
+button = MENU
+config = m
+end
+
+begin
+prog = mythtv
+button = EXIT
+config = Esc
+end
+
+begin
+prog = mythtv
+button = PLAY
+config = Space
+end
+
+begin
+prog = mythtv
+button = PAUSE
+config = p
+end
+
+begin
+prog = mythtv
+button = STOP
+config = Esc
+end
+
+begin
+prog = mythtv
+# skip backward
+button = |<<
+config = PgUp
+end
+
+begin
+prog = mythtv
+# skip forward
+button = >>|
+config = PgDown
+end
+
+begin
+prog = mythtv
+button = RECORD
+config = r
+end
+
+begin
+prog = mythtv
+# rewind
+button = <<
+config = Home
+end
+
+begin
+prog = mythtv
+# fast forward
+button = >>
+config = End
+end
+
+begin
+prog = mythtv
+button = RED
+# Delete
+config = d
+end
+
+begin
+prog = mythtv
+button = GREEN
+# Info
+config = i
+end
+
+#begin
+#prog = mythtv
+#button = YELLOW
+# change aspect ratio
+#config = w
+#end
+
+begin
+prog = mythtv
+button = BLUE
+config = Tab
+end
+
+# MPLAYER
+begin
+prog = mplayer
+button = POWER
+config = quit
+end
+
+begin
+prog = mplayer
+button = MUTE
+config = mute
+end
+
+begin
+prog = mplayer
+button = VOL_UP
+repeat = 3
+config = volume +1
+end
+
+begin
+prog = mplayer
+button = VOL_DOWN
+repeat = 3
+config = volume -1
+end
+
+begin
+prog = mplayer
+button = UP
+repeat = 3
+config = seek +10
+end
+
+begin
+prog = mplayer
+button = LEFT
+# navigates, or skips back during playback or live tv.
+config = seek -60
+end
+
+begin
+prog = mplayer
+button = RIGHT
+# navigates, or skips forwards during playback or live tv.
+config = seek +60
+end
+
+begin
+prog = mplayer
+button = DOWN
+repeat = 3
+config = seek -10
+end
+
+begin
+prog = mplayer
+button = EXIT
+config = quit
+end
+
+begin
+prog = mplayer
+button = play
+config = speed_set 1.0
+end
+
+begin
+ prog = mplayer
+ button = pause
+ config = pause
+end
+
+begin
+prog = mplayer
+button = STOP
+config = quit
+end
+
+begin
+prog = mplayer
+# skip backward
+button = |<<
+config = seek -600
+end
+
+begin
+prog = mplayer
+# skip forward
+button = >>|
+config = seek +600
+end
+
+begin
+prog = mplayer
+# slow forward
+button = <<
+config = speed_mult 0.5
+end
+
+begin
+prog = mplayer
+# fast forward
+button = >>
+config = speed_mult 2.0
+end
+
+### xine commands
+
+begin
+prog = xine
+button = YELLOW
+repeat = 4
+#config = ToggleVisiblity
+config = OSDStreamInfos
+end
+
+begin
+prog = xine
+button = MENU
+repeat = 4
+config = SeekRelative+60
+end
+
+# increase brightness by 10
+begin
+ button = DELETE
+ prog = xine
+ repeat = 4
+ config = BrightnessControl+
+end
+
+# decrease brightness by 10
+begin
+ button = PICTURE
+ prog = xine
+ repeat = 4
+ config = BrightnessControl-
+end
+
+
+begin
+prog = xine
+button = PAUSE
+repeat = 4
+config = Pause
+end
+
+begin
+prog = xine
+button = PLAY
+repeat = 4
+config = Play
+end
+
+begin
+prog = xine
+button = STOP
+repeat = 4
+config = quit
+end
+
+begin
+prog = xine
+button = MUTE
+repeat = 4
+config = mute
+end
+
+begin
+prog = xine
+button = <<
+repeat = 4
+config = SeekRelative-30
+end
+
+begin
+prog = xine
+button = >>
+repeat = 4
+#config = SeekRelative+30
+config = SpeedFaster
+end
+
+begin
+prog = xine
+button = POWER
+repeat = 4
+config = quit
+end
+
+begin
+prog = xine
+button = EXIT
+repeat = 4
+config = quit
+end
+
+
+begin
+prog = xine
+button = FREEZE
+repeat = 4
+config = SeekRelative+1200
+end
+
+begin
+prog = xine
+button = MOVE
+repeat = 4
+config = SeekRelative-1200
+end
+
+begin
+prog = xine
+button = 3
+config = SpuNext
+repeat = 0
+end
+
+# Select previous sub picture (subtitle) channel.
+begin
+button = 1
+prog = xine
+repeat = 0
+config = SpuPrior
+end
+
+# Select next audio channel.
+begin
+button = 9
+prog = xine
+repeat = 0
+config = AudioChannelNext
+end
+
+# Select previous audio channel.
+begin
+button = 7
+prog = xine
+repeat = 0
+config = AudioChannelPrior
+end
+
+
+
+# Up event.
+begin
+
+button = UP
+prog = xine
+repeat = 8
+config = EventUp
+end
+
+# Down event.
+begin
+
+button = DOWN
+prog = xine
+repeat = 8
+config = EventDown
+end
+
+# Left event.
+begin
+
+button = LEFT
+prog = xine
+repeat = 8
+config = EventLeft
+end
+
+# Right event.
+begin
+
+button = RIGHT
+prog = xine
+repeat = 8
+config = EventRight
+end
+
+# Select event.
+begin
+prog = xine
+button = ok
+repeat = 8
+config = EventSelect
+end
+
+# Down Chapter
+begin
+
+button = CH_DOWN
+prog = xine
+repeat = 8
+config = EventPrior
+end
+
+# Next Chapter.
+begin
+
+button = CH_UP
+prog = xine
+repeat = 8
+config = EventNext
+end
+
+# menu.
+begin
+
+button = record
+prog = xine
+repeat = 8
+config = RootMenu
+end
+
+# Toggle aspect ratio
+begin
+prog = xine
+button = ASPECT
+repeat = 0
+config = ToggleAspectRatio
+end
+
+
+
+#######xmms
+begin xmms
+ begin
+ prog = xmms
+ button = PLAY
+ config = PLAY
+ end
+ begin
+ prog = xmms
+ button = clear
+ config = PLAYLIST_CLEAR
+ end
+ begin
+ prog = xmms
+ button = load
+ config = PLAYLIST_ADD .xmms/xmms.m3u
+ end
+ begin
+ prog = xmms
+ button = PAUSE
+ config = PAUSE
+ end
+ begin
+ prog = xmms
+ button = STOP
+ config = STOP
+ end
+ begin
+ prog = xmms
+ button = EXIT
+ config = QUIT
+ flags = mode
+ end
+
+ begin
+ prog = xmms
+ button = POWER
+ config = QUIT
+ flags = mode
+ end
+
+ begin
+ prog = xmms
+ button = CH_UP
+ config = NEXT
+ end
+ begin
+ prog = xmms
+ button = CH_DOWN
+ config = PREV
+ end
+
+
+
+begin
+ prog = xmms
+ button = >>|
+ config = NEXT
+ end
+begin
+ prog = xmms
+ button = |<<
+ config = PREV
+end
+
+
+begin
+ prog = xmms
+ button = <<
+ config = FWD 10
+ repeat = 2
+ end
+ begin
+ prog = xmms
+ button = <<
+ config = BWD 10
+ repeat = 2
+ end
+ begin
+ prog = xmms
+ button = volup
+ config = VOL_UP 10
+ repeat = 2
+ end
+ begin
+ prog = xmms
+ button = voldown
+ config = VOL_DOWN 10
+ repeat = 2
+ end
+ begin
+ prog = xmms
+ button = 1
+ config = ONE
+ end
+ begin
+ prog = xmms
+ button = 2
+ config = TWO
+ end
+ begin
+ prog = xmms
+ button = 3
+ config = THREE
+ end
+ begin
+ prog = xmms
+ button = 4
+ config = FOUR
+ end
+ begin
+ prog = xmms
+ button = 5
+ config = FIVE
+ end
+ begin
+ prog = xmms
+ button = 6
+ config = SIX
+ end
+ begin
+ prog = xmms
+ button = 7
+ config = SEVEN
+ end
+ begin
+ prog = xmms
+ button = 8
+ config = EIGHT
+ end
+ begin
+ prog = xmms
+ button = 9
+ config = NINE
+ end
+ begin
+ prog = xmms
+ button = 0
+ config = ZERO
+ end
+ begin
+ prog = xmms
+ button = enter
+ config = SETPOS
+ end
+end xmms
+
+#
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/abs/mv-core/MythVantage-config/templates/remotes/streamzap/preview.jpg b/abs/mv-core/MythVantage-config/templates/remotes/streamzap/preview.jpg
new file mode 100644
index 0000000..4d1a5fe
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/remotes/streamzap/preview.jpg
Binary files differ
diff --git a/abs/mv-core/MythVantage-config/templates/samba/smb.conf.home b/abs/mv-core/MythVantage-config/templates/samba/smb.conf.home
new file mode 100755
index 0000000..b850a7d
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/samba/smb.conf.home
@@ -0,0 +1,10 @@
+[home]
+ path = /data/home/mythtv/
+ public = yes
+ only guest = yes
+ writeable = yes
+ printable = no
+ force user = mythtv
+ force group = mythtv
+ create mask = 0755
+
diff --git a/abs/mv-core/MythVantage-config/templates/samba/smb.conf.media b/abs/mv-core/MythVantage-config/templates/samba/smb.conf.media
new file mode 100755
index 0000000..6a4ec91
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/samba/smb.conf.media
@@ -0,0 +1,10 @@
+[media]
+ path = /data/media
+ public = yes
+ only guest = yes
+ writeable = yes
+ printable = no
+ force user = mythtv
+ force group = mythtv
+ create mask = 0755
+
diff --git a/abs/mv-core/MythVantage-config/templates/samba/smb.conf.template b/abs/mv-core/MythVantage-config/templates/samba/smb.conf.template
new file mode 100644
index 0000000..42ddb99
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/samba/smb.conf.template
@@ -0,0 +1,125 @@
+#
+#======================= Global Settings =====================================
+[global]
+
+ workgroup = home_lan
+ server string = MythVantage
+
+# Security mode. Defines in which mode Samba will operate. Possible
+# values are share, user, server, domain and ads. Most people will want
+# user level security. See the Samba-HOWTO-Collection for details.
+ security = share
+
+# This option is important for security. It allows you to restrict
+# connections to machines which are on your local network. The
+# following example restricts access to two C class networks and
+# the "loopback" interface. For more examples of the syntax see
+# the smb.conf man page
+; hosts allow = 192.168.1. 192.168.2. 127.
+
+ load printers = no
+
+# you may wish to override the location of the printcap file
+; printcap name = /etc/printcap
+
+; guest account = pcguest
+
+# this tells Samba to use a separate log file for each machine
+# that connects
+ log file = /var/log/samba/log.%m
+
+# Put a capping on the size of the log files (in Kb).
+ max log size = 50
+
+# Use password server option only with security = server
+# The argument list may include:
+# password server = My_PDC_Name [My_BDC_Name] [My_Next_BDC_Name]
+# or to auto-locate the domain controller/s
+# password server = *
+; password server = <NT-Server-Name>
+
+# Use the realm option only with security = ads
+# Specifies the Active Directory realm the host is part of
+; realm = MY_REALM
+
+# Backend to store user information in. New installations should
+# use either tdbsam or ldapsam. smbpasswd is available for backwards
+# compatibility. tdbsam requires no further configuration.
+; passdb backend = tdbsam
+
+# Using the following line enables you to customise your configuration
+# on a per machine basis. The %m gets replaced with the netbios name
+# of the machine that is connecting.
+# Note: Consider carefully the location in the configuration file of
+# this line. The included file is read at that point.
+; include = /usr/local/samba/lib/smb.conf.%m
+
+# Configure Samba to use multiple interfaces
+# If you have multiple network interfaces then you must list them
+# here. See the man page for details.
+; interfaces = 192.168.12.2/24 192.168.13.2/24
+
+# Browser Control Options:
+# set local master to no if you don't want Samba to become a master
+# browser on your network. Otherwise the normal election rules apply
+; local master = no
+
+# OS Level determines the precedence of this server in master browser
+# elections. The default value should be reasonable
+; os level = 33
+
+# Domain Master specifies Samba to be the Domain Master Browser. This
+# allows Samba to collate browse lists between subnets. Don't use this
+# if you already have a Windows NT domain controller doing this job
+; domain master = yes
+
+# Preferred Master causes Samba to force a local browser election on startup
+# and gives it a slightly higher chance of winning the election
+; preferred master = yes
+
+# Enable this if you want Samba to be a domain logon server for
+# Windows95 workstations.
+; domain logons = yes
+
+# if you enable domain logons then you may want a per-machine or
+# per user logon script
+# run a specific logon batch file per workstation (machine)
+; logon script = %m.bat
+# run a specific logon batch file per username
+; logon script = %U.bat
+
+# Where to store roving profiles (only for Win95 and WinNT)
+# %L substitutes for this servers netbios name, %U is username
+# You must uncomment the [Profiles] share below
+; logon path = \\%L\Profiles\%U
+
+# Windows Internet Name Serving Support Section:
+# WINS Support - Tells the NMBD component of Samba to enable it's WINS Server
+; wins support = yes
+
+# WINS Server - Tells the NMBD components of Samba to be a WINS Client
+# Note: Samba can be either a WINS Server, or a WINS Client, but NOT both
+; wins server = w.x.y.z
+
+# WINS Proxy - Tells Samba to answer name resolution queries on
+# behalf of a non WINS capable client, for this to work there must be
+# at least one WINS Server on the network. The default is NO.
+; wins proxy = yes
+
+# DNS Proxy - tells Samba whether or not to try to resolve NetBIOS names
+# via DNS nslookups. The default is NO.
+ dns proxy = no
+
+# These scripts are used on a domain controller or stand-alone
+# machine to add or delete corresponding unix accounts
+; add user script = /usr/sbin/useradd %u
+; add group script = /usr/sbin/groupadd %g
+; add machine script = /usr/sbin/adduser -n -g machines -c Machine -d /dev/null -s /bin/false %u
+; delete user script = /usr/sbin/userdel %u
+; delete user from group script = /usr/sbin/deluser %u %g
+; delete group script = /usr/sbin/groupdel %g
+
+
+#============================ Share Definitions ==============================
+
+
diff --git a/abs/mv-core/MythVantage-config/templates/settings/default_1/keybindings.txt b/abs/mv-core/MythVantage-config/templates/settings/default_1/keybindings.txt
new file mode 100644
index 0000000..f82f2d2
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/settings/default_1/keybindings.txt
@@ -0,0 +1,209 @@
+context action description keylist hostname
+Music FFWD Fast forward PgDown REPLACEME
+Music STOP Stop playback O REPLACEME
+Music MUTE Mute |,\\\\,F9 REPLACEME
+Gallery SCROLLUP Scroll image up 2 REPLACEME
+Music VOLUMEDOWN Volume down [,{,F10 REPLACEME
+Music VOLUMEUP Volume up ],},F11 REPLACEME
+qt DELETE Delete D REPLACEME
+Music RWND Rewind PgUp REPLACEME
+qt EDIT Edit E REPLACEME
+Music PAUSE Pause/Start playback P REPLACEME
+Gallery RECENTER Recenter image 5 REPLACEME
+Gallery FULLSIZE Full-size (un-zoom) image 0 REPLACEME
+Gallery LOWRIGHT Go to the lower-right corner of the image PgDown REPLACEME
+Gallery SCROLLRIGHT Scroll image right 6 REPLACEME
+Gallery MENU Toggle activating menu in thumbnail view M REPLACEME
+Gallery SCROLLDOWN Scroll image down 8 REPLACEME
+Gallery ZOOMIN Zoom image in 9 REPLACEME
+Gallery UPLEFT Go to the upper-left corner of the image PgUp REPLACEME
+Gallery RANDOMSHOW Start Random Slideshow in thumbnail view R REPLACEME
+Gallery ROTLEFT Rotate image left 90 degrees [,1 REPLACEME
+Gallery SLIDESHOW Start Slideshow in thumbnail view S REPLACEME
+Gallery ROTRIGHT Rotate image right 90 degrees ],3 REPLACEME
+Gallery END Go to the last image in thumbnail view End REPLACEME
+Gallery HOME Go to the first image in thumbnail view Home REPLACEME
+Gallery SCROLLLEFT Scroll image left 4 REPLACEME
+Gallery PLAY Start/Stop Slideshow P REPLACEME
+NetFlix REMOVE Removes movie from queue D REPLACEME
+Archive TOGGLECUT Toggle use cut list state for selected program C REPLACEME
+Gallery ZOOMOUT Zoom image out 7 REPLACEME
+NetFlix MOVETOTOP Moves movie to top of queue 1 REPLACEME
+Global DOWN Down Arrow Down REPLACEME
+ITV Menu MENUTEXT Menu Text F7 REPLACEME
+ITV Menu TEXTEXIT Menu Exit F6 REPLACEME
+Global LEFT Left Arrow Left REPLACEME
+Global RIGHT Right Arrow Right REPLACEME
+Global UP Up Arrow Up REPLACEME
+Global MENU Pop-up menu M REPLACEME
+Global PREVVIEW Previous View Home REPLACEME
+Global ESCAPE Escape Esc REPLACEME
+Global PAGEUP Page Up PgUp REPLACEME
+Global SELECT Select Return,Enter,Space REPLACEME
+Global HELP Help F1 REPLACEME
+Global INFO More information I REPLACEME
+Global NEXTVIEW Next View End REPLACEME
+ITV Menu MENUBLUE Menu Blue F5 REPLACEME
+Global PAGEDOWN Page Down PgDown REPLACEME
+Global EJECT Eject Removable Media REPLACEME
+Global 3 3 3 REPLACEME
+Global 1 1 1 REPLACEME
+Global 6 6 6 REPLACEME
+Global 0 0 0 REPLACEME
+Global 2 2 2 REPLACEME
+Global 4 4 4 REPLACEME
+TV Frontend DELETE Delete Program D REPLACEME
+Global 8 8 8 REPLACEME
+Global 7 7 7 REPLACEME
+TV Frontend PAGEDOWN Page Down 9 REPLACEME
+TV Frontend PAGEUP Page Up 3 REPLACEME
+Global 5 5 5 REPLACEME
+TV Frontend CHANGERECGROUP Change Recording Group REPLACEME
+Global 9 9 9 REPLACEME
+Video END Go to the last video End REPLACEME
+Video INCPARENT Increase Parental Level ],},F11 REPLACEME
+Weather PAUSE Pause current page P REPLACEME
+TV Frontend TOGGLERECORD Toggle recording status of current program R REPLACEME
+Video BROWSE Change browsable in video manager B REPLACEME
+Welcome SHOWSETTINGS Show Mythshutdown settings F11 REPLACEME
+Video HOME Go to the first video Home REPLACEME
+Video FILTER Open video filter dialog F REPLACEME
+Welcome STARTXTERM Open an Xterm window F12 REPLACEME
+Music INCSEARCH Show incremental search dialog Ctrl+S REPLACEME
+Music BLANKSCR Blank screen 5 REPLACEME
+Video DELETE Delete video D REPLACEME
+Music THMBUP Increase rating 9 REPLACEME
+Music CYCLEVIS Cycle visualizer mode 6 REPLACEME
+Teletext Menu REVEAL Reveal hidden Text F8 REPLACEME
+Music INCSEARCHNEXT Incremental search find next match Ctrl+N REPLACEME
+TV Frontend PLAYBACK Play Program P REPLACEME
+News FORCERETRIEVE Force update news items M REPLACEME
+Video DECPARENT Decrease Parental Level [,{,F10 REPLACEME
+News RETRIEVENEWS Update news items I REPLACEME
+News CANCEL Cancel news item updating C REPLACEME
+Teletext Menu TOGGLEBACKGROUND Toggle Background F7 REPLACEME
+Teletext Menu MENUWHITE Menu White F6 REPLACEME
+ITV Menu MENURED Menu Red F2 REPLACEME
+ITV Menu MENUYELLOW Menu Yellow F4 REPLACEME
+ITV Menu MENUGREEN Menu Green F3 REPLACEME
+Teletext Menu PREVSUBPAGE Previous Subpage Left REPLACEME
+Teletext Menu MENUYELLOW Menu Yellow F4 REPLACEME
+Teletext Menu MENUGREEN Menu Green F3 REPLACEME
+Teletext Menu NEXTSUBPAGE Next Subpage Right REPLACEME
+Teletext Menu MENUBLUE Menu Blue F5 REPLACEME
+Teletext Menu TOGGLETT Toggle Teletext T REPLACEME
+Teletext Menu NEXTPAGE Next Page Down REPLACEME
+TV Editing LOADCOMMSKIP Load cut list from commercial skips Z,End REPLACEME
+TV Editing BIGJUMPREW Jump back 10x the normal amount ,,< REPLACEME
+TV Editing BIGJUMPFWD Jump forward 10x the normal amount >,. REPLACEME
+TV Playback JUMPTODVDROOTMENU Jump to the DVD Root Menu REPLACEME
+Teletext Menu MENURED Menu Red F2 REPLACEME
+TV Playback SIGNALMON Monitor Signal Quality F7 REPLACEME
+Teletext Menu PREVPAGE Previous Page Up REPLACEME
+TV Editing INVERTMAP Invert Begin/End cut points I REPLACEME
+TV Playback PLAY Play Ctrl+P REPLACEME
+TV Editing PREVCUT Jump to the previous cut point PgUp REPLACEME
+TV Editing NEXTCUT Jump to the next cut point PgDown REPLACEME
+TV Playback CYCLECOMMSKIPMODE Cycle Commercial Skip mode REPLACEME
+TV Playback TOGGLESLEEP Toggle the Sleep Timer F8 REPLACEME
+TV Playback JUMPREC Display menu of recorded programs to jump to REPLACEME
+TV Playback FINDER Show the Program Finder # REPLACEME
+TV Playback ADJUSTSTRETCH Turn on time stretch control A REPLACEME
+TV Editing CLEARMAP Clear editing cut points C,Q,Home REPLACEME
+TV Editing TOGGLEEDIT Exit out of Edit Mode E REPLACEME
+TV Playback TOGGLESTRETCH Toggle time stretch speed REPLACEME
+TV Playback TOGGLERECCONTROLS Recording picture adjustments for this recorder G REPLACEME
+TV Playback TOGGLEAUDIOSYNC Turn on audio sync adjustment controls REPLACEME
+TV Playback TOGGLEEDIT Start Edit Mode E REPLACEME
+TV Playback SPEEDINC Increase the playback speed U REPLACEME
+TV Playback STRETCHDEC Decrease time stretch speed REPLACEME
+TV Playback SPEEDDEC Decrease the playback speed J REPLACEME
+TV Playback TOGGLECHANCONTROLS Recording picture adjustments for this channel Ctrl+G REPLACEME
+TV Playback GUIDE Show the Program Guide S REPLACEME
+TV Playback JUMPPREV Jump to previously played recording REPLACEME
+TV Playback QUEUETRANSCODE Queue the current recording for transcoding X REPLACEME
+TV Playback STRETCHINC Increase time stretch speed REPLACEME
+TV Playback TOGGLEPICCONTROLS Playback picture adjustments F REPLACEME
+TV Playback PREVCC708 Previous ATSC CC track REPLACEME
+TV Playback NEXTCC708 Next ATSC CC track REPLACEME
+TV Playback NEXTCC Next of any captions REPLACEME
+TV Playback NEXTSCAN Next video scan overidemode REPLACEME
+TV Playback NEXTCC608 Next VBI CC track REPLACEME
+TV Playback PREVCC608 Previous VBI CC track REPLACEME
+TV Playback PREVAUDIO Previous audio track - REPLACEME
+TV Playback PREVSUBTITLE Previous subtitle track REPLACEME
+TV Playback NEXTSUBTITLE Next subtitle track REPLACEME
+TV Playback NEXTAUDIO Next audio track + REPLACEME
+TV Playback SELECTCC708_3 Display ATSC CC4 REPLACEME
+TV Playback SELECTCC708_0 Display ATSC CC1 REPLACEME
+TV Playback SELECTCC608_1 Display VBI CC2 REPLACEME
+TV Playback SELECTAUDIO_0 Play audio track 1 REPLACEME
+TV Playback SELECTCC608_2 Display VBI CC3 REPLACEME
+TV Playback TOGGLETTM Toggle Teletext Menu REPLACEME
+TV Playback SELECTSUBTITLE_1 Display subtitle 2 REPLACEME
+TV Playback SELECTCC608_3 Display VBI CC4 REPLACEME
+TV Playback SELECTCC708_1 Display ATSC CC2 REPLACEME
+TV Playback SELECTCC708_2 Display ATSC CC3 REPLACEME
+TV Playback SELECTAUDIO_1 Play audio track 2 REPLACEME
+TV Playback SELECTSUBTITLE_0 Display subtitle 1 REPLACEME
+TV Playback TOGGLETTC Toggle Teletext Captions REPLACEME
+TV Playback SELECTCC608_0 Display VBI CC1 REPLACEME
+TV Playback SWAPPIP Swap PiP/Main N REPLACEME
+TV Playback TOGGLEASPECT Toggle the display aspect ratio W REPLACEME
+TV Playback TOGGLECC708 Toggle ATSC CC REPLACEME
+TV Playback TOGGLECC608 Toggle VBI CC REPLACEME
+TV Playback TOGGLEPIPMODE Toggle Picture-in-Picture mode V REPLACEME
+TV Playback TOGGLEFAV Toggle the current channel as a favorite ? REPLACEME
+TV Playback TOGGLEPIPWINDOW Toggle active PiP window B REPLACEME
+TV Playback MUTE Mute |,\\\\,F9 REPLACEME
+TV Playback TOGGLEBROWSE Toggle channel browse mode O REPLACEME
+TV Playback TOGGLESUBTITLE Toggle Subtitles REPLACEME
+TV Playback VOLUMEUP Volume up ],},F11 REPLACEME
+TV Playback TOGGLECC Toggle any captions T REPLACEME
+TV Playback JUMPSTART Jump to the start of the recording. Ctrl+B REPLACEME
+TV Playback TOGGLERECORD Toggle recording status of current program R REPLACEME
+TV Playback SKIPCOMMERCIAL Skip Commercial Z,End REPLACEME
+TV Playback VOLUMEDOWN Volume down [,{,F10 REPLACEME
+TV Playback SWITCHCARDS Switch Capture Cards Y REPLACEME
+TV Playback SKIPCOMMBACK Skip Commercial (Reverse) Q,Home REPLACEME
+TV Playback TOGGLEINPUTS Toggle Inputs C REPLACEME
+TV Playback FFWDSTICKY Fast Forward (Sticky) or Forward one frame while paused >,. REPLACEME
+TV Playback JUMPFFWD Jump ahead PgDown REPLACEME
+TV Playback PREVCHAN Switch to the previous channel H REPLACEME
+TV Playback JUMPBKMRK Jump to bookmark K REPLACEME
+TV Playback RWNDSTICKY Rewind (Sticky) or Rewind one frame while paused ,,< REPLACEME
+TV Playback NEXTFAV Switch to the next favorite channel / REPLACEME
+TV Playback JUMPRWND Jump back PgUp REPLACEME
+TV Playback SEEKRWND Rewind Left REPLACEME
+TV Playback SEEKFFWD Fast Forward Right REPLACEME
+TV Playback CHANNELDOWN Channel down Down REPLACEME
+TV Playback CHANNELUP Channel up Up REPLACEME
+TV Playback ARBSEEK Arbitrary Seek * REPLACEME
+TV Playback DELETE Delete Program D REPLACEME
+TV Playback CLEAROSD Clear OSD Backspace REPLACEME
+TV Frontend DETAILS Show program details U REPLACEME
+TV Frontend CUSTOMEDIT Edit Custom Record Rule E REPLACEME
+TV Frontend UPCOMING List upcoming episodes O REPLACEME
+TV Frontend CHANUPDATE Switch channels without exiting guide in Live TV mode. X REPLACEME
+TV Frontend RANKDEC Decrease program or channel rank Left REPLACEME
+TV Frontend VIEWCARD Switch Capture Card view Y REPLACEME
+TV Playback PAUSE Pause P REPLACEME
+TV Frontend RANKINC Increase program or channel rank Right REPLACEME
+TV Frontend PAGERIGHT Page the program guide right >,. REPLACEME
+TV Frontend PAGELEFT Page the program guide left ,,< REPLACEME
+TV Frontend NEXTFAV Toggle showing all channels or just favorites in the program guide. / REPLACEME
+Gallery DELETE Delete marked images or current image if none are marked D REPLACEME
+TV Frontend DAYRIGHT Page the program guide forward one day End,1 REPLACEME
+Gallery MARK Mark image T REPLACEME
+Game TOGGLEFAV Toggle the current game as a favorite ?,/ REPLACEME
+TV Frontend TOGGLEFAV Toggle the current channel as a favorite ? REPLACEME
+TV Frontend DAYLEFT Page the program guide back one day Home,7 REPLACEME
+Music PREVTRACK Move to the previous track ,,<,Q,Home REPLACEME
+Game INCSEARCHNEXT Incremental search find next match Ctrl+N REPLACEME
+Music DELETE Delete track from playlist D REPLACEME
+Gallery INFO Toggle Showing Information about Image I REPLACEME
+Game INCSEARCH Show incremental search dialog Ctrl+S REPLACEME
+Music REFRESH Refresh music tree 8 REPLACEME
+Music NEXTTRACK Move to the next track >,.,Z,End REPLACEME
+Music FILTER Filter All My Music F REPLACEME
+Music THMBDOWN Decrease rating 7 REPLACEME
diff --git a/abs/mv-core/MythVantage-config/templates/settings/default_1/settings.txt b/abs/mv-core/MythVantage-config/templates/settings/default_1/settings.txt
new file mode 100644
index 0000000..8c3a391
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/settings/default_1/settings.txt
@@ -0,0 +1,320 @@
+value data hostname
+AC3PassThru 0 REPLACEME
+AggressiveSoundcardBuffer 0 REPLACEME
+AllowQuitShutdown 3 REPLACEME
+AltClearSavedPosition 1 REPLACEME
+AspectOverride 0 REPLACEME
+AudioNag 1 REPLACEME
+AudioOutputDevice /dev/dsp REPLACEME
+AutoCommercialSkip 2 REPLACEME
+AutoLookupCD 1 REPLACEME
+AutomaticSetWatched 0 REPLACEME
+AutoPlayCD 0 REPLACEME
+BackendServerPort 6543 REPLACEME
+BackendStatusPort 6544 REPLACEME
+CCBackground 0 REPLACEME
+CDBlankType fast REPLACEME
+CDCreateDir 1 REPLACEME
+CDDevice /dev/cdrom REPLACEME
+CDDiskSize 1 REPLACEME
+CDWriterEnabled 0 REPLACEME
+CDWriteSpeed 0 REPLACEME
+ChannelFormat <num> <sign> REPLACEME
+ChannelOrdering channum REPLACEME
+chanPerPage 5 REPLACEME
+ClearSavedPosition 1 REPLACEME
+CommNotifyAmount 0 REPLACEME
+CommRewindAmount 0 REPLACEME
+CustomFilters REPLACEME
+DateFormat ddd MMM d REPLACEME
+DecodeExtraAudio 1 REPLACEME
+Default MythVideo View 1 REPLACEME
+DefaultCCMode 0 REPLACEME
+DefaultRipQuality 0 REPLACEME
+DefaultTVChannel 3 REPLACEME
+Deinterlace 1 REPLACEME
+DeinterlaceFilter kerneldeint REPLACEME
+DisplayGroupDefaultView 0 REPLACEME
+DisplayGroupTitleSort 0 REPLACEME
+DisplayRecGroup Default REPLACEME
+DispRecGroupAsAllProg 0 REPLACEME
+DTSPassThru 0 REPLACEME
+DVDDeviceLocation /dev/dvd REPLACEME
+DVDOnInsertDVD 1 REPLACEME
+DVDRipLocation /data/media/tmp REPLACEME
+EjectCDAfterRipping 1 REPLACEME
+EnableMHEG 0 REPLACEME
+EnableXbox 0 REPLACEME
+EnableXbox 0 REPLACEME
+EncoderType ogg REPLACEME
+EndOfRecordingExitPrompt 1 REPLACEME
+EPGFillType 10 REPLACEME
+EPGScrollType 1 REPLACEME
+EPGShowCategoryColors 1 REPLACEME
+EPGShowCategoryText 1 REPLACEME
+EPGShowChannelIcon 1 REPLACEME
+EPGShowFavorites 0 REPLACEME
+ExactSeeking 0 REPLACEME
+FFRewReposTime 100 REPLACEME
+FFRewReverse 1 REPLACEME
+FilenameTemplate ARTIST/ALBUM/TRACK-TITLE REPLACEME
+GalleryDir /data/media/images REPLACEME
+GalleryImportDirs /mnt/cdrom:/mnt/camera REPLACEME
+GalleryMoviePlayerCmd mplayer -fs %s REPLACEME
+GalleryOverlayCaption 0 REPLACEME
+GalleryRecursiveSlideshow 1 REPLACEME
+GallerySortOrder 20 REPLACEME
+GalleryThumbnailLocation 1 REPLACEME
+GameAllTreeLevels system gamename REPLACEME
+GameFavTreeLevels gamename REPLACEME
+GeneratePreviewPixmaps 0 REPLACEME
+GuiHeight 0 REPLACEME
+GuiOffsetX 0 REPLACEME
+GuiOffsetY 0 REPLACEME
+GuiSizeForTV 0 REPLACEME
+GuiVidModeResolution 640x480 REPLACEME
+GuiWidth 0 REPLACEME
+HideMouseCursor 1 REPLACEME
+HorizScanPercentage 0 REPLACEME
+Ignore_ID3 0 REPLACEME
+IndividualMuteControl 0 REPLACEME
+IntelliLastPlayWeight 25 REPLACEME
+IntelliPlayCountWeight 25 REPLACEME
+IntelliRandomWeight 15 REPLACEME
+IntelliRatingWeight 35 REPLACEME
+ISO639Language0 eng REPLACEME
+ISO639Language1 eng REPLACEME
+JobAllowCommFlag 1 REPLACEME
+JobAllowTranscode 1 REPLACEME
+JobQueueCheckFrequency 60 REPLACEME
+JobQueueCPU 0 REPLACEME
+JobQueueMaxSimultaneousJobs 1 REPLACEME
+JobQueueWindowEnd 23:59 REPLACEME
+JobQueueWindowStart 00:00 REPLACEME
+KeyboardAccelerators 1 REPLACEME
+Language EN REPLACEME
+LastMusicPlaylistPush 0 REPLACEME
+LCDBacklightOn 1 REPLACEME
+LCDBigClock 0 REPLACEME
+LCDEnable 0 REPLACEME
+LCDHeartBeatOn 0 REPLACEME
+LCDKeyString ABCDEF REPLACEME
+LCDPopupTime 5 REPLACEME
+LCDShowChannel 1 REPLACEME
+LCDShowGeneric 1 REPLACEME
+LCDShowMenu 1 REPLACEME
+LCDShowMusic 1 REPLACEME
+LCDShowMusicItems ArtistTitle REPLACEME
+LCDShowRecStatus 0 REPLACEME
+LCDShowTime 1 REPLACEME
+LCDShowVolume 1 REPLACEME
+LircKeyPressedApp REPLACEME
+ListAsShuffled 0 REPLACEME
+LiveTVInAllPrograms 0 REPLACEME
+LogCleanDays 14 REPLACEME
+LogCleanDays 14 REPLACEME
+LogCleanEnabled 0 REPLACEME
+LogCleanEnabled 0 REPLACEME
+LogCleanMax 30 REPLACEME
+LogCleanMax 30 REPLACEME
+LogCleanPeriod 14 REPLACEME
+LogCleanPeriod 14 REPLACEME
+LogMaxCount 100 REPLACEME
+LogMaxCount 100 REPLACEME
+LogPrintLevel 8 REPLACEME
+LogPrintLevel 8 REPLACEME
+LongChannelFormat <num> <name> REPLACEME
+MasterMixerVolume 70 REPLACEME
+MenuTheme MythVantage-menu REPLACEME
+MixerControl PCM REPLACEME
+MixerDevice /dev/mixer REPLACEME
+MonitorDrives 0 REPLACEME
+MovieDataCommandLine /usr/local/share/mythtv/mythvideo/scripts/imdb.pl -D REPLACEME
+MovieListCommandLine /usr/local/share/mythtv/mythvideo/scripts/imdb.pl -M tv=no;video=no REPLACEME
+MoviePosterCommandLine /usr/local/share/mythtv/mythvideo/scripts/imdb.pl -P REPLACEME
+Mp3UseVBR 0 REPLACEME
+MTDac3Flag 0 REPLACEME
+MTDConcurrentTranscodes 1 REPLACEME
+MTDLogFlag 0 REPLACEME
+MTDNiceLevel 20 REPLACEME
+MTDPort 2442 REPLACEME
+MTDRipSize 0 REPLACEME
+MTDxvidFlag 1 REPLACEME
+MusicAudioDevice default REPLACEME
+MusicLocation /data/media/audio REPLACEME
+MusicShowRatings 0 REPLACEME
+MythArchiveAlwaysUseMythTranscode 1 REPLACEME
+MythArchiveChapterMenuAR Video REPLACEME
+MythArchiveCopyRemoteFiles 1 REPLACEME
+MythArchiveDateFormat %a %b %d REPLACEME
+MythArchiveDvdauthorCmd dvdauthor REPLACEME
+MythArchiveDVDLocation /dev/dvd REPLACEME
+MythArchiveEncodeToAc3 1 REPLACEME
+MythArchiveFfmpegCmd ffmpeg REPLACEME
+MythArchiveFileFilter *.mpg *.mov *.avi *.mpeg *.nuv REPLACEME
+MythArchiveGrowisofsCmd growisofs REPLACEME
+MythArchiveMainMenuAR 16:9 REPLACEME
+MythArchiveMkisofsCmd mkisofs REPLACEME
+MythArchiveMpeg2encCmd mpeg2enc REPLACEME
+MythArchiveMplexCmd mplex REPLACEME
+MythArchivePng2yuvCmd png2yuv REPLACEME
+MythArchiveShareDir /usr/local/share/mythtv/mytharchive/ REPLACEME
+MythArchiveSpumuxCmd spumux REPLACEME
+MythArchiveTcrequantCmd tcrequant REPLACEME
+MythArchiveTempDir /data/media/tmp REPLACEME
+MythArchiveTimeFormat %I:%M %p REPLACEME
+MythArchiveUseFIFO 1 REPLACEME
+MythArchiveVideoFormat NTSC REPLACEME
+MythControlsVolume 1 REPLACEME
+mythdvd.DVDPlayerCommand Internal REPLACEME
+mythvideo.db_folder_view 1 REPLACEME
+mythvideo.ImageCacheSize 50 REPLACEME
+mythvideo.sort_ignores_case 1 REPLACEME
+NetworkControlEnabled 1 REPLACEME
+NetworkControlPort 6546 REPLACEME
+NonID3FileNameFormat GENRE/ARTIST/ALBUM/TRACK_TITLE REPLACEME
+NoPromptOnExit 0 REPLACEME
+NoWhitespace 0 REPLACEME
+OnlyImportNewMusic 0 REPLACEME
+OSDCC708CapitalsFont FreeMono.ttf REPLACEME
+OSDCC708CapitalsItalicFont FreeMono.ttf REPLACEME
+OSDCC708CasualFont FreeMono.ttf REPLACEME
+OSDCC708CasualItalicFont FreeMono.ttf REPLACEME
+OSDCC708CursiveFont FreeMono.ttf REPLACEME
+OSDCC708CursiveItalicFont FreeMono.ttf REPLACEME
+OSDCC708DefaultFontType MonoSerif REPLACEME
+OSDCC708MonoSansSerifFont FreeMono.ttf REPLACEME
+OSDCC708MonoSansSerifItalicFont FreeMono.ttf REPLACEME
+OSDCC708MonoSerifFont FreeMono.ttf REPLACEME
+OSDCC708MonoSerifItalicFont FreeMono.ttf REPLACEME
+OSDCC708PropSansSerifFont FreeMono.ttf REPLACEME
+OSDCC708PropSansSerifItalicFont FreeMono.ttf REPLACEME
+OSDCC708PropSerifFont FreeMono.ttf REPLACEME
+OSDCC708PropSerifItalicFont FreeMono.ttf REPLACEME
+OSDCC708TextZoom 100 REPLACEME
+OSDCCFont FreeMono.ttf REPLACEME
+OSDFont FreeMono.ttf REPLACEME
+OSDGeneralTimeout 2 REPLACEME
+OSDNotifyTimeout 6 REPLACEME
+OSDProgramInfoTimeout 3 REPLACEME
+OSDTheme Gray-OSD REPLACEME
+OSDThemeFontSizeType default REPLACEME
+ParanoiaLevel Full REPLACEME
+PassThruOutputDevice Default REPLACEME
+PCMMixerVolume 70 REPLACEME
+PersistentBrowseMode 1 REPLACEME
+PIPLocation 0 REPLACEME
+PlaybackBoxStartInTitle 1 REPLACEME
+PlaybackExitPrompt 2 REPLACEME
+PlaybackPreview 1 REPLACEME
+PlaybackPreviewLowCPU 1 REPLACEME
+PlayBoxEpisodeSort Date REPLACEME
+PlayBoxOrdering 1 REPLACEME
+PlayBoxShading 0 REPLACEME
+PlayBoxTransparency 1 REPLACEME
+PlayMode none REPLACEME
+PostCDRipScript REPLACEME
+PreferredMPEG2Decoder ffmpeg REPLACEME
+PreviewFromBookmark 1 REPLACEME
+PVR350EPGAlphaValue 164 REPLACEME
+PVR350InternalAudioOnly 0 REPLACEME
+PVR350OutputEnable 0 REPLACEME
+PVR350VideoDev /dev/video16 REPLACEME
+QtFontBig 25 REPLACEME
+QtFontMedium 16 REPLACEME
+QtFontSmall 12 REPLACEME
+QueryInitialFilter 0 REPLACEME
+RandomTheme 0 REPLACEME
+RealtimePriority 1 REPLACEME
+RecordFilePrefix /data/media/video/recordings REPLACEME
+RememberRecGroup 1 REPLACEME
+RepeatMode all REPLACEME
+RunFrontendInWindow 0 REPLACEME
+SelChangeRecThreshold 16 REPLACEME
+SelectChangesChannel 1 REPLACEME
+ServiceMythWEB 0 REPLACEME
+ServiceNFS 0 REPLACEME
+ServiceSamba 0 REPLACEME
+SetupPinCodeRequired 0 REPLACEME
+ShortDateFormat M/d REPLACEME
+ShowGroupInfo 0 REPLACEME
+ShowWholeTree 1 REPLACEME
+SlideshowBackground REPLACEME
+SlideshowDelay 5 REPLACEME
+SlideshowOpenGLTransition none REPLACEME
+SlideshowOpenGLTransitionLength 2000 REPLACEME
+SlideshowTransition none REPLACEME
+SmartChannelChange 0 REPLACEME
+SmartForward 0 REPLACEME
+StickyKeys 1 REPLACEME
+Style Windows REPLACEME
+SubTitleCommand -sid %s REPLACEME
+TagSeparator - REPLACEME
+Theme basic-blue REPLACEME
+ThemeFontSizeType default REPLACEME
+ThemePainter qt REPLACEME
+TimeFormat h:mm AP REPLACEME
+timePerPage 4 REPLACEME
+TitlePlayCommand mplayer dvd://%t -dvd-device %d -fs -zoom -vo xv -aid %a -channels %c REPLACEME
+TranscodeCommand transcode REPLACEME
+TreeLevels splitartist artist album title REPLACEME
+TVVidModeForceAspect 0.0 REPLACEME
+TVVidModeForceAspect0 0.0 REPLACEME
+TVVidModeForceAspect1 0.0 REPLACEME
+TVVidModeForceAspect2 0.0 REPLACEME
+TVVidModeRefreshRate 0 REPLACEME
+TVVidModeRefreshRate0 0 REPLACEME
+TVVidModeRefreshRate1 0 REPLACEME
+TVVidModeRefreshRate2 0 REPLACEME
+TVVidModeResolution 640x480 REPLACEME
+TVVidModeResolution0 640x480 REPLACEME
+TVVidModeResolution1 640x480 REPLACEME
+TVVidModeResolution2 640x480 REPLACEME
+UDPNotifyPort 6948 REPLACEME
+UnknownCategory Unknown REPLACEME
+UnknownTitle Unknown REPLACEME
+upnp:UDN:urn:schemas-upnp-org:device:MediaServer:1 dee5b0fe-7087-4960-8794-428d3e01a61f REPLACEME
+UseArrowAccels 1 REPLACEME
+UseOutputPictureControls 1 REPLACEME
+UseVideoModes 0 REPLACEME
+UseVideoTimebase 0 REPLACEME
+UseVirtualKeyboard 1 REPLACEME
+VCDDeviceLocation /dev/cdrom REPLACEME
+VCDPlayerCommand mplayer vcd:// -cdrom-device %d -fs -zoom -vo xv REPLACEME
+VertScanPercentage 0 REPLACEME
+VideoAggressivePC 0 REPLACEME
+VideoArtworkDir /data/media/images/posters REPLACEME
+VideoBrowserNoDB 0 REPLACEME
+VideoDefaultParentalLevel 4 REPLACEME
+VideoGalleryAspectRatio 1 REPLACEME
+VideoGalleryColsPerPage 4 REPLACEME
+VideoGalleryNoDB 0 REPLACEME
+VideoGalleryRowsPerPage 3 REPLACEME
+VideoGallerySubtitle 1 REPLACEME
+VideoListUnknownFiletypes 1 REPLACEME
+VideoNewBrowsable 1 REPLACEME
+VideoDefaultPlayer Internal REPLACEME
+VideoStartupDir /data/media/video/movies REPLACEME
+VideoTreeLoadMetaData 1 REPLACEME
+VideoTreeNoDB 0 REPLACEME
+VidModeHeight0 0 REPLACEME
+VidModeHeight1 0 REPLACEME
+VidModeHeight2 0 REPLACEME
+VidModeWidth0 0 REPLACEME
+VidModeWidth1 0 REPLACEME
+VidModeWidth2 0 REPLACEME
+VisualCycleOnSongChange 0 REPLACEME
+VisualMode Random REPLACEME
+VisualModeDelay 0 REPLACEME
+VisualScaleHeight 1 REPLACEME
+VisualScaleWidth 1 REPLACEME
+WatchTVGuide 0 REPLACEME
+WebBrowserCommand /usr/local/bin/mythbrowser REPLACEME
+WebBrowserHideScrollbars 0 REPLACEME
+WebBrowserScrollMode 1 REPLACEME
+WebBrowserScrollSpeed 4 REPLACEME
+WebBrowserZoomLevel 20 REPLACEME
+XScanDisplacement 0 REPLACEME
+YScanDisplacement 0 REPLACEME
+HaltCommand sudo /sbin/poweroff REPLACEME
+RebootCommand sudo /sbin/reboot REPLACEME
diff --git a/abs/mv-core/MythVantage-config/templates/settings/default_2/keybindings.txt b/abs/mv-core/MythVantage-config/templates/settings/default_2/keybindings.txt
new file mode 100644
index 0000000..f82f2d2
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/settings/default_2/keybindings.txt
@@ -0,0 +1,209 @@
+context action description keylist hostname
+Music FFWD Fast forward PgDown REPLACEME
+Music STOP Stop playback O REPLACEME
+Music MUTE Mute |,\\\\,F9 REPLACEME
+Gallery SCROLLUP Scroll image up 2 REPLACEME
+Music VOLUMEDOWN Volume down [,{,F10 REPLACEME
+Music VOLUMEUP Volume up ],},F11 REPLACEME
+qt DELETE Delete D REPLACEME
+Music RWND Rewind PgUp REPLACEME
+qt EDIT Edit E REPLACEME
+Music PAUSE Pause/Start playback P REPLACEME
+Gallery RECENTER Recenter image 5 REPLACEME
+Gallery FULLSIZE Full-size (un-zoom) image 0 REPLACEME
+Gallery LOWRIGHT Go to the lower-right corner of the image PgDown REPLACEME
+Gallery SCROLLRIGHT Scroll image right 6 REPLACEME
+Gallery MENU Toggle activating menu in thumbnail view M REPLACEME
+Gallery SCROLLDOWN Scroll image down 8 REPLACEME
+Gallery ZOOMIN Zoom image in 9 REPLACEME
+Gallery UPLEFT Go to the upper-left corner of the image PgUp REPLACEME
+Gallery RANDOMSHOW Start Random Slideshow in thumbnail view R REPLACEME
+Gallery ROTLEFT Rotate image left 90 degrees [,1 REPLACEME
+Gallery SLIDESHOW Start Slideshow in thumbnail view S REPLACEME
+Gallery ROTRIGHT Rotate image right 90 degrees ],3 REPLACEME
+Gallery END Go to the last image in thumbnail view End REPLACEME
+Gallery HOME Go to the first image in thumbnail view Home REPLACEME
+Gallery SCROLLLEFT Scroll image left 4 REPLACEME
+Gallery PLAY Start/Stop Slideshow P REPLACEME
+NetFlix REMOVE Removes movie from queue D REPLACEME
+Archive TOGGLECUT Toggle use cut list state for selected program C REPLACEME
+Gallery ZOOMOUT Zoom image out 7 REPLACEME
+NetFlix MOVETOTOP Moves movie to top of queue 1 REPLACEME
+Global DOWN Down Arrow Down REPLACEME
+ITV Menu MENUTEXT Menu Text F7 REPLACEME
+ITV Menu TEXTEXIT Menu Exit F6 REPLACEME
+Global LEFT Left Arrow Left REPLACEME
+Global RIGHT Right Arrow Right REPLACEME
+Global UP Up Arrow Up REPLACEME
+Global MENU Pop-up menu M REPLACEME
+Global PREVVIEW Previous View Home REPLACEME
+Global ESCAPE Escape Esc REPLACEME
+Global PAGEUP Page Up PgUp REPLACEME
+Global SELECT Select Return,Enter,Space REPLACEME
+Global HELP Help F1 REPLACEME
+Global INFO More information I REPLACEME
+Global NEXTVIEW Next View End REPLACEME
+ITV Menu MENUBLUE Menu Blue F5 REPLACEME
+Global PAGEDOWN Page Down PgDown REPLACEME
+Global EJECT Eject Removable Media REPLACEME
+Global 3 3 3 REPLACEME
+Global 1 1 1 REPLACEME
+Global 6 6 6 REPLACEME
+Global 0 0 0 REPLACEME
+Global 2 2 2 REPLACEME
+Global 4 4 4 REPLACEME
+TV Frontend DELETE Delete Program D REPLACEME
+Global 8 8 8 REPLACEME
+Global 7 7 7 REPLACEME
+TV Frontend PAGEDOWN Page Down 9 REPLACEME
+TV Frontend PAGEUP Page Up 3 REPLACEME
+Global 5 5 5 REPLACEME
+TV Frontend CHANGERECGROUP Change Recording Group REPLACEME
+Global 9 9 9 REPLACEME
+Video END Go to the last video End REPLACEME
+Video INCPARENT Increase Parental Level ],},F11 REPLACEME
+Weather PAUSE Pause current page P REPLACEME
+TV Frontend TOGGLERECORD Toggle recording status of current program R REPLACEME
+Video BROWSE Change browsable in video manager B REPLACEME
+Welcome SHOWSETTINGS Show Mythshutdown settings F11 REPLACEME
+Video HOME Go to the first video Home REPLACEME
+Video FILTER Open video filter dialog F REPLACEME
+Welcome STARTXTERM Open an Xterm window F12 REPLACEME
+Music INCSEARCH Show incremental search dialog Ctrl+S REPLACEME
+Music BLANKSCR Blank screen 5 REPLACEME
+Video DELETE Delete video D REPLACEME
+Music THMBUP Increase rating 9 REPLACEME
+Music CYCLEVIS Cycle visualizer mode 6 REPLACEME
+Teletext Menu REVEAL Reveal hidden Text F8 REPLACEME
+Music INCSEARCHNEXT Incremental search find next match Ctrl+N REPLACEME
+TV Frontend PLAYBACK Play Program P REPLACEME
+News FORCERETRIEVE Force update news items M REPLACEME
+Video DECPARENT Decrease Parental Level [,{,F10 REPLACEME
+News RETRIEVENEWS Update news items I REPLACEME
+News CANCEL Cancel news item updating C REPLACEME
+Teletext Menu TOGGLEBACKGROUND Toggle Background F7 REPLACEME
+Teletext Menu MENUWHITE Menu White F6 REPLACEME
+ITV Menu MENURED Menu Red F2 REPLACEME
+ITV Menu MENUYELLOW Menu Yellow F4 REPLACEME
+ITV Menu MENUGREEN Menu Green F3 REPLACEME
+Teletext Menu PREVSUBPAGE Previous Subpage Left REPLACEME
+Teletext Menu MENUYELLOW Menu Yellow F4 REPLACEME
+Teletext Menu MENUGREEN Menu Green F3 REPLACEME
+Teletext Menu NEXTSUBPAGE Next Subpage Right REPLACEME
+Teletext Menu MENUBLUE Menu Blue F5 REPLACEME
+Teletext Menu TOGGLETT Toggle Teletext T REPLACEME
+Teletext Menu NEXTPAGE Next Page Down REPLACEME
+TV Editing LOADCOMMSKIP Load cut list from commercial skips Z,End REPLACEME
+TV Editing BIGJUMPREW Jump back 10x the normal amount ,,< REPLACEME
+TV Editing BIGJUMPFWD Jump forward 10x the normal amount >,. REPLACEME
+TV Playback JUMPTODVDROOTMENU Jump to the DVD Root Menu REPLACEME
+Teletext Menu MENURED Menu Red F2 REPLACEME
+TV Playback SIGNALMON Monitor Signal Quality F7 REPLACEME
+Teletext Menu PREVPAGE Previous Page Up REPLACEME
+TV Editing INVERTMAP Invert Begin/End cut points I REPLACEME
+TV Playback PLAY Play Ctrl+P REPLACEME
+TV Editing PREVCUT Jump to the previous cut point PgUp REPLACEME
+TV Editing NEXTCUT Jump to the next cut point PgDown REPLACEME
+TV Playback CYCLECOMMSKIPMODE Cycle Commercial Skip mode REPLACEME
+TV Playback TOGGLESLEEP Toggle the Sleep Timer F8 REPLACEME
+TV Playback JUMPREC Display menu of recorded programs to jump to REPLACEME
+TV Playback FINDER Show the Program Finder # REPLACEME
+TV Playback ADJUSTSTRETCH Turn on time stretch control A REPLACEME
+TV Editing CLEARMAP Clear editing cut points C,Q,Home REPLACEME
+TV Editing TOGGLEEDIT Exit out of Edit Mode E REPLACEME
+TV Playback TOGGLESTRETCH Toggle time stretch speed REPLACEME
+TV Playback TOGGLERECCONTROLS Recording picture adjustments for this recorder G REPLACEME
+TV Playback TOGGLEAUDIOSYNC Turn on audio sync adjustment controls REPLACEME
+TV Playback TOGGLEEDIT Start Edit Mode E REPLACEME
+TV Playback SPEEDINC Increase the playback speed U REPLACEME
+TV Playback STRETCHDEC Decrease time stretch speed REPLACEME
+TV Playback SPEEDDEC Decrease the playback speed J REPLACEME
+TV Playback TOGGLECHANCONTROLS Recording picture adjustments for this channel Ctrl+G REPLACEME
+TV Playback GUIDE Show the Program Guide S REPLACEME
+TV Playback JUMPPREV Jump to previously played recording REPLACEME
+TV Playback QUEUETRANSCODE Queue the current recording for transcoding X REPLACEME
+TV Playback STRETCHINC Increase time stretch speed REPLACEME
+TV Playback TOGGLEPICCONTROLS Playback picture adjustments F REPLACEME
+TV Playback PREVCC708 Previous ATSC CC track REPLACEME
+TV Playback NEXTCC708 Next ATSC CC track REPLACEME
+TV Playback NEXTCC Next of any captions REPLACEME
+TV Playback NEXTSCAN Next video scan overidemode REPLACEME
+TV Playback NEXTCC608 Next VBI CC track REPLACEME
+TV Playback PREVCC608 Previous VBI CC track REPLACEME
+TV Playback PREVAUDIO Previous audio track - REPLACEME
+TV Playback PREVSUBTITLE Previous subtitle track REPLACEME
+TV Playback NEXTSUBTITLE Next subtitle track REPLACEME
+TV Playback NEXTAUDIO Next audio track + REPLACEME
+TV Playback SELECTCC708_3 Display ATSC CC4 REPLACEME
+TV Playback SELECTCC708_0 Display ATSC CC1 REPLACEME
+TV Playback SELECTCC608_1 Display VBI CC2 REPLACEME
+TV Playback SELECTAUDIO_0 Play audio track 1 REPLACEME
+TV Playback SELECTCC608_2 Display VBI CC3 REPLACEME
+TV Playback TOGGLETTM Toggle Teletext Menu REPLACEME
+TV Playback SELECTSUBTITLE_1 Display subtitle 2 REPLACEME
+TV Playback SELECTCC608_3 Display VBI CC4 REPLACEME
+TV Playback SELECTCC708_1 Display ATSC CC2 REPLACEME
+TV Playback SELECTCC708_2 Display ATSC CC3 REPLACEME
+TV Playback SELECTAUDIO_1 Play audio track 2 REPLACEME
+TV Playback SELECTSUBTITLE_0 Display subtitle 1 REPLACEME
+TV Playback TOGGLETTC Toggle Teletext Captions REPLACEME
+TV Playback SELECTCC608_0 Display VBI CC1 REPLACEME
+TV Playback SWAPPIP Swap PiP/Main N REPLACEME
+TV Playback TOGGLEASPECT Toggle the display aspect ratio W REPLACEME
+TV Playback TOGGLECC708 Toggle ATSC CC REPLACEME
+TV Playback TOGGLECC608 Toggle VBI CC REPLACEME
+TV Playback TOGGLEPIPMODE Toggle Picture-in-Picture mode V REPLACEME
+TV Playback TOGGLEFAV Toggle the current channel as a favorite ? REPLACEME
+TV Playback TOGGLEPIPWINDOW Toggle active PiP window B REPLACEME
+TV Playback MUTE Mute |,\\\\,F9 REPLACEME
+TV Playback TOGGLEBROWSE Toggle channel browse mode O REPLACEME
+TV Playback TOGGLESUBTITLE Toggle Subtitles REPLACEME
+TV Playback VOLUMEUP Volume up ],},F11 REPLACEME
+TV Playback TOGGLECC Toggle any captions T REPLACEME
+TV Playback JUMPSTART Jump to the start of the recording. Ctrl+B REPLACEME
+TV Playback TOGGLERECORD Toggle recording status of current program R REPLACEME
+TV Playback SKIPCOMMERCIAL Skip Commercial Z,End REPLACEME
+TV Playback VOLUMEDOWN Volume down [,{,F10 REPLACEME
+TV Playback SWITCHCARDS Switch Capture Cards Y REPLACEME
+TV Playback SKIPCOMMBACK Skip Commercial (Reverse) Q,Home REPLACEME
+TV Playback TOGGLEINPUTS Toggle Inputs C REPLACEME
+TV Playback FFWDSTICKY Fast Forward (Sticky) or Forward one frame while paused >,. REPLACEME
+TV Playback JUMPFFWD Jump ahead PgDown REPLACEME
+TV Playback PREVCHAN Switch to the previous channel H REPLACEME
+TV Playback JUMPBKMRK Jump to bookmark K REPLACEME
+TV Playback RWNDSTICKY Rewind (Sticky) or Rewind one frame while paused ,,< REPLACEME
+TV Playback NEXTFAV Switch to the next favorite channel / REPLACEME
+TV Playback JUMPRWND Jump back PgUp REPLACEME
+TV Playback SEEKRWND Rewind Left REPLACEME
+TV Playback SEEKFFWD Fast Forward Right REPLACEME
+TV Playback CHANNELDOWN Channel down Down REPLACEME
+TV Playback CHANNELUP Channel up Up REPLACEME
+TV Playback ARBSEEK Arbitrary Seek * REPLACEME
+TV Playback DELETE Delete Program D REPLACEME
+TV Playback CLEAROSD Clear OSD Backspace REPLACEME
+TV Frontend DETAILS Show program details U REPLACEME
+TV Frontend CUSTOMEDIT Edit Custom Record Rule E REPLACEME
+TV Frontend UPCOMING List upcoming episodes O REPLACEME
+TV Frontend CHANUPDATE Switch channels without exiting guide in Live TV mode. X REPLACEME
+TV Frontend RANKDEC Decrease program or channel rank Left REPLACEME
+TV Frontend VIEWCARD Switch Capture Card view Y REPLACEME
+TV Playback PAUSE Pause P REPLACEME
+TV Frontend RANKINC Increase program or channel rank Right REPLACEME
+TV Frontend PAGERIGHT Page the program guide right >,. REPLACEME
+TV Frontend PAGELEFT Page the program guide left ,,< REPLACEME
+TV Frontend NEXTFAV Toggle showing all channels or just favorites in the program guide. / REPLACEME
+Gallery DELETE Delete marked images or current image if none are marked D REPLACEME
+TV Frontend DAYRIGHT Page the program guide forward one day End,1 REPLACEME
+Gallery MARK Mark image T REPLACEME
+Game TOGGLEFAV Toggle the current game as a favorite ?,/ REPLACEME
+TV Frontend TOGGLEFAV Toggle the current channel as a favorite ? REPLACEME
+TV Frontend DAYLEFT Page the program guide back one day Home,7 REPLACEME
+Music PREVTRACK Move to the previous track ,,<,Q,Home REPLACEME
+Game INCSEARCHNEXT Incremental search find next match Ctrl+N REPLACEME
+Music DELETE Delete track from playlist D REPLACEME
+Gallery INFO Toggle Showing Information about Image I REPLACEME
+Game INCSEARCH Show incremental search dialog Ctrl+S REPLACEME
+Music REFRESH Refresh music tree 8 REPLACEME
+Music NEXTTRACK Move to the next track >,.,Z,End REPLACEME
+Music FILTER Filter All My Music F REPLACEME
+Music THMBDOWN Decrease rating 7 REPLACEME
diff --git a/abs/mv-core/MythVantage-config/templates/settings/default_2/settings.txt b/abs/mv-core/MythVantage-config/templates/settings/default_2/settings.txt
new file mode 100644
index 0000000..106be04
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/settings/default_2/settings.txt
@@ -0,0 +1,320 @@
+value data hostname
+AC3PassThru 0 REPLACEME
+AggressiveSoundcardBuffer 0 REPLACEME
+AllowQuitShutdown 3 REPLACEME
+AltClearSavedPosition 1 REPLACEME
+AspectOverride 0 REPLACEME
+AudioNag 1 REPLACEME
+AudioOutputDevice /dev/dsp REPLACEME
+AutoCommercialSkip 2 REPLACEME
+AutoLookupCD 1 REPLACEME
+AutomaticSetWatched 0 REPLACEME
+AutoPlayCD 0 REPLACEME
+BackendServerPort 6543 REPLACEME
+BackendStatusPort 6544 REPLACEME
+CCBackground 0 REPLACEME
+CDBlankType fast REPLACEME
+CDCreateDir 1 REPLACEME
+CDDevice /dev/cdrom REPLACEME
+CDDiskSize 1 REPLACEME
+CDWriterEnabled 0 REPLACEME
+CDWriteSpeed 0 REPLACEME
+ChannelFormat <num> <sign> REPLACEME
+ChannelOrdering channum REPLACEME
+chanPerPage 5 REPLACEME
+ClearSavedPosition 1 REPLACEME
+CommNotifyAmount 0 REPLACEME
+CommRewindAmount 0 REPLACEME
+CustomFilters REPLACEME
+DateFormat ddd MMM d REPLACEME
+DecodeExtraAudio 1 REPLACEME
+Default MythVideo View 1 REPLACEME
+DefaultCCMode 0 REPLACEME
+DefaultRipQuality 0 REPLACEME
+DefaultTVChannel 3 REPLACEME
+Deinterlace 1 REPLACEME
+DeinterlaceFilter kerneldeint REPLACEME
+DisplayGroupDefaultView 0 REPLACEME
+DisplayGroupTitleSort 0 REPLACEME
+DisplayRecGroup Default REPLACEME
+DispRecGroupAsAllProg 0 REPLACEME
+DTSPassThru 0 REPLACEME
+DVDDeviceLocation /dev/dvd REPLACEME
+DVDOnInsertDVD 1 REPLACEME
+DVDRipLocation /data/media/tmp REPLACEME
+EjectCDAfterRipping 1 REPLACEME
+EnableMHEG 0 REPLACEME
+EnableXbox 0 REPLACEME
+EnableXbox 0 REPLACEME
+EncoderType ogg REPLACEME
+EndOfRecordingExitPrompt 1 REPLACEME
+EPGFillType 10 REPLACEME
+EPGScrollType 1 REPLACEME
+EPGShowCategoryColors 1 REPLACEME
+EPGShowCategoryText 1 REPLACEME
+EPGShowChannelIcon 1 REPLACEME
+EPGShowFavorites 0 REPLACEME
+ExactSeeking 0 REPLACEME
+FFRewReposTime 100 REPLACEME
+FFRewReverse 1 REPLACEME
+FilenameTemplate ARTIST/ALBUM/TRACK-TITLE REPLACEME
+GalleryDir /data/media/images REPLACEME
+GalleryImportDirs /mnt/cdrom:/mnt/camera REPLACEME
+GalleryMoviePlayerCmd mplayer -fs %s REPLACEME
+GalleryOverlayCaption 0 REPLACEME
+GalleryRecursiveSlideshow 1 REPLACEME
+GallerySortOrder 20 REPLACEME
+GalleryThumbnailLocation 1 REPLACEME
+GameAllTreeLevels system gamename REPLACEME
+GameFavTreeLevels gamename REPLACEME
+GeneratePreviewPixmaps 0 REPLACEME
+GuiHeight 0 REPLACEME
+GuiOffsetX 0 REPLACEME
+GuiOffsetY 0 REPLACEME
+GuiSizeForTV 0 REPLACEME
+GuiVidModeResolution 640x480 REPLACEME
+GuiWidth 0 REPLACEME
+HaltCommand halt REPLACEME
+HideMouseCursor 1 REPLACEME
+HorizScanPercentage 0 REPLACEME
+Ignore_ID3 0 REPLACEME
+IndividualMuteControl 0 REPLACEME
+IntelliLastPlayWeight 25 REPLACEME
+IntelliPlayCountWeight 25 REPLACEME
+IntelliRandomWeight 15 REPLACEME
+IntelliRatingWeight 35 REPLACEME
+ISO639Language0 eng REPLACEME
+ISO639Language1 eng REPLACEME
+JobAllowCommFlag 1 REPLACEME
+JobAllowTranscode 1 REPLACEME
+JobQueueCheckFrequency 60 REPLACEME
+JobQueueCPU 0 REPLACEME
+JobQueueMaxSimultaneousJobs 1 REPLACEME
+JobQueueWindowEnd 23:59 REPLACEME
+JobQueueWindowStart 00:00 REPLACEME
+KeyboardAccelerators 1 REPLACEME
+Language EN REPLACEME
+LastMusicPlaylistPush 0 REPLACEME
+LCDBacklightOn 1 REPLACEME
+LCDBigClock 0 REPLACEME
+LCDEnable 0 REPLACEME
+LCDHeartBeatOn 0 REPLACEME
+LCDKeyString ABCDEF REPLACEME
+LCDPopupTime 5 REPLACEME
+LCDShowChannel 1 REPLACEME
+LCDShowGeneric 1 REPLACEME
+LCDShowMenu 1 REPLACEME
+LCDShowMusic 1 REPLACEME
+LCDShowMusicItems ArtistTitle REPLACEME
+LCDShowRecStatus 0 REPLACEME
+LCDShowTime 1 REPLACEME
+LCDShowVolume 1 REPLACEME
+LircKeyPressedApp REPLACEME
+ListAsShuffled 0 REPLACEME
+LiveTVInAllPrograms 0 REPLACEME
+LogCleanDays 14 REPLACEME
+LogCleanDays 14 REPLACEME
+LogCleanEnabled 0 REPLACEME
+LogCleanEnabled 0 REPLACEME
+LogCleanMax 30 REPLACEME
+LogCleanMax 30 REPLACEME
+LogCleanPeriod 14 REPLACEME
+LogCleanPeriod 14 REPLACEME
+LogMaxCount 100 REPLACEME
+LogMaxCount 100 REPLACEME
+LogPrintLevel 8 REPLACEME
+LogPrintLevel 8 REPLACEME
+LongChannelFormat <num> <name> REPLACEME
+MasterMixerVolume 70 REPLACEME
+MenuTheme STB-menu REPLACEME
+MixerControl PCM REPLACEME
+MixerDevice /dev/mixer REPLACEME
+MonitorDrives 0 REPLACEME
+MovieDataCommandLine /usr/local/share/mythtv/mythvideo/scripts/imdb.pl -D REPLACEME
+MovieListCommandLine /usr/local/share/mythtv/mythvideo/scripts/imdb.pl -M tv=no;video=no REPLACEME
+MoviePosterCommandLine /usr/local/share/mythtv/mythvideo/scripts/imdb.pl -P REPLACEME
+Mp3UseVBR 0 REPLACEME
+MTDac3Flag 0 REPLACEME
+MTDConcurrentTranscodes 1 REPLACEME
+MTDLogFlag 0 REPLACEME
+MTDNiceLevel 20 REPLACEME
+MTDPort 2442 REPLACEME
+MTDRipSize 0 REPLACEME
+MTDxvidFlag 1 REPLACEME
+MusicAudioDevice default REPLACEME
+MusicLocation /data/media/audio REPLACEME
+MusicShowRatings 0 REPLACEME
+MythArchiveAlwaysUseMythTranscode 1 REPLACEME
+MythArchiveChapterMenuAR Video REPLACEME
+MythArchiveCopyRemoteFiles 1 REPLACEME
+MythArchiveDateFormat %a %b %d REPLACEME
+MythArchiveDvdauthorCmd dvdauthor REPLACEME
+MythArchiveDVDLocation /dev/dvd REPLACEME
+MythArchiveEncodeToAc3 1 REPLACEME
+MythArchiveFfmpegCmd ffmpeg REPLACEME
+MythArchiveFileFilter *.mpg *.mov *.avi *.mpeg *.nuv REPLACEME
+MythArchiveGrowisofsCmd growisofs REPLACEME
+MythArchiveMainMenuAR 16:9 REPLACEME
+MythArchiveMkisofsCmd mkisofs REPLACEME
+MythArchiveMpeg2encCmd mpeg2enc REPLACEME
+MythArchiveMplexCmd mplex REPLACEME
+MythArchivePng2yuvCmd png2yuv REPLACEME
+MythArchiveShareDir /usr/local/share/mythtv/mytharchive/ REPLACEME
+MythArchiveSpumuxCmd spumux REPLACEME
+MythArchiveTcrequantCmd tcrequant REPLACEME
+MythArchiveTempDir /data/media/tmp REPLACEME
+MythArchiveTimeFormat %I:%M %p REPLACEME
+MythArchiveUseFIFO 1 REPLACEME
+MythArchiveVideoFormat NTSC REPLACEME
+MythControlsVolume 1 REPLACEME
+mythdvd.DVDPlayerCommand Internal REPLACEME
+mythvideo.db_folder_view 1 REPLACEME
+mythvideo.ImageCacheSize 50 REPLACEME
+mythvideo.sort_ignores_case 1 REPLACEME
+NetworkControlEnabled 1 REPLACEME
+NetworkControlPort 6546 REPLACEME
+NonID3FileNameFormat GENRE/ARTIST/ALBUM/TRACK_TITLE REPLACEME
+NoPromptOnExit 0 REPLACEME
+NoWhitespace 0 REPLACEME
+OnlyImportNewMusic 0 REPLACEME
+OSDCC708CapitalsFont FreeMono.ttf REPLACEME
+OSDCC708CapitalsItalicFont FreeMono.ttf REPLACEME
+OSDCC708CasualFont FreeMono.ttf REPLACEME
+OSDCC708CasualItalicFont FreeMono.ttf REPLACEME
+OSDCC708CursiveFont FreeMono.ttf REPLACEME
+OSDCC708CursiveItalicFont FreeMono.ttf REPLACEME
+OSDCC708DefaultFontType MonoSerif REPLACEME
+OSDCC708MonoSansSerifFont FreeMono.ttf REPLACEME
+OSDCC708MonoSansSerifItalicFont FreeMono.ttf REPLACEME
+OSDCC708MonoSerifFont FreeMono.ttf REPLACEME
+OSDCC708MonoSerifItalicFont FreeMono.ttf REPLACEME
+OSDCC708PropSansSerifFont FreeMono.ttf REPLACEME
+OSDCC708PropSansSerifItalicFont FreeMono.ttf REPLACEME
+OSDCC708PropSerifFont FreeMono.ttf REPLACEME
+OSDCC708PropSerifItalicFont FreeMono.ttf REPLACEME
+OSDCC708TextZoom 100 REPLACEME
+OSDCCFont FreeMono.ttf REPLACEME
+OSDFont FreeMono.ttf REPLACEME
+OSDGeneralTimeout 2 REPLACEME
+OSDNotifyTimeout 6 REPLACEME
+OSDProgramInfoTimeout 3 REPLACEME
+OSDTheme Gray-OSD REPLACEME
+OSDThemeFontSizeType default REPLACEME
+ParanoiaLevel Full REPLACEME
+PassThruOutputDevice Default REPLACEME
+PCMMixerVolume 70 REPLACEME
+PersistentBrowseMode 1 REPLACEME
+PIPLocation 0 REPLACEME
+PlaybackBoxStartInTitle 1 REPLACEME
+PlaybackExitPrompt 2 REPLACEME
+PlaybackPreview 1 REPLACEME
+PlaybackPreviewLowCPU 1 REPLACEME
+PlayBoxEpisodeSort Date REPLACEME
+PlayBoxOrdering 1 REPLACEME
+PlayBoxShading 0 REPLACEME
+PlayBoxTransparency 1 REPLACEME
+PlayMode none REPLACEME
+PostCDRipScript REPLACEME
+PreferredMPEG2Decoder ffmpeg REPLACEME
+PreviewFromBookmark 1 REPLACEME
+PVR350EPGAlphaValue 164 REPLACEME
+PVR350InternalAudioOnly 0 REPLACEME
+PVR350OutputEnable 0 REPLACEME
+PVR350VideoDev /dev/video16 REPLACEME
+QtFontBig 25 REPLACEME
+QtFontMedium 16 REPLACEME
+QtFontSmall 12 REPLACEME
+QueryInitialFilter 0 REPLACEME
+RandomTheme 0 REPLACEME
+RealtimePriority 1 REPLACEME
+RecordFilePrefix /data/media/video/recordings REPLACEME
+RememberRecGroup 1 REPLACEME
+RepeatMode all REPLACEME
+RunFrontendInWindow 0 REPLACEME
+SelChangeRecThreshold 16 REPLACEME
+SelectChangesChannel 1 REPLACEME
+ServiceMythWEB 0 REPLACEME
+ServiceNFS 0 REPLACEME
+ServiceSamba 0 REPLACEME
+SetupPinCodeRequired 0 REPLACEME
+ShortDateFormat M/d REPLACEME
+ShowGroupInfo 0 REPLACEME
+ShowWholeTree 1 REPLACEME
+SlideshowBackground REPLACEME
+SlideshowDelay 5 REPLACEME
+SlideshowOpenGLTransition none REPLACEME
+SlideshowOpenGLTransitionLength 2000 REPLACEME
+SlideshowTransition none REPLACEME
+SmartChannelChange 0 REPLACEME
+SmartForward 0 REPLACEME
+StickyKeys 1 REPLACEME
+Style REPLACEME
+SubTitleCommand -sid %s REPLACEME
+TagSeparator - REPLACEME
+Theme basic-blue REPLACEME
+ThemeFontSizeType default REPLACEME
+ThemePainter qt REPLACEME
+TimeFormat h:mm AP REPLACEME
+timePerPage 4 REPLACEME
+TitlePlayCommand mplayer dvd://%t -dvd-device %d -fs -zoom -vo xv -aid %a -channels %c REPLACEME
+TranscodeCommand transcode REPLACEME
+TreeLevels splitartist artist album title REPLACEME
+TVVidModeForceAspect 0.0 REPLACEME
+TVVidModeForceAspect0 0.0 REPLACEME
+TVVidModeForceAspect1 0.0 REPLACEME
+TVVidModeForceAspect2 0.0 REPLACEME
+TVVidModeRefreshRate 0 REPLACEME
+TVVidModeRefreshRate0 0 REPLACEME
+TVVidModeRefreshRate1 0 REPLACEME
+TVVidModeRefreshRate2 0 REPLACEME
+TVVidModeResolution 640x480 REPLACEME
+TVVidModeResolution0 640x480 REPLACEME
+TVVidModeResolution1 640x480 REPLACEME
+TVVidModeResolution2 640x480 REPLACEME
+UDPNotifyPort 6948 REPLACEME
+UnknownCategory Unknown REPLACEME
+UnknownTitle Unknown REPLACEME
+upnp:UDN:urn:schemas-upnp-org:device:MediaServer:1 dee5b0fe-7087-4960-8794-428d3e01a61f REPLACEME
+UseArrowAccels 1 REPLACEME
+UseDHCP 1 REPLACEME
+UseOutputPictureControls 1 REPLACEME
+UseVideoModes 0 REPLACEME
+UseVideoTimebase 0 REPLACEME
+UseVirtualKeyboard 1 REPLACEME
+VCDDeviceLocation /dev/cdrom REPLACEME
+VCDPlayerCommand mplayer vcd:// -cdrom-device %d -fs -zoom -vo xv REPLACEME
+VertScanPercentage 0 REPLACEME
+VideoAggressivePC 0 REPLACEME
+VideoArtworkDir /data/media/images/posters REPLACEME
+VideoBrowserNoDB 0 REPLACEME
+VideoDefaultParentalLevel 4 REPLACEME
+VideoGalleryAspectRatio 1 REPLACEME
+VideoGalleryColsPerPage 4 REPLACEME
+VideoGalleryNoDB 0 REPLACEME
+VideoGalleryRowsPerPage 3 REPLACEME
+VideoGallerySubtitle 1 REPLACEME
+VideoDefaultPlayer /usr/bin/playmedia.sh VIDEO %s REPLACEME
+VideoListUnknownFiletypes 1 REPLACEME
+VideoNewBrowsable 1 REPLACEME
+VideoStartupDir /data/media/video/movies REPLACEME
+VideoTreeLoadMetaData 1 REPLACEME
+VideoTreeNoDB 0 REPLACEME
+VidModeHeight0 0 REPLACEME
+VidModeHeight1 0 REPLACEME
+VidModeHeight2 0 REPLACEME
+VidModeWidth0 0 REPLACEME
+VidModeWidth1 0 REPLACEME
+VidModeWidth2 0 REPLACEME
+VisualCycleOnSongChange 0 REPLACEME
+VisualMode Random REPLACEME
+VisualModeDelay 0 REPLACEME
+VisualScaleHeight 1 REPLACEME
+VisualScaleWidth 1 REPLACEME
+WatchTVGuide 0 REPLACEME
+WebBrowserCommand /usr/local/bin/mythbrowser REPLACEME
+WebBrowserHideScrollbars 0 REPLACEME
+WebBrowserScrollMode 1 REPLACEME
+WebBrowserScrollSpeed 4 REPLACEME
+WebBrowserZoomLevel 20 REPLACEME
+XScanDisplacement 0 REPLACEME
+YScanDisplacement 0 REPLACEME
diff --git a/abs/mv-core/MythVantage-config/templates/sources/mv-core b/abs/mv-core/MythVantage-config/templates/sources/mv-core
new file mode 100644
index 0000000..f9f6c97
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/sources/mv-core
@@ -0,0 +1,2 @@
+#Begin official list of mirrors
+Server = http://www.mythvantage.com/repo/mv-core
diff --git a/abs/mv-core/MythVantage-config/templates/sources/mv-core-testing b/abs/mv-core/MythVantage-config/templates/sources/mv-core-testing
new file mode 100644
index 0000000..1fce6ea
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/sources/mv-core-testing
@@ -0,0 +1,2 @@
+#Begin official list of mirrors
+Server = http://www.mythvantage.com/repo/mv-core-testing
diff --git a/abs/mv-core/MythVantage-config/templates/sources/mv-extra b/abs/mv-core/MythVantage-config/templates/sources/mv-extra
new file mode 100644
index 0000000..e13640f
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/sources/mv-extra
@@ -0,0 +1,2 @@
+#Begin official list of mirrors
+Server = http://www.mythvantage.com/repo/mv-extra
diff --git a/abs/mv-core/MythVantage-config/templates/sources/mv-extra-testing b/abs/mv-core/MythVantage-config/templates/sources/mv-extra-testing
new file mode 100644
index 0000000..c176add
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/sources/mv-extra-testing
@@ -0,0 +1,2 @@
+##Begin official list of mirrors
+Server = http://www.mythvantage.com/repo/mv-extra-testing
diff --git a/abs/mv-core/MythVantage-config/templates/sources/svc_pkg b/abs/mv-core/MythVantage-config/templates/sources/svc_pkg
new file mode 100644
index 0000000..c1efdcc
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/sources/svc_pkg
@@ -0,0 +1,3 @@
+[svc_pkg]
+Server = http://REPLACEME/repo/mirror/svc_pkg/os/i686
+
diff --git a/abs/mv-core/MythVantage-config/templates/transmit/Time_Warner_SA3250/lircd.conf b/abs/mv-core/MythVantage-config/templates/transmit/Time_Warner_SA3250/lircd.conf
new file mode 100755
index 0000000..51db997
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/transmit/Time_Warner_SA3250/lircd.conf
@@ -0,0 +1,413 @@
+#
+
+begin remote
+
+ name Time_Warner_SA3250
+ flags CONST_LENGTH|RAW_CODES
+ eps 30
+ aeps 100
+
+ ptrail 0
+ repeat 0 0
+ gap 100240
+ frequency 57600
+
+ begin raw_codes
+
+ name MUTE
+ 972 802 971 802 1887 778
+ 971 798 971 798 972 798
+ 971 798 972 798 971 1677
+ 972 802 1887 1656 992
+
+ name POWER
+ 3450 3229 894 2468 891 2468
+ 893 778 892 2468 891 2469
+ 917 2444 891 2468 892 2469
+ 891 779 892 778 918 752
+ 917 754 917 752 892 2471
+ 889 779 892 779 892 777
+ 892 779 892 777 868 2492
+ 892 2469 891 2470 890
+
+ name GUIDE
+ 3397 3285 890 2470 840 2519
+ 916 755 891 2470 839 2520
+ 891 780 891 2474 860 2495
+ 892 778 917 754 890 780
+ 891 781 864 804 917 2443
+ 865 805 891 779 866 2495
+ 864 805 892 779 891 2469
+ 865 2495 891 2469 866
+
+
+ name INFO
+ 3449 3231 918 2441 920 2440
+ 920 750 947 2414 920 2440
+ 920 750 894 777 919 750
+ 947 2413 921 750 919 750
+ 920 751 919 752 918 2441
+ 921 749 895 776 919 2441
+ 920 2440 920 2441 920 749
+ 921 2439 921 2440 921
+
+ name UP
+ 3396 3285 915 2444 919 2442
+ 918 752 916 2444 919 2441
+ 919 751 916 2445 919 751
+ 890 780 916 753 917 754
+ 942 729 889 780 916 2445
+ 919 751 915 756 914 2448
+ 916 752 916 2444 918 2442
+ 919 2441 918 2443 918
+
+ name DOWN
+ 3421 3261 890 2470 918 2442
+ 919 751 916 2446 917 2441
+ 919 2442 918 2442 918 752
+ 916 2444 919 751 890 780
+ 916 755 915 755 915 2445
+ 919 753 914 755 889 781
+ 889 781 916 2444 919 752
+ 889 2471 919 2441 918
+
+ name LEFT
+ 3427 3255 918 2441 924 2437
+ 920 750 918 2442 920 2441
+ 919 2440 921 2439 921 750
+ 919 751 944 726 919 752
+ 917 753 918 751 944 2417
+ 920 750 893 777 919 751
+ 919 752 918 2441 921 2440
+ 920 2440 920 2440 921
+
+ name RIGHT
+ 3424 3258 892 2466 921 2439
+ 896 774 920 2441 920 2440
+ 920 750 920 751 945 2414
+ 921 750 919 751 920 750
+ 919 752 919 751 919 2440
+ 921 750 918 752 918 2442
+ 920 2440 921 749 918 2443
+ 920 2440 920 2441 919
+
+ name SELECT
+ 3424 3257 944 2416 919 2442
+ 919 750 918 2442 920 2441
+ 919 751 943 727 918 2442
+ 920 2440 920 752 916 752
+ 969 702 917 753 892 2468
+ 919 751 892 778 918 2442
+ 924 2436 921 750 917 753
+ 918 2443 919 2441 919
+
+ name SETTINGS
+ 3402 3278 871 2491 921 2438
+ 921 749 922 2440 919 2441
+ 919 2440 921 749 921 750
+ 895 2465 920 2440 921 2440
+ 920 749 896 775 921 2439
+ 920 749 923 748 895 775
+ 922 2439 920 2440 920 749
+ 897 774 896 774 921
+
+ name EXIT
+ 3400 3279 896 2464 921 2439
+ 921 750 895 2465 921 2439
+ 921 749 898 772 896 2465
+ 920 2440 920 750 920 2441
+ 920 749 896 774 870 2491
+ 921 749 921 749 895 2465
+ 921 2440 920 749 922 748
+ 897 2464 920 750 896
+
+ name PGUP
+ 3425 3255 920 2440 920 2440
+ 921 749 895 2466 920 2440
+ 920 749 920 2441 896 2464
+ 921 749 919 2445 917 2440
+ 920 750 920 750 920 2441
+ 921 748 921 749 920 2440
+ 921 750 919 752 919 2440
+ 921 749 921 750 919
+
+ name PGDN
+ 3400 3281 921 2438 921 2441
+ 920 749 895 2465 896 2465
+ 920 2440 920 2440 920 2440
+ 921 749 896 2465 895 2465
+ 920 750 895 775 920 2440
+ 921 749 921 750 895 775
+ 896 774 896 774 921 2439
+ 921 749 921 751 894
+
+ name VOLUP
+ 995 778 1886 779 994 775
+ 995 777 993 774 996 774
+ 995 775 995 1654 1885 778
+ 995 775 995 774 995
+
+ name VOLDN
+ 996 778 971 802 1862 803
+ 970 799 996 774 995 774
+ 996 774 995 1654 1886 778
+ 996 773 971 1678 991
+
+ name CHUP
+ 3421 3259 916 2444 918 2443
+ 918 751 917 2444 919 2441
+ 919 2441 919 751 916 2444
+ 919 2441 919 2443 918 751
+ 941 729 916 755 917 2442
+ 919 752 916 754 891 778
+ 918 2444 918 751 916 754
+ 917 753 916 2445 919
+
+ name CHDN
+ 3421 3260 915 2445 918 2442
+ 919 751 891 2469 919 2441
+ 927 745 915 2444 919 2441
+ 919 2441 919 2442 918 752
+ 915 755 890 780 917 2443
+ 919 752 916 754 915 2445
+ 919 751 915 755 890 781
+ 914 756 916 2445 917
+
+ name A
+ 3425 3258 916 2442 920 2441
+ 919 751 918 2442 919 2441
+ 920 2440 920 2441 919 2441
+ 919 2441 920 750 917 2443
+ 920 751 917 752 919 2442
+ 920 750 918 753 917 753
+ 917 753 942 728 917 753
+ 918 2442 920 750 942
+
+ name B
+ 3398 3283 916 2443 892 2470
+ 892 778 892 2468 891 2475
+ 886 779 916 754 892 777
+ 892 778 919 2442 891 2468
+ 918 753 892 778 891 2469
+ 892 778 892 778 918 2443
+ 891 2469 892 2467 893 2469
+ 891 778 918 753 892
+
+ name C
+ 3396 3283 891 2469 892 2468
+ 892 778 917 2444 892 2468
+ 892 2469 891 778 892 779
+ 893 777 892 2468 892 2468
+ 918 752 893 777 892 2469
+ 892 778 892 778 867 802
+ 918 2444 917 2442 868 2492
+ 893 778 892 779 916
+
+ name 1
+ 3424 3257 890 2470 865 2495
+ 891 780 892 2468 865 2495
+ 892 777 891 780 892 779
+ 890 780 916 2444 865 805
+ 891 779 917 753 916 2445
+ 865 805 916 754 892 2469
+ 865 2494 916 2445 865 2495
+ 891 779 917 2443 866
+
+ name 2
+ 3422 3258 916 2444 865 2496
+ 889 782 915 2444 865 2495
+ 917 2444 839 830 891 780
+ 915 755 890 2470 864 806
+ 917 753 891 780 866 2495
+ 864 805 891 779 892 779
+ 865 2494 865 2496 891 2469
+ 865 805 891 2469 865
+
+ name 3
+ 3397 3284 916 2443 892 2468
+ 892 779 893 2467 892 2468
+ 917 753 892 2469 891 778
+ 893 778 891 2469 892 778
+ 918 753 890 779 893 2468
+ 891 779 893 778 891 2469
+ 892 777 893 2468 891 2468
+ 917 754 943 2417 892
+
+ name 4
+ 3421 3261 890 2470 839 2520
+ 917 753 891 2470 865 2495
+ 917 2443 865 2495 890 781
+ 891 778 891 2470 865 804
+ 895 776 892 779 891 2468
+ 866 805 917 753 943 727
+ 866 805 889 2471 865 2494
+ 892 780 916 2444 865
+
+ name 5
+ 3396 3282 920 2441 892 2467
+ 894 778 891 2468 892 2469
+ 891 780 866 802 893 2470
+ 890 779 918 2443 891 777
+ 892 779 918 752 892 2468
+ 892 779 918 752 918 2443
+ 891 2469 891 779 891 2469
+ 892 778 891 2468 893
+
+ name 6
+ 3396 3284 918 2442 866 2494
+ 892 778 917 2444 866 2494
+ 917 2444 865 804 893 2468
+ 890 780 916 2445 890 779
+ 892 779 891 778 918 2443
+ 891 778 892 779 892 779
+ 891 2468 892 778 919 2444
+ 889 778 893 2468 891
+
+ name 7
+ 3398 3282 893 2467 892 2468
+ 893 779 891 2469 891 2468
+ 919 752 892 2467 892 2469
+ 891 779 892 2468 892 777
+ 893 778 918 752 892 2468
+ 893 779 916 753 918 2442
+ 892 779 891 778 893 2468
+ 892 778 893 2467 892
+
+ name 8
+ 3448 3232 892 2468 866 2494
+ 892 779 892 2467 867 2494
+ 891 2469 866 2495 891 2469
+ 865 805 968 2394 864 804
+ 918 753 891 779 892 2468
+ 866 804 917 754 891 780
+ 916 752 917 754 892 2469
+ 865 804 893 2468 890
+
+ name 9
+ 3422 3258 891 2469 839 2521
+ 891 780 892 2468 824 2536
+ 916 754 916 755 891 779
+ 866 2494 839 2522 891 778
+ 892 778 890 781 915 2448
+ 837 831 891 779 890 2470
+ 837 2523 942 2418 838 832
+ 892 778 890 2471 839
+
+ name 0
+ 3398 3284 891 2469 890 2469
+ 893 779 891 2468 892 2468
+ 892 2468 892 778 892 779
+ 891 2469 892 2468 893 778
+ 892 777 893 777 893 2469
+ 891 778 892 779 868 802
+ 917 2443 892 2469 890 779
+ 891 779 892 2468 893
+
+ name LAST
+ 3422 3258 891 2471 916 2443
+ 891 780 891 2469 272 3088
+ 865 805 916 2445 308 3052
+ 890 2469 892 779 915 756
+ 889 781 889 780 890 2471
+ 890 779 889 781 891 2471
+ 272 1397 890 779 891 781
+ 890 2469 448 2912 917
+
+ name FAV
+ 3423 3257 918 2442 944 2417
+ 917 753 892 2469 890 2471
+ 324 3036 890 2469 379 289
+ 167 2525 891 2470 379 2981
+ 890 780 378 270 242 781
+ 866 806 889 2469 786 884
+ 891 779 891 779 892 779
+ 916 754 890 779 892 778
+ 891 2470 839
+
+ name REW
+ 3420 3258 916 2445 326 3033
+ 891 780 916 2443 891 2469
+ 916 2445 838 831 918 754
+ 890 2471 837 832 916 2444
+ 838 832 891 779 916 2445
+ 838 831 892 779 890 780
+ 892 2469 839 2520 891 780
+ 915 2444 836 836 890
+
+ name PLAY
+ 3448 3233 916 2444 891 2469
+ 917 753 892 2468 918 2443
+ 941 2420 891 2468 917 754
+ 915 755 914 2446 918 2443
+ 916 754 916 753 945 2416
+ 943 727 941 729 918 752
+ 917 753 919 2442 916 2444
+ 915 755 943 728 916
+
+ name FF
+ 3420 3259 917 2442 946 2415
+ 918 752 916 2445 918 2441
+ 943 728 917 753 942 728
+ 892 2470 864 806 889 2471
+ 865 805 918 752 916 2443
+ 944 726 892 779 891 2470
+ 891 2469 915 2445 917 753
+ 890 2471 222 1447 891
+
+ name PAUSE
+ 3421 3259 891 2470 787 2573
+ 890 780 916 2444 840 2520
+ 892 2468 864 806 917 2444
+ 839 831 890 780 891 779
+ 891 780 891 779 889 2471
+ 839 831 916 755 915 754
+ 892 2469 839 830 917 2444
+ 840 2521 891 2469 840
+
+ name STOP
+ 3398 3284 889 2471 325 3036
+ 891 779 890 2470 395 290
+ 140 2535 889 781 890 781
+ 889 2470 274 1397 891 2470
+ 272 3087 917 754 890 780
+ 889 2472 293 1377 890 779
+ 916 2444 448 2913 916 754
+ 866 2495 325 1344 891 779
+ 915
+
+ name REC
+ 3421 3258 917 2444 916 2444
+ 942 729 942 2420 889 2469
+ 992 2367 942 730 891 2468
+ 917 754 916 2443 892 2470
+ 892 777 916 754 892 2467
+ 943 730 916 754 891 779
+ 917 2442 917 754 943 2417
+ 918 753 915 754 892
+
+ name BYPASS
+ 3450 3231 891 2470 890 2470
+ 917 753 916 2447 913 2445
+ 273 3088 889 780 890 2470
+ 891 2469 916 755 890 780
+ 942 727 918 752 916 2444
+ 890 782 916 754 865 805
+ 891 2469 891 780 889 781
+ 891 2468 259 3102 866
+
+ name TV/VCR
+ 19945 3915 612 1873 560 1926
+ 560 1925 561 931 560 931
+ 587 905 559 931 563 931
+ 557 932 561 1925 585 908
+ 583 1901 559 931 586 905
+ 585 907 610 1875 561 1924
+ 561 1926 559 1926 535 1951
+ 559 1925 586 907 585 1899
+ 560 931 1048 7898 3707 3862
+ 587 1899 586 1899 586 1900
+ 559 932 586 908 323
+
+ end raw_codes
+
+ end remote
diff --git a/abs/mv-core/MythVantage-config/templates/xine.config.template b/abs/mv-core/MythVantage-config/templates/xine.config.template
new file mode 100644
index 0000000..966487f
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/xine.config.template
@@ -0,0 +1,754 @@
+#
+# xine config file
+#
+.version:2
+
+# Entries which are still set to their default values are commented out.
+# Remove the '#' at the beginning of the line, if you want to change them.
+
+# Enable deinterlacing by default
+# bool, default: 0
+#gui.deinterlace_by_default:0
+
+# Configuration experience level
+# { Beginner Advanced Expert Master of the known universe }, default: 0
+gui.experience_level:Expert
+
+# Enable OSD support
+# bool, default: 1
+#gui.osd_enabled:1
+
+# Dismiss OSD time (s)
+# numeric, default: 3
+#gui.osd_timeout:3
+
+# Ask user for playback with unsupported codec
+# bool, default: 0
+#gui.play_anyway:0
+
+# Automatically reload old playlist
+# bool, default: 0
+#gui.playlist_auto_reload:0
+
+# Audio visualization plugin
+# { oscope fftscope fftgraph goom }, default: 0
+gui.post_audio_plugin:fftgraph
+
+# gui skin theme
+# { Antares Centori KeramicRH8 cloudy xinetic }, default: 4
+gui.skin:KeramicRH8
+
+# Change xine's behavior for unexperienced user
+# bool, default: 1
+#gui.smart_mode:1
+
+# Snapshot location
+# string, default: /home/jams
+#gui.snapshotdir:/home/jams
+
+# Display splash screen
+# bool, default: 1
+gui.splash:0
+
+# Subtitle autoloading
+# bool, default: 1
+#gui.subtitle_autoload:1
+
+# Visual animation style
+# { None Post Plugin Stream Animation }, default: 1
+#gui.visual_anim:Post Plugin
+
+# Windows stacking (more)
+# bool, default: 0
+#gui.always_layer_above:0
+
+# Audio mixer control method
+# { Sound card Software }, default: 0
+#gui.audio_mixer_method:Sound card
+
+# Visiblility behavior of panel
+# bool, default: 0
+#gui.auto_panel_visibility:0
+
+# Visibility behavior of output window
+# bool, default: 0
+#gui.auto_video_output_visibility:0
+
+# Deinterlace plugin.
+# string, default: tvtime:method=LinearBlend,cheap_mode=1,pulldown=0,use_progressive_frame_flag=1
+#gui.deinterlace_plugin:tvtime:method=LinearBlend,cheap_mode=1,pulldown=0,use_progressive_frame_flag=1
+
+# Event sender behavior
+# bool, default: 1
+#gui.eventer_sticky:1
+
+# Windows stacking
+# bool, default: 0
+#gui.layer_above:0
+
+# Use unscaled OSD
+# bool, default: 1
+gui.osd_use_unscaled:0
+
+# Screensaver reset interval (s)
+# numeric, default: 10
+#gui.screensaver_timeout:10
+
+# Menu shortcut style
+# { Windows style Emacs style }, default: 0
+#gui.shortcut_style:Windows style
+
+# Stream information
+# bool, default: 0
+#gui.sinfo_auto_update:0
+
+# Skin Server Url
+# string, default: http://xine.sourceforge.net/skins/skins.slx
+#gui.skin_server_url:http://xine.sourceforge.net/skins/skins.slx
+
+# Chapter hopping
+# bool, default: 1
+#gui.skip_by_chapter:1
+
+# New stream sizes resize output window
+# bool, default: 1
+#gui.stream_resize_window:1
+
+# Tips timeout (ms)
+# numeric, default: 5000
+#gui.tips_timeout:5000
+
+# gui tips visibility
+# bool, default: 1
+#gui.tips_visible:1
+
+# Name of video display
+# string, default:
+#gui.video_display:
+
+# Synchronized X protocol (debug)
+# bool, default: 0
+#gui.xsynchronize:0
+
+# Double size for small streams (require stream_resize_window)
+# bool, default: 0
+#gui.zoom_small_stream:0
+
+# Logo mrl
+# string, default: file:/usr/share/xine/skins/xine-ui_logo.mpv
+#gui.logo_mrl:file:/usr/share/xine/skins/xine-ui_logo.mpv
+
+# use XVidModeExtension when switching to fullscreen
+# bool, default: 0
+#gui.use_xvidext:0
+
+# height for xinerama fullscreen (-8192 = autodetect)
+# numeric, default: -8192
+#gui.xinerama_fullscreen_height:-8192
+
+# width for xinerama fullscreen (-8192 = autodetect)
+# numeric, default: -8192
+#gui.xinerama_fullscreen_width:-8192
+
+# x coordinate for xinerama fullscreen (-8192 = autodetect)
+# numeric, default: -8192
+#gui.xinerama_fullscreen_x:-8192
+
+# y coordinate for xinerama fullscreen (-8192 = autodetect)
+# numeric, default: -8192
+#gui.xinerama_fullscreen_y:-8192
+
+# Screens to use in order to do a very fullscreen in xinerama mode. (example 0 2 3)
+# string, default: 0 1
+#gui.xinerama_use_screens:0 1
+
+# Amplification level
+# [0..200], default: 100
+#gui.amp_level:100
+
+# gui panel visibility
+# bool, default: 1
+gui.panel_visible:0
+
+# numeric, default: 200
+gui.panel_x:21
+
+# numeric, default: 100
+gui.panel_y:1050
+
+gui.control_x:186
+
+gui.control_y:46
+
+gui.dropped_frames_warning:0
+
+gui.eventer_x:1041
+
+gui.eventer_y:781
+
+gui.mrl_browser_x:23
+
+gui.mrl_browser_y:9
+
+gui.setup_x:717
+
+gui.setup_y:227
+
+gui.viewlog_x:200
+
+gui.viewlog_y:210
+
+# color specification yuv-opacity
+# string, default: 8080c0-f
+#gui.osdmenu.color_focused_button:8080c0-f
+
+# color specification yuv-opacity
+# string, default: 808080-f
+#gui.osdmenu.color_focused_slider:808080-f
+
+# color specification yuv-opacity
+# string, default: ff8080-f
+#gui.osdmenu.color_focused_slider_knob:ff8080-f
+
+# color specification yuv-opacity
+# string, default: 808080-f
+#gui.osdmenu.color_focused_text_border:808080-f
+
+# color specification yuv-opacity
+# string, default: ff8080-f
+#gui.osdmenu.color_focused_text_foreground:ff8080-f
+
+# color specification yuv-opacity
+# string, default: 0080c0-f
+#gui.osdmenu.color_label_border:0080c0-f
+
+# color specification yuv-opacity
+# string, default: c08080-f
+#gui.osdmenu.color_label_foreground:c08080-f
+
+# color specification yuv-opacity
+# string, default: 0080c0-f
+#gui.osdmenu.color_label_window:0080c0-f
+
+# color specification yuv-opacity
+# string, default: 008000-f
+#gui.osdmenu.color_slider:008000-f
+
+# color specification yuv-opacity
+# string, default: ffff00-f
+#gui.osdmenu.color_slider_knob:ffff00-f
+
+# color specification yuv-opacity
+# string, default: 008000-f
+#gui.osdmenu.color_text_border:008000-f
+
+# color specification yuv-opacity
+# string, default: ffff00-f
+#gui.osdmenu.color_text_foreground:ffff00-f
+
+# color specification yuv-opacity
+# string, default: 0080c0-f
+#gui.osdmenu.color_text_window:0080c0-f
+
+# directory a media in dvd device will be mounted
+# string, default: /dvd
+#gui.osdmenu.dvd_mountpoint:/dvd
+
+# palette (foreground-border-background) to use for subtitles and OSD
+# { white-black-transparent white-none-transparent white-none-translucid yellow-black-transparent }, default: 0
+#ui.osd.text_palette:white-black-transparent
+
+# audio driver to use
+# { auto null alsa oss esd file none }, default: 0
+audio.driver:oss
+
+# a/v sync method to use by OSS
+# { auto getodelay getoptr softsync probebuffer }, default: 0
+#audio.oss_sync_method:auto
+
+# use A/52 dynamic range compression
+# bool, default: 0
+#audio.a52.dynamic_range:0
+
+# downmix audio to 2 channel surround stereo
+# bool, default: 0
+#audio.a52.surround_downmix:0
+
+# A/52 volume
+# [0..200], default: 100
+#audio.a52.level:100
+
+# OSS audio device name
+# { auto /dev/dsp /dev/sound/dsp }, default: 0
+#audio.device.oss_device_name:auto
+
+# OSS audio device number, -1 for none
+# numeric, default: -1
+#audio.device.oss_device_number:-1
+
+# OSS audio mixer number, -1 for none
+# numeric, default: -1
+#audio.device.oss_mixer_number:-1
+
+audio.device.alsa_front_device:default
+
+# speaker arrangement
+# { Mono 1.0 Stereo 2.0 Headphones 2.0 Stereo 2.1 Surround 3.0 Surround 4.0 Surround 4.1 Surround 5.0 Surround 5.1 Surround 6.0 Surround 6.1 Surround 7.1 Pass Through }, default: 1
+#audio.output.speaker_arrangement:Stereo 2.0
+
+# offset for digital passthrough
+# numeric, default: 0
+#audio.synchronization.passthrough_offset:0
+
+# play audio even on slow/fast speeds
+# bool, default: 0
+#audio.synchronization.slow_fast_audio:0
+
+# method to sync audio and video
+# { metronom feedback resample }, default: 0
+#audio.synchronization.av_sync_method:metronom feedback
+
+# always resample to this rate (0 to disable)
+# numeric, default: 0
+#audio.synchronization.force_rate:0
+
+# enable resampling
+# { auto off on }, default: 0
+#audio.synchronization.resample_mode:auto
+
+# startup audio volume
+# [0..100], default: 50
+#audio.volume.mixer_volume:50
+
+# restore volume level at startup
+# bool, default: 0
+#audio.volume.remember_volume:0
+
+# video driver to use
+# { auto aadxr3 dxr3 xv opengl SyncFB xshm none xxmc sdl vidixfb vidix fb xvmc }, default: 0
+#video.driver:auto
+
+# pitch alignment workaround
+# bool, default: 0
+#video.device.xv_pitch_alignment:0
+
+# disable exact alpha blending of overlays
+# bool, default: 0
+#video.output.disable_exact_alphablend:0
+
+# disable all video scaling
+# bool, default: 0
+#video.output.disable_scaling:0
+
+# horizontal image position in the output window
+# [0..100], default: 50
+#video.output.horizontal_position:50
+
+# vertical image position in the output window
+# [0..100], default: 50
+#video.output.vertical_position:50
+
+# deinterlace method (deprecated)
+# { none bob weave greedy onefield onefield_xv linearblend }, default: 4
+video.output.xv_deinterlace_method:linearblend
+
+# MPEG-4 postprocessing quality
+# [0..6], default: 3
+#video.processing.ffmpeg_pp_quality:3
+
+# DXR3 device number
+# numeric, default: 0
+#dxr3.device_number:0
+
+# swap odd and even lines
+# bool, default: 0
+#dxr3.encoding.swap_fields:0
+
+# add black bars to correct aspect ratio
+# bool, default: 1
+#dxr3.encoding.add_bars:1
+
+# use smooth play mode for mpeg encoder playback
+# bool, default: 1
+#dxr3.encoding.alt_play_mode:1
+
+# device used for CD audio
+# string, default: /dev/cdrom
+#media.audio_cd.device:/dev/cdrom
+
+# slow down disc drive to this speed factor
+# numeric, default: 4
+#media.audio_cd.drive_slowdown:4
+
+# query CDDB
+# bool, default: 1
+#media.audio_cd.use_cddb:1
+
+# CDDB cache directory
+# string, default: /home/jams/.xine/cddbcache
+#media.audio_cd.cddb_cachedir:/home/jams/.xine/cddbcache
+
+# CDDB server port
+# numeric, default: 8880
+#media.audio_cd.cddb_port:8880
+
+# CDDB server name
+# string, default: freedb.freedb.org
+#media.audio_cd.cddb_server:freedb.freedb.org
+
+# directory for saving streams
+# string, default:
+#media.capture.save_dir:
+
+# Number of dvb card to use.
+# numeric, default: 0
+#media.dvb.adapter:0
+
+# Remember last DVB channel watched
+# bool, default: 1
+#media.dvb.remember_channel:1
+
+# Last DVB channel viewed
+# numeric, default: -1
+#media.dvb.last_channel:-1
+
+# default language for DVD playback
+# string, default: en
+#media.dvd.language:en
+
+# region the DVD player claims to be in (1 to 8)
+# numeric, default: 1
+#media.dvd.region:1
+
+# device used for DVD playback
+# string, default: /dev/dvd
+#media.dvd.device:/dev/dvd
+
+# raw device set up for DVD access
+# string, default: /dev/rdvd
+#media.dvd.raw_device:/dev/rdvd
+
+# read-ahead caching
+# bool, default: 1
+#media.dvd.readahead:1
+
+# CSS decryption method
+# { key disc title }, default: 0
+#media.dvd.css_decryption_method:key
+
+# play mode when title/chapter is given
+# { entire dvd one chapter }, default: 0
+#media.dvd.play_single_chapter:entire dvd
+
+# unit for seeking
+# { seek in program chain seek in program }, default: 0
+#media.dvd.seek_behaviour:seek in program chain
+
+# unit for the skip action
+# { skip program skip part skip title }, default: 0
+#media.dvd.skip_behaviour:skip program
+
+# path to the title key cache
+# string, default: /home/jams/.dvdcss/
+#media.dvd.css_cache_path:/home/jams/.dvdcss/
+
+# file browsing start location
+# string, default: /home/jams
+#media.files.origin_path:/home/jams
+
+# list hidden files
+# bool, default: 0
+#media.files.show_hidden_files:0
+
+# network bandwidth
+# { 14.4 Kbps (Modem) 19.2 Kbps (Modem) 28.8 Kbps (Modem) 33.6 Kbps (Modem) 34.4 Kbps (Modem) 57.6 Kbps (Modem) 115.2 Kbps (ISDN) 262.2 Kbps (Cable/DSL) 393.2 Kbps (Cable/DSL) 524.3 Kbps (Cable/DSL) 1.5 Mbps (T1) 10.5 Mbps (LAN) }, default: 10
+#media.network.bandwidth:1.5 Mbps (T1)
+
+# Timeout for network stream reading (in seconds)
+# numeric, default: 30
+#media.network.timeout:30
+
+# Domains for which to ignore the HTTP proxy
+# string, default:
+#media.network.http_no_proxy:
+
+# HTTP proxy host
+# string, default:
+#media.network.http_proxy_host:
+
+# HTTP proxy password
+# string, default:
+#media.network.http_proxy_password:
+
+# HTTP proxy port
+# numeric, default: 80
+#media.network.http_proxy_port:80
+
+# HTTP proxy username
+# string, default:
+#media.network.http_proxy_user:
+
+# MMS protocol
+# { auto TCP HTTP }, default: 0
+#media.network.mms_protocol:auto
+
+# automatically advance VCD track/entry
+# bool, default: 1
+#media.vcd.autoadvance:1
+
+# VCD default type to use on autoplay
+# { MPEG track entry segment playback-control item }, default: 3
+#media.vcd.autoplay:playback-control item
+
+# CD-ROM drive used for VCD when none given
+# string, default:
+#media.vcd.device:
+
+# VCD position slider range
+# { auto track entry }, default: 0
+#media.vcd.length_reporting:auto
+
+# show 'rejected' VCD LIDs
+# bool, default: 0
+#media.vcd.show_rejected:0
+
+# VCD format string for stream comment field
+# string, default: %P - Track %T
+#media.vcd.comment_format:%P - Track %T
+
+# VCD debug flag mask
+# numeric, default: 0
+#media.vcd.debug:0
+
+# VCD format string for display banner
+# string, default: %F - %I %N%L%S, disk %c of %C - %v %A
+#media.vcd.title_format:%F - %I %N%L%S, disk %c of %C - %v %A
+
+# v4l radio device
+# string, default: /dev/v4l/radio0
+#media.video4linux.radio_device:/dev/v4l/radio0
+
+# v4l video device
+# string, default: /dev/v4l/video0
+#media.video4linux.video_device:/dev/v4l/video0
+
+# device used for WinTV-PVR 250/350 (pvr plugin)
+# string, default: /dev/video0
+#media.wintv_pvr.device:/dev/video0
+
+# path to RealPlayer codecs
+# string, default: /usr/lib/win32
+#decoder.external.real_codecs_path:/usr/lib/win32
+
+# path to Win32 codecs
+# string, default: /usr/lib/win32
+#decoder.external.win32_codecs_path:/usr/lib/win32
+
+# subtitle size
+# { tiny small normal large very large huge }, default: 1
+#subtitles.separate.subtitle_size:small
+
+# subtitle vertical offset
+# numeric, default: 0
+#subtitles.separate.vertical_offset:0
+
+# font for subtitles
+# string, default: sans
+#subtitles.separate.font:sans
+
+# encoding of the subtitles
+# string, default: iso-8859-1
+#subtitles.separate.src_encoding:iso-8859-1
+
+# use unscaled OSD if possible
+# bool, default: 1
+#subtitles.separate.use_unscaled_osd:1
+
+# default duration of subtitle display in seconds
+# numeric, default: 4
+#subtitles.separate.timeout:4
+
+# frames per second to generate
+# numeric, default: 14
+#effects.goom.fps:14
+
+# goom image height
+# numeric, default: 240
+#effects.goom.height:240
+
+# goom image width
+# numeric, default: 320
+#effects.goom.width:320
+
+# colorspace conversion method
+# { Fast but not photorealistic Slow but looks better }, default: 0
+#effects.goom.csc_method:Fast but not photorealistic
+
+# number of audio buffers
+# numeric, default: 230
+#engine.buffers.audio_num_buffers:230
+
+# number of video buffers
+# numeric, default: 500
+#engine.buffers.video_num_buffers:500
+
+# default number of video frames
+# numeric, default: 15
+#engine.buffers.video_num_frames:15
+
+# priority for a/52 decoder
+# numeric, default: 0
+#engine.decoder_priorities.a/52:0
+
+# priority for bitplane decoder
+# numeric, default: 0
+#engine.decoder_priorities.bitplane:0
+
+# priority for dts decoder
+# numeric, default: 0
+#engine.decoder_priorities.dts:0
+
+# priority for dvaudio decoder
+# numeric, default: 0
+#engine.decoder_priorities.dvaudio:0
+
+# priority for dxr3-mpeg2 decoder
+# numeric, default: 0
+#engine.decoder_priorities.dxr3-mpeg2:0
+
+# priority for dxr3-spudec decoder
+# numeric, default: 0
+#engine.decoder_priorities.dxr3-spudec:0
+
+# priority for faad decoder
+# numeric, default: 0
+#engine.decoder_priorities.faad:0
+
+# priority for ffmpeg-wmv8 decoder
+# numeric, default: 0
+#engine.decoder_priorities.ffmpeg-wmv8:0
+
+# priority for ffmpeg-wmv9 decoder
+# numeric, default: 0
+#engine.decoder_priorities.ffmpeg-wmv9:0
+
+# priority for ffmpegaudio decoder
+# numeric, default: 0
+#engine.decoder_priorities.ffmpegaudio:0
+
+# priority for ffmpegvideo decoder
+# numeric, default: 0
+#engine.decoder_priorities.ffmpegvideo:0
+
+# priority for gdkpixbuf decoder
+# numeric, default: 0
+#engine.decoder_priorities.gdkpixbuf:0
+
+# priority for gsm610 decoder
+# numeric, default: 0
+#engine.decoder_priorities.gsm610:0
+
+# priority for image decoder
+# numeric, default: 0
+#engine.decoder_priorities.image:0
+
+# priority for mad decoder
+# numeric, default: 0
+#engine.decoder_priorities.mad:0
+
+# priority for mpc decoder
+# numeric, default: 0
+#engine.decoder_priorities.mpc:0
+
+# priority for mpeg2 decoder
+# numeric, default: 0
+#engine.decoder_priorities.mpeg2:0
+
+# priority for nsf decoder
+# numeric, default: 0
+#engine.decoder_priorities.nsf:0
+
+# priority for pcm decoder
+# numeric, default: 0
+#engine.decoder_priorities.pcm:0
+
+# priority for qta decoder
+# numeric, default: 0
+#engine.decoder_priorities.qta:0
+
+# priority for qtv decoder
+# numeric, default: 0
+#engine.decoder_priorities.qtv:0
+
+# priority for real decoder
+# numeric, default: 0
+#engine.decoder_priorities.real:0
+
+# priority for realadec decoder
+# numeric, default: 0
+#engine.decoder_priorities.realadec:0
+
+# priority for rgb decoder
+# numeric, default: 0
+#engine.decoder_priorities.rgb:0
+
+# priority for spucc decoder
+# numeric, default: 0
+#engine.decoder_priorities.spucc:0
+
+# priority for spucmml decoder
+# numeric, default: 0
+#engine.decoder_priorities.spucmml:0
+
+# priority for spudec decoder
+# numeric, default: 0
+#engine.decoder_priorities.spudec:0
+
+# priority for spudvb decoder
+# numeric, default: 0
+#engine.decoder_priorities.spudvb:0
+
+# priority for sputext decoder
+# numeric, default: 0
+#engine.decoder_priorities.sputext:0
+
+# priority for theora decoder
+# numeric, default: 0
+#engine.decoder_priorities.theora:0
+
+# priority for vorbis decoder
+# numeric, default: 0
+#engine.decoder_priorities.vorbis:0
+
+# priority for win32a decoder
+# numeric, default: 0
+#engine.decoder_priorities.win32a:0
+
+# priority for win32v decoder
+# numeric, default: 0
+#engine.decoder_priorities.win32v:0
+
+# priority for yuv decoder
+# numeric, default: 0
+#engine.decoder_priorities.yuv:0
+
+# media format detection strategy
+# { default reverse content extension }, default: 0
+#engine.demux.strategy:default
+
+# memcopy method used by xine
+# { probe libc kernel mmx mmxext sse }, default: 0
+engine.performance.memcpy_method:libc
+
+# percentage of discarded frames to tolerate
+# numeric, default: 10
+#engine.performance.warn_discarded_threshold:10
+
+# percentage of skipped frames to tolerate
+# numeric, default: 10
+#engine.performance.warn_skipped_threshold:10
+
+# allow implicit changes to the configuration (e.g. by MRL)
+# bool, default: 0
+#misc.implicit_config:0
+
diff --git a/abs/mv-core/MythVantage-config/templates/xorg/modeline.ATSC b/abs/mv-core/MythVantage-config/templates/xorg/modeline.ATSC
new file mode 100644
index 0000000..b2cd709
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/xorg/modeline.ATSC
@@ -0,0 +1,33 @@
+ModeLine "ATSC-720p60Hz" 74.160 1280 1352 1392 1648 720 725 730 750
+
+ModeLine "My480p" 28.6 720 744 768 900 480 484 492 525
+
+ModeLine "My540p" 37.26 960 976 1008 1104 540 542 548 563 +hsync +vsync
+
+ModeLine "My720p" 73.825 1280 1320 1368 1640 720 722 724 751 +hsync +vsync 74.086 MHz 44.955 kHz 5$
+
+ModeLine "My720p2" 73.825 1280 1320 1368 1640 720 722 724 751 +hsync +vsync 74.086 MHz 44.955 kHz 5$
+
+ModeLine "My1080i" 79.84 1920 2040 2200 2368 1080 1090 1106 1125 +vsync -hsync interlace
+
+ModeLine "My1080i2" 74.52 1920 1952 2016 2208 1080 1084 1096 1126 -hsync -vsync interlace
+
+Modeline "My1920x1080_i" 74.52 1920 1952 2016 2208 1080 1084 1096 1126 -HSync -VSync Interlace
+
+Modeline "in1080_i" 74.52 1760 1888 2096 2208 960 1012 1028 1126 -HSync -VSync Interlace
+
+Modeline "1920x1080_59i" 76.11 1920 1952 2240 2272 1080 1104 1110 1135 interlace
+
+Modeline "1920x1080_60i" 77.60 1920 1952 2240 2272 1080 1104 1110 1135 interlace
+
+Modeline "1920x1080_61i" 79.08 1920 1952 2248 2280 1080 1104 1110 1135 interlace
+
+Modeline "1776x1000_60i" 65.91 1776 1808 2056 2088 1000 1023 1028 1051 interlace
+
+Modeline "1920x1080_30" 77.60 1920 1952 2240 2272 1080 1104 1110 1135
+
+Modeline "1760x960_60i" 62.39 1760 1792 2024 2056 960 982 987 1009 interlace
+
+Modeline "1280x720_60.00" 74.25 1280 1352 1432 1648 720 725 730 750 -hsync -vsync
+
+Modeline "1280x720_50.00" 74.25 1280 1360 1400 1984 720 725 730 750 -hsync -vsync
diff --git a/abs/mv-core/MythVantage-config/templates/xorg/modeline.DVD b/abs/mv-core/MythVantage-config/templates/xorg/modeline.DVD
new file mode 100644
index 0000000..9e846d0
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/xorg/modeline.DVD
@@ -0,0 +1,9 @@
+#DVD-NativeModes
+ModeLine "NTSC-DVD-59.94i" 13.5 720 736 800 858 480 484 492 525 Interlace
+ModeLine "NTSC-DVD-60i" 13.514 720 736 800 858 480 484 492 525 Interlace
+ModeLine "NTSC-DVD-59.94p" 27.0 720 736 800 858 480 484 492 525
+ModeLine "NTSC-DVD-60p" 27.027 720 736 800 858 480 484 492 525
+ModeLine "NTSC-DVD-71.93p" 32.4 720 736 800 858 480 484 492 525
+ModeLine "NTSC-DVD-72p" 32.432 720 736 800 858 480 484 492 525
+ModeLine "NTSC-DVD-119.88p" 54.0 720 736 800 858 480 484 492 525
+ModeLine "NTSC-DVD-120p" 54.054 720 736 800 858 480 484 492 525
diff --git a/abs/mv-core/MythVantage-config/templates/xorg/modeline.NTSC b/abs/mv-core/MythVantage-config/templates/xorg/modeline.NTSC
new file mode 100644
index 0000000..5536c1b
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/xorg/modeline.NTSC
@@ -0,0 +1,10 @@
+#Analog-RegularModes
+ModeLine "NTSCspec-59.94i" 14.318 768 784 848 910 483 484 492 525 Interlace
+ModeLine "NTSCspec-59.94p" 28.636 768 784 848 910 483 484 492 525
+ModeLine "Laserdisk-59.94i" 567 583 647 684 483 484 492 525 Interlace
+ModeLine "Laserdisk-59.94p" 567 583 647 684 483 484 492 525
+ModeLine "Broadcast-59.94i" 483 484 492 525 Interlace
+ModeLine "Broadcast-59.94p" 483 484 492 525
+ModeLine "VHS-59.94i" 483 484 492 525 Interlace
+ModeLine "VHS-59.94p" 483 484 492 525
+
diff --git a/abs/mv-core/MythVantage-config/templates/xorg/modeline.VESA b/abs/mv-core/MythVantage-config/templates/xorg/modeline.VESA
new file mode 100644
index 0000000..a026f64
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/xorg/modeline.VESA
@@ -0,0 +1,163 @@
+# 640x350 @ 85Hz (VESA) hsync: 37.9kHz
+ModeLine "640x350" 31.5 640 672 736 832 350 382 385 445 +hsync -vsync
+
+# 640x400 @ 85Hz (VESA) hsync: 37.9kHz
+ModeLine "640x400" 31.5 640 672 736 832 400 401 404 445 -hsync +vsync
+
+# 720x400 @ 85Hz (VESA) hsync: 37.9kHz
+ModeLine "720x400" 35.5 720 756 828 936 400 401 404 446 -hsync +vsync
+
+# 640x480 @ 60Hz (Industry standard) hsync: 31.5kHz
+ModeLine "640x480" 25.2 640 656 752 800 480 490 492 525 -hsync -vsync
+
+# 640x480 @ 72Hz (VESA) hsync: 37.9kHz
+ModeLine "640x480" 31.5 640 664 704 832 480 489 491 520 -hsync -vsync
+
+# 640x480 @ 75Hz (VESA) hsync: 37.5kHz
+ModeLine "640x480" 31.5 640 656 720 840 480 481 484 500 -hsync -vsync
+
+# 640x480 @ 85Hz (VESA) hsync: 43.3kHz
+ModeLine "640x480" 36.0 640 696 752 832 480 481 484 509 -hsync -vsync
+
+# 800x600 @ 56Hz (VESA) hsync: 35.2kHz
+ModeLine "800x600" 36.0 800 824 896 1024 600 601 603 625 +hsync +vsync
+
+# 800x600 @ 60Hz (VESA) hsync: 37.9kHz
+ModeLine "800x600" 40.0 800 840 968 1056 600 601 605 628 +hsync +vsync
+
+# 800x600 @ 72Hz (VESA) hsync: 48.1kHz
+ModeLine "800x600" 50.0 800 856 976 1040 600 637 643 666 +hsync +vsync
+
+# 800x600 @ 75Hz (VESA) hsync: 46.9kHz
+ModeLine "800x600" 49.5 800 816 896 1056 600 601 604 625 +hsync +vsync
+
+# 800x600 @ 85Hz (VESA) hsync: 53.7kHz
+ModeLine "800x600" 56.3 800 832 896 1048 600 601 604 631 +hsync +vsync
+
+# 1024x768i @ 43Hz (industry standard) hsync: 35.5kHz
+ModeLine "1024x768" 44.9 1024 1032 1208 1264 768 768 776 817 +hsync +vsync Interlace
+
+# 1024x768 @ 60Hz (VESA) hsync: 48.4kHz
+ModeLine "1024x768" 65.0 1024 1048 1184 1344 768 771 777 806 -hsync -vsync
+
+# 1024x768 @ 70Hz (VESA) hsync: 56.5kHz
+ModeLine "1024x768" 75.0 1024 1048 1184 1328 768 771 777 806 -hsync -vsync
+
+# 1024x768 @ 75Hz (VESA) hsync: 60.0kHz
+ModeLine "1024x768" 78.8 1024 1040 1136 1312 768 769 772 800 +hsync +vsync
+
+# 1024x768 @ 85Hz (VESA) hsync: 68.7kHz
+ModeLine "1024x768" 94.5 1024 1072 1168 1376 768 769 772 808 +hsync +vsync
+
+# 1152x864 @ 75Hz (VESA) hsync: 67.5kHz
+ModeLine "1152x864" 108.0 1152 1216 1344 1600 864 865 868 900 +hsync +vsync
+
+# 1280x960 @ 60Hz (VESA) hsync: 60.0kHz
+ModeLine "1280x960" 108.0 1280 1376 1488 1800 960 961 964 1000 +hsync +vsync
+
+# 1280x960 @ 85Hz (VESA) hsync: 85.9kHz
+ModeLine "1280x960" 148.5 1280 1344 1504 1728 960 961 964 1011 +hsync +vsync
+
+# 1280x1024 @ 60Hz (VESA) hsync: 64.0kHz
+ModeLine "1280x1024" 108.0 1280 1328 1440 1688 1024 1025 1028 1066 +hsync +vsync
+
+# 1280x1024 @ 75Hz (VESA) hsync: 80.0kHz
+ModeLine "1280x1024" 135.0 1280 1296 1440 1688 1024 1025 1028 1066 +hsync +vsync
+
+# 1280x1024 @ 85Hz (VESA) hsync: 91.1kHz
+ModeLine "1280x1024" 157.5 1280 1344 1504 1728 1024 1025 1028 1072 +hsync +vsync
+
+# 1600x1200 @ 60Hz (VESA) hsync: 75.0kHz
+ModeLine "1600x1200" 162.0 1600 1664 1856 2160 1200 1201 1204 1250 +hsync +vsync
+# 1600x1200 @ 65Hz (VESA) hsync: 81.3kHz
+ModeLine "1600x1200" 175.5 1600 1664 1856 2160 1200 1201 1204 1250 +hsync +vsync
+
+# 1600x1200 @ 70Hz (VESA) hsync: 87.5kHz
+ModeLine "1600x1200" 189.0 1600 1664 1856 2160 1200 1201 1204 1250 +hsync +vsync
+
+# 1600x1200 @ 75Hz (VESA) hsync: 93.8kHz
+ModeLine "1600x1200" 202.5 1600 1664 1856 2160 1200 1201 1204 1250 +hsync +vsync
+
+# 1600x1200 @ 85Hz (VESA) hsync: 106.3kHz
+ModeLine "1600x1200" 229.5 1600 1664 1856 2160 1200 1201 1204 1250 +hsync +vsync
+
+# 1792x1344 @ 60Hz (VESA) hsync: 83.6kHz
+ModeLine "1792x1344" 204.8 1792 1920 2120 2448 1344 1345 1348 1394 -hsync +vsync
+
+# 1792x1344 @ 75Hz (VESA) hsync: 106.3kHz
+ModeLine "1792x1344" 261.0 1792 1888 2104 2456 1344 1345 1348 1417 -hsync +vsync
+
+# 1856x1392 @ 60Hz (VESA) hsync: 86.3kHz
+ModeLine "1856x1392" 218.3 1856 1952 2176 2528 1392 1393 1396 1439 -hsync +vsync
+
+# 1856x1392 @ 75Hz (VESA) hsync: 112.5kHz
+ModeLine "1856x1392" 288.0 1856 1984 2208 2560 1392 1393 1396 1500 -hsync +vsync
+
+# 1920x1440 @ 60Hz (VESA) hsync: 90.0kHz
+ModeLine "1920x1440" 234.0 1920 2048 2256 2600 1440 1441 1444 1500 -hsync +vsync
+
+# 1920x1440 @ 75Hz (VESA) hsync: 112.5kHz
+ModeLine "1920x1440" 297.0 1920 2064 2288 2640 1440 1441 1444 1500 -hsync +vsync
+
+# 640x480 @ 100.00 Hz (GTF) hsync: 50.90 kHz; pclk: 43.16 MHz
+ModeLine "640x480" 43.16 640 680 744 848 480 481 484 509 -HSync +Vsync
+
+# 768x576 @ 60.00 Hz (GTF) hsync: 35.82 kHz; pclk: 34.96 MHz
+ModeLine "768x576" 34.96 768 792 872 976 576 577 580 597 -HSync +Vsync
+
+# 768x576 @ 72.00 Hz (GTF) hsync: 43.27 kHz; pclk: 42.93 MHz
+ModeLine "768x576" 42.93 768 800 880 992 576 577 580 601 -HSync +Vsync
+
+# 768x576 @ 75.00 Hz (GTF) hsync: 45.15 kHz; pclk: 45.51 MHz
+ModeLine "768x576" 45.51 768 808 888 1008 576 577 580 602 -HSync +Vsync
+
+# 768x576 @ 85.00 Hz (GTF) hsync: 51.42 kHz; pclk: 51.84 MHz
+ModeLine "768x576" 51.84 768 808 888 1008 576 577 580 605 -HSync +Vsync
+
+# 768x576 @ 100.00 Hz (GTF) hsync: 61.10 kHz; pclk: 62.57 MHz
+ModeLine "768x576" 62.57 768 816 896 1024 576 577 580 611 -HSync +Vsync
+
+# 800x600 @ 100.00 Hz (GTF) hsync: 63.60 kHz; pclk: 68.18 MHz
+ModeLine "800x600" 68.18 800 848 936 1072 600 601 604 636 -HSync +Vsync
+
+# 1024x768 @ 100.00 Hz (GTF) hsync: 81.40 kHz; pclk: 113.31 MHz
+ModeLine "1024x768" 113.31 1024 1096 1208 1392 768 769 772 814 -HSync +Vsync
+
+# 1152x864 @ 60.00 Hz (GTF) hsync: 53.70 kHz; pclk: 81.62 MHz
+ModeLine "1152x864" 81.62 1152 1216 1336 1520 864 865 868 895 -HSync +Vsync
+
+# 1152x864 @ 85.00 Hz (GTF) hsync: 77.10 kHz; pclk: 119.65 MHz
+ModeLine "1152x864" 119.65 1152 1224 1352 1552 864 865 868 907 -HSync +Vsync
+
+# 1152x864 @ 100.00 Hz (GTF) hsync: 91.50 kHz; pclk: 143.47 MHz
+ModeLine "1152x864" 143.47 1152 1232 1360 1568 864 865 868 915 -HSync +Vsync
+
+# 1280x960 @ 72.00 Hz (GTF) hsync: 72.07 kHz; pclk: 124.54 MHz
+ModeLine "1280x960" 124.54 1280 1368 1504 1728 960 961 964 1001 -HSync +Vsync
+
+# 1280x960 @ 75.00 Hz (GTF) hsync: 75.15 kHz; pclk: 129.86 MHz
+ModeLine "1280x960" 129.86 1280 1368 1504 1728 960 961 964 1002 -HSync +Vsync
+
+# 1280x960 @ 100.00 Hz (GTF) hsync: 101.70 kHz; pclk: 178.99 MHz
+ModeLine "1280x960" 178.99 1280 1376 1520 1760 960 961 964 1017 -HSync +Vsync
+
+# 1280x1024 @ 100.00 Hz (GTF) hsync: 108.50 kHz; pclk: 190.96 MHz
+ModeLine "1280x1024" 190.96 1280 1376 1520 1760 1024 1025 1028 1085 -HSync +Vsync
+
+# 1400x1050 @ 60.00 Hz (GTF) hsync: 65.22 kHz; pclk: 122.61 MHz
+ModeLine "1400x1050" 122.61 1400 1488 1640 1880 1050 1051 1054 1087 -HSync +Vsync
+
+# 1400x1050 @ 72.00 Hz (GTF) hsync: 78.77 kHz; pclk: 149.34 MHz
+ModeLine "1400x1050" 149.34 1400 1496 1648 1896 1050 1051 1054 1094 -HSync +Vsync
+
+# 1400x1050 @ 75.00 Hz (GTF) hsync: 82.20 kHz; pclk: 155.85 MHz
+ModeLine "1400x1050" 155.85 1400 1496 1648 1896 1050 1051 1054 1096 -HSync +Vsync
+
+# 1400x1050 @ 85.00 Hz (GTF) hsync: 93.76 kHz; pclk: 179.26 MHz
+ModeLine "1400x1050" 179.26 1400 1504 1656 1912 1050 1051 1054 1103 -HSync +Vsync
+
+# 1400x1050 @ 100.00 Hz (GTF) hsync: 111.20 kHz; pclk: 214.39 MHz
+ModeLine "1400x1050" 214.39 1400 1512 1664 1928 1050 1051 1054 1112 -HSync +Vsync
+
+# 1600x1200 @ 100.00 Hz (GTF) hsync: 127.10 kHz; pclk: 280.64 MHz
+ModeLine "1600x1200" 280.64 1600 1728 1904 2208 1200 1201 1204 1271 -HSync +Vsync
diff --git a/abs/mv-core/MythVantage-config/templates/xorg/modeline.custom b/abs/mv-core/MythVantage-config/templates/xorg/modeline.custom
new file mode 100644
index 0000000..ca6d678
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/xorg/modeline.custom
@@ -0,0 +1 @@
+ModeLine "CustomModeline" 14.318 768 784 848 910 483 484 492 525 Interlace
diff --git a/abs/mv-core/MythVantage-config/templates/xorg/xorg.conf.ati b/abs/mv-core/MythVantage-config/templates/xorg/xorg.conf.ati
new file mode 100644
index 0000000..c6d9249
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/xorg/xorg.conf.ati
@@ -0,0 +1,94 @@
+Section "ServerLayout"
+ Identifier "X.org Configured"
+ Screen 0 "aticonfig-Screen[0]" 0 0
+ InputDevice "Mouse0" "CorePointer"
+ InputDevice "Keyboard0" "CoreKeyboard"
+EndSection
+
+Section "Files"
+ RgbPath "/usr/share/X11/rgb"
+ ModulePath "/usr/lib/xorg/modules"
+ FontPath "/usr/share/fonts/misc"
+ FontPath "/usr/share/fonts/75dpi"
+ FontPath "/usr/share/fonts/100dpi"
+ FontPath "/usr/share/fonts/TTF"
+ FontPath "/usr/share/fonts/Type1"
+EndSection
+
+Section "Module"
+ Load "xtrap"
+ Load "dbe"
+ Load "record"
+ Load "extmod"
+ Load "dri"
+ Load "type1"
+ Load "freetype"
+EndSection
+
+Section "InputDevice"
+ Identifier "Keyboard0"
+ Driver "kbd"
+EndSection
+
+Section "InputDevice"
+ Identifier "Mouse0"
+ Driver "mouse"
+ Option "Protocol" "auto"
+ Option "Device" "/dev/input/mice"
+ Option "ZAxisMapping" "4 5 6 7"
+EndSection
+
+Section "Monitor"
+ Identifier "Monitor0"
+ VendorName "Monitor Vendor"
+ ModelName "Monitor Model"
+EndSection
+
+Section "Monitor"
+ Identifier "aticonfig-Monitor[0]"
+# HorizSync
+# VertRefresh
+ Option "VendorName" "ATI Proprietary Driver"
+ Option "ModelName" "Generic Autodetecting Monitor"
+ Option "DPMS" "true"
+EndSection
+
+Section "Device"
+
+ ### Available Driver options are:-
+ ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
+ ### <string>: "String", <freq>: "<f> Hz/kHz/MHz"
+ ### [arg]: arg optional
+ #Option "ShadowFB" # [<bool>]
+ #Option "DefaultRefresh" # [<bool>]
+ #Option "ModeSetClearScreen" # [<bool>]
+ Identifier "Card0"
+ Driver "vesa"
+ VendorName "ATI Technologies Inc"
+ BoardName "RV370 5B60 [Radeon X300 (PCIE)]"
+ BusID "PCI:1:0:0"
+EndSection
+
+Section "Device"
+ Identifier "aticonfig-Device[0]"
+ Driver "fglrx"
+#INSERT HERE
+
+# Option "ForceMonitors" "tv,nocrt1,notmds1"
+# Option "TVStandard" "SCART"
+# Option "TVFormat" "PAL-B"
+EndSection
+
+
+Section "Screen"
+ Identifier "aticonfig-Screen[0]"
+ Device "aticonfig-Device[0]"
+ Monitor "aticonfig-Monitor[0]"
+ DefaultDepth 24
+ SubSection "Display"
+ Viewport 0 0
+ Depth 24
+ Modes "640x480"
+ EndSubSection
+EndSection
+
diff --git a/abs/mv-core/MythVantage-config/templates/xorg/xorg.conf.intel b/abs/mv-core/MythVantage-config/templates/xorg/xorg.conf.intel
new file mode 100644
index 0000000..a4d258a
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/xorg/xorg.conf.intel
@@ -0,0 +1,148 @@
+Section "ServerLayout"
+ Identifier "Xorg Configured"
+ Screen 0 "Screen0" 0 0
+ InputDevice "Keyboard0" "CoreKeyboard"
+ InputDevice "PS/2 Mouse" "CorePointer"
+# Serial Mouse not detected
+# USB Mouse not detected
+EndSection
+
+Section "ServerFlags"
+ Option "AllowMouseOpenFail" "true"
+
+EndSection
+
+Section "Files"
+ RgbPath "/usr/share/X11/rgb"
+ ModulePath "/usr/lib/xorg/modules"
+ FontPath "/usr/share/fonts/misc:unscaled"
+ FontPath "/usr/share/fonts/misc"
+ FontPath "/usr/share/fonts/75dpi:unscaled"
+ FontPath "/usr/share/fonts/75dpi"
+ FontPath "/usr/share/fonts/100dpi:unscaled"
+ FontPath "/usr/share/fonts/100dpi"
+ FontPath "/usr/share/fonts/PEX"
+# Additional fonts: Locale, Gimp, TTF...
+ FontPath "/usr/share/fonts/cyrillic"
+# FontPath "/usr/share/lib/X11/fonts/latin2/75dpi"
+# FontPath "/usr/share/lib/X11/fonts/latin2/100dpi"
+# True type and type1 fonts are also handled via xftlib, see /etc/X11/XftConfig!
+ FontPath "/usr/share/fonts/Type1"
+ FontPath "/usr/share/fonts/ttf/western"
+ FontPath "/usr/share/fonts/ttf/decoratives"
+ FontPath "/usr/share/fonts/truetype"
+ FontPath "/usr/share/fonts/truetype/openoffice"
+ FontPath "/usr/share/fonts/truetype/ttf-bitstream-vera"
+ FontPath "/usr/share/fonts/latex-ttf-fonts"
+ FontPath "/usr/share/fonts/defoma/CID"
+ FontPath "/usr/share/fonts/defoma/TrueType"
+EndSection
+
+Section "Module"
+ Load "ddc" # ddc probing of monitor
+ Load "dbe"
+ Load "dri"
+ Load "extmod"
+ Load "glx"
+ Load "bitmap" # bitmap-fonts
+ Load "type1"
+ Load "freetype"
+ Load "record"
+EndSection
+
+Section "InputDevice"
+ Identifier "Keyboard0"
+ Driver "keyboard"
+ Option "CoreKeyboard"
+ Option "XkbRules" "xorg"
+ Option "XkbModel" "pc105"
+ Option "XkbLayout" ""
+ Option "XkbVariant" ""
+EndSection
+
+Section "InputDevice"
+ Identifier "Serial Mouse"
+ Driver "mouse"
+ Option "Protocol" "Microsoft"
+ Option "Device" "/dev/ttyS0"
+ Option "Emulate3Buttons" "true"
+ Option "Emulate3Timeout" "70"
+ Option "SendCoreEvents" "true"
+EndSection
+
+Section "InputDevice"
+ Identifier "PS/2 Mouse"
+ Driver "mouse"
+ Option "Protocol" "auto"
+ Option "ZAxisMapping" "4 5"
+ Option "Device" "/dev/psaux"
+ Option "Emulate3Buttons" "true"
+ Option "Emulate3Timeout" "70"
+ Option "SendCoreEvents" "true"
+EndSection
+
+Section "InputDevice"
+ Identifier "USB Mouse"
+ Driver "mouse"
+ Option "Device" "/dev/input/mice"
+ Option "SendCoreEvents" "true"
+ Option "Protocol" "IMPS/2"
+ Option "ZAxisMapping" "4 5"
+ Option "Buttons" "5"
+EndSection
+
+# Auto-generated by Archie mkxcfg
+
+Section "Monitor"
+ Identifier "Monitor0"
+ Option "DPMS" "true"
+EndSection
+
+# Auto-generated by Archie mkxcfg
+
+Section "Device"
+ Identifier "Card0"
+ Driver "intel"
+ VendorName "All"
+ BoardName "All"
+EndSection
+
+Section "Screen"
+ Identifier "Screen0"
+ Device "Card0"
+ Monitor "Monitor0"
+ DefaultColorDepth 16
+ SubSection "Display"
+ Depth 1
+ Modes "1024x768" "800x600" "640x480"
+ EndSubSection
+ SubSection "Display"
+ Depth 4
+ Modes "1024x768" "800x600" "640x480"
+ EndSubSection
+ SubSection "Display"
+ Depth 8
+ Modes "1024x768" "800x600" "640x480"
+ EndSubSection
+ SubSection "Display"
+ Depth 15
+ Modes "1024x768" "800x600" "640x480"
+ EndSubSection
+ SubSection "Display"
+ Depth 16
+ Modes "800x600"
+ virtual 800 600
+ EndSubSection
+ SubSection "Display"
+ Depth 24
+ Modes "1024x768" "800x600" "640x480"
+ EndSubSection
+ SubSection "Display"
+ Depth 32
+ Modes "1024x768" "800x600" "640x480"
+ EndSubSection
+EndSection
+
+Section "DRI"
+ Mode 0666
+EndSection
diff --git a/abs/mv-core/MythVantage-config/templates/xorg/xorg.conf.nvidia b/abs/mv-core/MythVantage-config/templates/xorg/xorg.conf.nvidia
new file mode 100755
index 0000000..dec0f42
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/xorg/xorg.conf.nvidia
@@ -0,0 +1,90 @@
+# nvidia-xconfig: X configuration file generated by nvidia-xconfig
+# nvidia-xconfig: version 1.0 (buildmeister@builder3) Tue Aug 1 21:11:12 PDT 2006
+
+Section "ServerLayout"
+ Identifier "Layout0"
+ Screen 0 "Screen0"
+ InputDevice "Keyboard0" "CoreKeyboard"
+ InputDevice "Mouse0" "CorePointer"
+EndSection
+
+Section "Files"
+ RgbPath "/usr/X11R6/lib/X11/rgb"
+EndSection
+
+Section "Module"
+ Load "dbe"
+ Load "extmod"
+ Load "type1"
+ Load "freetype"
+ Load "glx"
+EndSection
+
+Section "InputDevice"
+ # generated from default
+ Identifier "Mouse0"
+ Driver "mouse"
+ Option "Protocol" "auto"
+ Option "Device" "/dev/psaux"
+ Option "Emulate3Buttons" "no"
+ Option "ZAxisMapping" "4 5"
+EndSection
+
+Section "InputDevice"
+ # generated from default
+ Identifier "Keyboard0"
+ Driver "keyboard"
+EndSection
+
+Section "Monitor"
+ Identifier "Monitor0"
+ VendorName "Unknown"
+ ModelName "Unknown"
+# HorizSync
+# VertRefresh
+ Option "DPMS" "false"
+ DisplaySize 203 153
+ Modeline "1280x720" 74.25 1280 1316 1452 1644 720 720 723 751 -hsync +vsync
+ Modeline "1280x720_60.00" 74.25 1280 1352 1432 1648 720 725 730 750 -hsync -vsync
+ ModeLine "848x480" 34.0 848 880 1016 1072 480 494 495 527 -hsync -vsync
+ Modeline "800x600" 38.34 800 832 928 1024 600 604 608 624 -HSync -VSync
+ ModeLine "NTSC-DVD-72p" 32.432 720 736 800 858 480 484 492 525
+#INSERT MODELINE
+EndSection
+
+Section "Device"
+ Identifier "Device0"
+ Driver "nvidia"
+ VendorName "NVIDIA Corporation"
+ Option "DPI" "100 x 100"
+ Option "NoLogo" "1"
+
+#INSERT HERE
+
+#END OPTIONS
+
+# Option "ConnectedMonitor" "DFP"
+# Option "FlatPanelProperties" "Scaling = centered, Dithering = enabled"
+# Option "DigitalVibrance" "0"
+# Option "TransparentIndex" "0"
+# Option "CursorShadowAlpha" "64"
+# Option "CursorShadowXOffset" "4"
+# Option "UseEdidFreqs" "True"
+# Option "NvAGP" "1"
+
+
+
+
+EndSection
+
+Section "Screen"
+ Identifier "Screen0"
+ Device "Device0"
+ Monitor "Monitor0"
+ DefaultDepth 24
+ SubSection "Display"
+ Depth 24
+ Modes "1280x720"
+ EndSubSection
+EndSection
+
diff --git a/abs/mv-core/MythVantage-config/templates/xorg/xorg.conf.via b/abs/mv-core/MythVantage-config/templates/xorg/xorg.conf.via
new file mode 100644
index 0000000..6dd7821
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/xorg/xorg.conf.via
@@ -0,0 +1,77 @@
+# nvidia-xconfig: X configuration file generated by nvidia-xconfig
+# nvidia-xconfig: version 1.0 (buildmeister@builder3) Tue Aug 1 21:11:12 PDT 2006
+
+Section "ServerLayout"
+ Identifier "Layout0"
+ Screen 0 "Screen0"
+ InputDevice "Keyboard0" "CoreKeyboard"
+ InputDevice "Mouse0" "CorePointer"
+EndSection
+
+Section "Files"
+ RgbPath "/usr/X11R6/lib/X11/rgb"
+EndSection
+
+Section "Module"
+ Load "dbe"
+ Load "glx"
+ Load "extmod"
+ Load "type1"
+ Load "freetype"
+ Load "dri"
+EndSection
+
+Section "InputDevice"
+ # generated from default
+ Identifier "Mouse0"
+ Driver "mouse"
+ Option "Protocol" "auto"
+ Option "Device" "/dev/psaux"
+ Option "Emulate3Buttons" "no"
+ Option "ZAxisMapping" "4 5"
+EndSection
+
+Section "InputDevice"
+ # generated from default
+ Identifier "Keyboard0"
+ Driver "keyboard"
+EndSection
+
+Section "Monitor"
+ Identifier "Monitor0"
+ VendorName "Unknown"
+ ModelName "Unknown"
+ HorizSync 30.0 - 110.0
+ VertRefresh 50.0 - 150.0
+ Option "DPMS" "false"
+ Modeline "1280x720" 74.25 1280 1316 1452 1644 720 720 723 751 -hsync +vsync
+ Modeline "1280x720_60.00" 74.25 1280 1352 1432 1648 720 725 730 750 -hsync -vsync
+ ModeLine "848x480" 34.0 848 880 1016 1072 480 494 495 527 -hsync -vsync
+ Modeline "800x600" 38.34 800 832 928 1024 600 604 608 624 -HSync -VSync
+ ModeLine "NTSC-DVD-72p" 32.432 720 736 800 858 480 484 492 525
+EndSection
+
+Section "Device"
+ Identifier "Device0"
+ Driver "via"
+ VendorName "via"
+ Option "DPI" "100 x 100"
+
+
+EndSection
+
+Section "Screen"
+ Identifier "Screen0"
+ Device "Device0"
+ Monitor "Monitor0"
+ DefaultDepth 16
+ SubSection "Display"
+ Depth 16
+ Modes "800x600"
+ EndSubSection
+EndSection
+
+Section "DRI"
+ Group "video"
+ Mode 0666
+ EndSection
diff --git a/abs/mv-core/MythVantage-config/templates/xorg/xorg.conf.vmware b/abs/mv-core/MythVantage-config/templates/xorg/xorg.conf.vmware
new file mode 100755
index 0000000..843f2f4
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/templates/xorg/xorg.conf.vmware
@@ -0,0 +1,72 @@
+# nvidia-xconfig: X configuration file generated by nvidia-xconfig
+# nvidia-xconfig: version 1.0 (buildmeister@builder3) Tue Aug 1 21:11:12 PDT 2006
+
+Section "ServerLayout"
+ Identifier "Layout0"
+ Screen 0 "Screen0"
+ InputDevice "Keyboard0" "CoreKeyboard"
+ InputDevice "Mouse0" "CorePointer"
+EndSection
+
+Section "Files"
+ RgbPath "/usr/X11R6/lib/X11/rgb"
+EndSection
+
+Section "Module"
+ Load "dbe"
+ Load "extmod"
+ Load "type1"
+ Load "freetype"
+ Load "glx"
+EndSection
+
+Section "InputDevice"
+ # generated from default
+ Identifier "Mouse0"
+ Driver "mouse"
+ Option "Protocol" "auto"
+ Option "Device" "/dev/psaux"
+ Option "Emulate3Buttons" "no"
+ Option "ZAxisMapping" "4 5"
+EndSection
+
+Section "InputDevice"
+ # generated from default
+ Identifier "Keyboard0"
+ Driver "keyboard"
+EndSection
+
+Section "Monitor"
+ Identifier "Monitor0"
+ VendorName "Unknown"
+ ModelName "Unknown"
+ HorizSync 30.0 - 110.0
+ VertRefresh 50.0 - 150.0
+ Option "DPMS" "false"
+ Modeline "1280x720" 74.25 1280 1316 1452 1644 720 720 723 751 -hsync +vsync
+ Modeline "1280x720_60.00" 74.25 1280 1352 1432 1648 720 725 730 750 -hsync -vsync
+ ModeLine "848x480" 34.0 848 880 1016 1072 480 494 495 527 -hsync -vsync
+ Modeline "800x600" 38.34 800 832 928 1024 600 604 608 624 -HSync -VSync
+ ModeLine "NTSC-DVD-72p" 32.432 720 736 800 858 480 484 492 525
+EndSection
+
+Section "Device"
+ Identifier "Device0"
+ Driver "vmware"
+ VendorName "NVIDIA Corporation"
+ Option "DPI" "100 x 100"
+
+
+EndSection
+
+Section "Screen"
+ Identifier "Screen0"
+ Device "Device0"
+ Monitor "Monitor0"
+ DefaultDepth 24
+ SubSection "Display"
+ Depth 24
+ Modes "1280x720"
+ EndSubSection
+EndSection
+
diff --git a/abs/mv-core/MythVantage-config/timezip.py b/abs/mv-core/MythVantage-config/timezip.py
new file mode 100755
index 0000000..505b4a4
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/timezip.py
@@ -0,0 +1,185 @@
+#!/usr/bin/python
+# import MySQL module
+#used to import the zipcode/timezone/nfs info fromMBE
+import MySQLdb
+import sys
+import getopt
+import socket
+
+
+def usage():
+ print " -h --help"
+ print " -d --installdb"
+ print " -m --masterdb"
+ print " -n --hostname of current machine"
+
+def printvars():
+ print "masterdb: " + masterdb
+ print "installdb:" + installdb
+ print "hostname: " + thishostname
+ print "BEhostname:" + BEhostname
+ print "zipcode:" + zipcode
+ print "timezone:" + tz
+ print "nfsip:" + nfsip
+ print "nfstoggle:" + nfstoggle
+ print "nfsmount:" + nfsmount
+ print "hobbitclient:" + hobbitclient
+# connect
+def selectvars():
+
+ global BEhostname
+ global zipcode
+ global tz
+ global nfsip
+ global nfstoggle
+ global nfsmount
+ global hobbitclient
+
+ db = MySQLdb.connect(host=masterdb, user="mythtv", passwd="mythtv", db="mythconverg")
+ # create a cursor
+ cursor = db.cursor()
+ # execute SQL statement
+ cursor.execute("select hostname from settings where value='BackendServerIP' and data=(%s)",(masterdb))
+ result = cursor.fetchone()
+ BEhostname=result[0]
+
+ cursor.execute("select data from settings where value='HostZipcode' and hostname=(%s)",(BEhostname))
+ result = cursor.fetchone()
+ try:
+ zipcode = result[0]
+ except TypeError:
+ zipcode=""
+
+ cursor.execute("select data from settings where value='HostCentralNFSIP' and hostname=(%s)",(BEhostname))
+ result = cursor.fetchone()
+ try:
+ nfsip=result[0]
+ except TypeError:
+ nfsip=""
+
+ cursor.execute("select data from settings where value='HostHaveCentralNFS' and hostname=(%s)",(BEhostname))
+ result = cursor.fetchone()
+ try:
+ nfstoggle=result[0]
+ except TypeError:
+ nfstoggle=""
+
+ cursor.execute("select data from settings where value='HostNFSmountpoint' and hostname=(%s)",(BEhostname))
+ result = cursor.fetchone()
+ try:
+ nfsmount=result[0]
+ except TypeError:
+ nfsmount=""
+
+ cursor.execute("select data from settings where value='HostTimeZone' and hostname=(%s)",(BEhostname))
+ result = cursor.fetchone()
+ try:
+ tz=result[0]
+ except TypeError:
+ tz=""
+
+ if ( thishostname != BEhostname ):
+ cursor.execute("select data from settings where value='GlobalServiceHobbitserver'")
+ result = cursor.fetchone()
+ try:
+ hobbitclient=result[0]
+ except TypeError:
+ hobbitclient="0"
+
+
+
+def insertvars():
+
+ db = MySQLdb.connect(host=installdb, user="mythtv", passwd="mythtv", db="mythconverg")
+ cursor = db.cursor()
+#inserting the zipcode
+ cursor.execute("select * from settings where value='HostZipcode' and hostname=(%s)",(thishostname))
+ result = cursor.fetchone()
+ if ( zipcode!="" ):
+ if (result == None):
+ cursor.execute("INSERT INTO settings (value,data,hostname) VALUES ('HostZipcode',(%s),(%s))",(zipcode,thishostname))
+ print "inserting zipcode"
+ else:
+ cursor.execute("update settings set data=(%s) where hostname=(%s) and value='HostZipcode'",(zipcode,thishostname))
+ print "updating zipcode"
+
+#inserting the timezone
+ cursor.execute("select * from settings where value='HostTimeZone' and hostname=(%s)",(thishostname))
+ result = cursor.fetchone()
+ if ( tz != ""):
+ if (result == None):
+ cursor.execute("INSERT INTO settings (value,data,hostname) VALUES ('HostTimeZone',(%s),(%s))",(tz,thishostname))
+ print "inserting timezone"
+ else:
+ cursor.execute("update settings set data=(%s) where hostname=(%s) and value='HostTimeZone'",(tz,thishostname))
+ print "updating timezone"
+
+
+#start of NFSIP
+ cursor.execute("select data from settings where value='HostCentralNFSIP' and hostname=(%s)",(thishostname))
+ result = cursor.fetchone()
+ if ( nfsip != ""):
+ if (result == None):
+ cursor.execute("INSERT INTO settings (value,data,hostname) VALUES ('HostCentralNFSIP',(%s),(%s))",(nfsip,thishostname))
+ print "inserting nfsip"
+
+ if (nfstoggle != ""):
+ cursor.execute("select data from settings where value='HostHaveCentralNFS' and hostname=(%s)",(thishostname))
+ result = cursor.fetchone()
+ if (result == None):
+ cursor.execute("INSERT INTO settings (value,data,hostname) VALUES ('HostHaveCentralNFS',(%s),(%s))",(nfstoggle,thishostname))
+ print "inserting nfstoggle"
+
+ if ( nfsmount !="") :
+ cursor.execute("select data from settings where value='HostNFSmountpoint' and hostname=(%s)",(thishostname))
+ result = cursor.fetchone()
+ if (result == None):
+ cursor.execute("INSERT INTO settings (value,data,hostname) VALUES ('HostNFSmountpoint',(%s),(%s))",(nfsmount,thishostname))
+ print "inserting nfsmountpoint"
+
+#hobbitclient
+ cursor.execute("select * from settings where value='HostServiceHobbitclient' and hostname=(%s)",(thishostname))
+ result = cursor.fetchone()
+ if ( tz != ""):
+ if (result == None):
+ cursor.execute("INSERT INTO settings (value,data,hostname) VALUES ('HostServiceHobbitclient',(%s),(%s))",(hobbitclient,thishostname))
+ print "inserting hobbitcleint"
+ else:
+ cursor.execute("update settings set data=(%s) where hostname=(%s) and value='HostServiceHobbitclient'",(hobbitclient,thishostname))
+ print "updating hobbitclient"
+
+
+def main(argv):
+ global masterdb
+ global installdb
+ global thishostname
+ thishostname=""
+ global BEhostname
+ global zipcode
+ global tz
+ global nfsip
+ global hobbitclient
+ try:
+ opts, args = getopt.getopt(argv, "hm:d:n:", ["help", "masterdb=", "installdb=" , "hostname=" ] )
+ except getopt.GetoptError:
+ sys.exit(2)
+ for opt, arg in opts:
+ if opt in ("-h", "--help"):
+ usage()
+ sys.exit()
+ elif opt in ( "-d" , "--installdb"):
+ installdb = arg
+ elif opt in ("-m", "--masterdb"):
+ masterdb = arg
+ elif opt in ("-n", "--hostname"):
+ thishostname = arg
+
+ if ( thishostname == "" ):
+ thishostname = socket.gethostname()
+
+ selectvars()
+ printvars()
+ insertvars()
+if __name__ == "__main__":
+ main(sys.argv[1:])
+
diff --git a/abs/mv-core/MythVantage-config/xconfig.sh b/abs/mv-core/MythVantage-config/xconfig.sh
new file mode 100755
index 0000000..42603d6
--- /dev/null
+++ b/abs/mv-core/MythVantage-config/xconfig.sh
@@ -0,0 +1,233 @@
+#!/bin/bash
+BASE=""
+. /etc/profile
+#TEMPLATES="/usr/share/templates"
+
+function Xvalues {
+ VGACARDTYPE=`lspci|grep -i vga|sort -r|head -n 1| cut -d: -f3|cut -d" " -f 2`
+ echo $VGACARDTYPE
+ currentmode=`cat $BASE/etc/X11/xorg.conf |grep Modes|awk -Fs ' { print $2 } '`
+ }
+
+function presetupX {
+if [ x$XUseAdvanced = x1 ]
+then
+ if [ x$XIgnoreConfig = x1 ]
+ then
+ echo "Using User supplied X"
+ if [ -f $BASE/data/home/mythtv/templates/xorg.user ]
+ then
+ cp -f $BASE/data/home/mythtv/templates/xorg.user $XORG_CONF
+ else
+ echo "Didn't find the file"
+ echo "Copy your config file to $BASE/data/home/mythtv/templates/xorg.use " >> $XORG_CONF
+ fi
+ else
+ setupAdvancedX
+ fi
+else
+ setupX
+fi
+
+}
+
+function setupAdvancedX {
+echo "#doing the advanced" > /tmp/options
+ Xcatagory=` echo $Xresadvanced |cut -d_ -f1`
+ Xres=` echo $Xresadvanced |cut -d_ -f2`
+ echo $Xcatagory
+ if [ x$Xcatagory = "xNvidia" ]
+ then
+ Xres=""
+ if [ $XnVidia1080p = "1" ]
+ then
+ Xres="${Xres} \"1920x1080_60\""
+ fi
+ if [ $XnVidia1080i = "1" ]
+ then
+ Xres="${Xres} \"1920x1080_60i\""
+ fi
+ if [ $XnVidia720p = "1" ]
+ then
+ Xres="${Xres} \"1280x720_60\""
+ fi
+ if [ $XnVidia480p = "1" ]
+ then
+ Xres="${Xres} \"720x480_60\""
+ fi
+ ML="\t Modes ${Xres}"
+ else
+
+ ML="\t Modes \"${Xres}\""
+ fi
+ echo $ML
+ case $Xcardtype in
+ NVIDIA|nVidia )
+
+ case $Xconnection in
+ DVI) ConnectedMonitor=DFP ;;
+ vga) ConnectedMonitor=CRT;;
+ Auto) ConnectedMonitor=Auto;;
+ TV) ConnectedMonitor=TV
+ echo "Option \"TVStandard\" \"$XTVstandard\"" >>/tmp/options
+ echo "Option \"TVOutFormat\" \"$XTVconnection\"" >> /tmp/options
+ ;;
+ esac
+ if [ $ConnectedMonitor = Auto ]
+ then
+ echo "auto connection"
+ else
+ echo "Option \"ConnectedMonitor\" \"$ConnectedMonitor\"" >> /tmp/options
+ echo "Option \"FlatPanelProperties\" \"Scaling = centered, Dithering = enabled\"" >> /tmp/options
+ echo "Option \"DigitalVibrance\" \"0\"" >> /tmp/options
+ fi
+
+ if [ x$XignoreEDID = x1 ]
+ then
+ EDIDvalue=true
+ EDIDFREQ=false
+ DS=" DisplaySize $XDisplaysize"
+ HS=" HorizSync $XHsync"
+ VR=" VertRefresh $XVrefresh"
+ else
+ EDIDvalue=false
+ EDIDFREQ=true
+ DS="# Display size edid used "
+ HS="#Hsync edid used "
+ VR="#Vertrefresh edid used "
+
+ fi
+ echo "Option \"UseEdidFreqs\" \"$EDIDFREQ\"" >> /tmp/options
+ echo "Option \"IgnoreEDID\" \"$EDIDvalue\"" >> /tmp/options
+
+
+ sed -e "s/^.*Modes.*$/${ML}/" \
+ -e "/INSERT MODELINE/r $TEMPLATES/xorg/modeline.$Xcatagory" \
+ -e "s/^.*DisplaySize.*$/ $DS/" \
+ -e "s/^#.*HorizSync.*$/ $HS/g" \
+ -e "s/^#.*VertRefresh.*$/ $VR/g" \
+ -e "/INSERT HERE/r /tmp/options" $TEMPLATES/xorg/xorg.conf.nvidia > $XORG_CONF
+
+ ;;
+ ati|ATI)
+ case $Xconnection in
+ DVI) ConnectedMonitor="tmds1,nocrt1,notv";;
+ VGA) ConnectedMonitor="crt1,notmds1,notv" ;;
+ TV) ConnectedMonitor="tv,nocrt1,notmds1"
+ echo "Option \"TVStandard\" \"$XTVstandard\"" >>/tmp/options
+ echo "Option \"TVFormat\" \"$XTVconnection\"" >> /tmp/options
+ ;;
+
+ esac
+
+
+ if [ x$XignoreEDID = x1 ]
+ then
+ DS=" DisplaySize $XDisplaysize"
+ HS=" HorizSync $XHsync"
+ VR=" VertRefresh $XVrefresh"
+ else
+ DS="# Display size edid used "
+ HS="#Hsync edid used "
+ VR="#Vertrefresh edid used "
+
+ fi
+
+ echo "Option \"ForceMonitors\" \"$ConnectedMonitor\"" >> /tmp/options
+
+ sed -e "s/^.*Modes.*$/\t $ML/" \
+ -e "/INSERT MODELINE/r $TEMPLATES/xorg/modeline.$Xcatagory" \
+ -e "s/^.*DisplaySize.*$/ $DS/" \
+ -e "s/^#.*HorizSync.*$/ $HS/g" \
+ -e "s/^#.*VertRefresh.*$/ $VR/g" \
+ -e "/INSERT HERE/r /tmp/options" $TEMPLATES/xorg/xorg.conf.ati > $XORG_CONF
+ ;;
+
+ via|VIA|Via) echo "no via here"
+ ;;
+
+ *)
+ echo "unknown card type"
+ ;;
+ esac
+}
+
+
+
+function setupX {
+ Xvalues
+ echo "$currentmode ____ ${Xres}"
+ #if [ ! x${currentmode} = x\"${Xres}\" ]
+ if [ x = x ]
+ then
+ case $VGACARDTYPE in
+ nVidia )
+ sed -e "s/^.*Modes.*$/\t Modes \"${Xres}\"/" $TEMPLATES/xorg/xorg.conf.nvidia > $XORG_CONF
+ if [ ! x$TESTMODE = "xtest" ]
+ then
+ pacman --noconfirm -R libgl-dri
+# pacman --noconfirm -S nvidia-STB nvidia-utils
+ pacman --noconfirm -S nvidia nvidia-utils
+ fi
+ ;;
+ VMware )
+ sed -e "s/^.*Modes.*$/\t Modes \"${Xres}\"/" $TEMPLATES/xorg/xorg.conf.vmware > $XORG_CONF
+ ;;
+
+ VIA )
+ sed -e "s/^.*Modes.*$/\t Modes \"${Xres}\"/" $TEMPLATES/xorg/xorg.conf.via > $XORG_CONF
+ if [ ! x$TESTMODE = "xtest" ]
+ then
+ pacman --noconfirm -R nvidia-STB nvidia-utils
+ pacman --noconfirm -S libgl-dri
+ fi
+
+ ;;
+ Intel)
+ sed -e "s/^.*Modes.*$/\t Modes \"${Xres}\"/" $TEMPLATES/xorg/xorg.conf.intel > $XORG_CONF
+ if [ ! x$TESTMODE = "xtest" ]
+ then
+ pacman --noconfirm -Rd nvidia-utils
+ pacman --noconfirm -S libgl-dri
+ fi
+ ;;
+
+ *) #XCONF=`hwd -x |grep etc`
+ XCONF=`hwd -x |grep etc|tr -d [:cntrl:]|cut -d\/ -f 2-`
+
+
+ cat /$XCONF |grep -v Modes | sed -e '/Depth 16/a Modes "800x600"' -e 's/dev\/mouse/dev\/psaux/g'> $XORG_CONF
+ ;;
+ esac
+ fi
+
+}
+
+#MAIN
+TESTMODE=$1
+if [ x$TESTMODE = "xtest" ]
+then
+ XORG_CONF="/tmp/xorg.conf.test"
+ XUseAdvanced="1"
+ XIgnoreConfig="${2}"
+ Xcardtype="${3}"
+ XIgnoreEDID="${4}"
+ Xconnection="${5}"
+ XHsync="${6}"
+ XVrefresh="${7}"
+ Xresadvanced="${8}"
+ XTVstandard="${9}"
+ XTVconnection="${10}"
+ XDisplaysize="${11}"
+else
+ if [ -f /etc/systemconfig ]
+ then
+ . /etc/systemconfig
+ else
+ Xres="800x600"
+ fi
+ XORG_CONF="/etc/X11/xorg.conf"
+fi
+presetupX
+
+
diff --git a/abs/mv-core/MythVantage-system/45-event.rules b/abs/mv-core/MythVantage-system/45-event.rules
new file mode 100644
index 0000000..f88dc0c
--- /dev/null
+++ b/abs/mv-core/MythVantage-system/45-event.rules
@@ -0,0 +1 @@
+KERNEL=="event*", NAME="input/%k", MODE="0640" , GROUP="users"
diff --git a/abs/mv-core/MythVantage-system/PKGBUILD b/abs/mv-core/MythVantage-system/PKGBUILD
new file mode 100644
index 0000000..7f01ac0
--- /dev/null
+++ b/abs/mv-core/MythVantage-system/PKGBUILD
@@ -0,0 +1,43 @@
+pkgname=MythVantage-system
+pkgver=1.0
+pkgrel=1
+arch=('i686')
+MVDIR=$startdir/pkg/usr/MythVantage
+BINDIR=$startdir/pkg/usr/bin
+install=STB.install
+pkgdesc="scripts and things related to having a automated system"
+depends=(unclutter ghosd ncid func wol )
+provides=(STB-system)
+
+binfiles="playmedia.sh STB-start saytime.sh restartfrontend.sh backup_job restore_job.sh update_system update_system_all repo_sync.sh backend_control.sh load-modules-mythvantage.sh file_time_offset.py grabkey.py imdb-bulk-update.pl notify.py optimize_mythdb.py myth_mtc.py myth_mtc.sh firstboot.sh initial_db_run"
+
+source=(startfrontend inittab STBWINDOWMANAGER smolt.cron $binfiles mfegdbcommands.txt mbegdbcommands.txt 45-event.rules)
+
+build() {
+ cd $startdir/src
+ install -m755 -D STBWINDOWMANAGER $startdir/pkg/etc/X11/STBWINDOWMANAGER
+ install -m755 -D startfrontend $startdir/pkg/etc/X11/Sessions/STB
+ install -m755 -D mfegdbcommands.txt $MVDIR/mfegdbcommands.txt
+ install -m755 -D mbegdbcommands.txt $MVDIR/mbegdbcommands.txt
+####### install to /usr/MythVantage/bin/
+mkdir -p $BINDIR
+for i in $binfiles
+do
+ item=$i
+ install -m755 -D $item $MVDIR/bin/$item
+ echo $item
+ cd $BINDIR
+ pwd
+ ln -s ../MythVantage/bin/$i .
+
+ cd -
+done
+##########
+
+ install -m755 -D smolt.cron $startdir/pkg/etc/cron.weekly/smolt.cron
+
+ install -m755 -D 45-event.rules $startdir/pkg/etc/udev/rules.d/45-event.rules
+
+
+}
+
diff --git a/abs/mv-core/MythVantage-system/STB-start b/abs/mv-core/MythVantage-system/STB-start
new file mode 100644
index 0000000..39a50f0
--- /dev/null
+++ b/abs/mv-core/MythVantage-system/STB-start
@@ -0,0 +1,160 @@
+#!/bin/sh
+. /etc/profile
+# $Xorg: startx.cpp,v 1.3 2000/08/17 19:54:29 cpqbld Exp $
+#
+# This is just a sample implementation of a slightly less primitive
+# interface than xinit. It looks for user .xinitrc and .xserverrc
+# files, then system xinitrc and xserverrc files, else lets xinit choose
+# its default. The system xinitrc should probably do things like check
+# for .Xresources files and merge them in, startup up a window manager,
+# and pop a clock and serveral xterms.
+#
+# Site administrators are STRONGLY urged to write nicer versions.
+#
+# $XFree86: xc/programs/xinit/startx.cpp,v 3.16tsi Exp $
+
+
+userclientrc=/etc/X11/Sessions/STB
+userserverrc=$HOME/.xserverrc
+sysclientrc=/usr/X11R6/lib/X11/xinit/xinitrc
+sysserverrc=/usr/X11R6/lib/X11/xinit/xserverrc
+defaultclient=/usr/X11R6/bin/xterm
+defaultserver=/usr/X11R6/bin/X
+defaultclientargs=""
+defaultserverargs=""
+clientargs=""
+serverargs=""
+
+
+
+
+
+
+if [ -f $userclientrc ]; then
+ defaultclientargs=$userclientrc
+elif [ -f $sysclientrc ]; then
+ defaultclientargs=$sysclientrc
+fi
+
+
+
+
+if [ -f $userserverrc ]; then
+ defaultserverargs=$userserverrc
+elif [ -f $sysserverrc ]; then
+ defaultserverargs=$sysserverrc
+fi
+
+whoseargs="client"
+while [ x"$1" != x ]; do
+ case "$1" in
+ # '' required to prevent cpp from treating "/*" as a C comment.
+ /''*|\./''*)
+ if [ "$whoseargs" = "client" ]; then
+ if [ x"$clientargs" = x ]; then
+ client="$1"
+ else
+ clientargs="$clientargs $1"
+ fi
+ else
+ if [ x"$serverargs" = x ]; then
+ server="$1"
+ else
+ serverargs="$serverargs $1"
+ fi
+ fi
+ ;;
+ --)
+ whoseargs="server"
+ ;;
+ *)
+ if [ "$whoseargs" = "client" ]; then
+ clientargs="$clientargs $1"
+ else
+ # display must be the FIRST server argument
+ if [ x"$serverargs" = x ] && \
+ expr "$1" : ':[0-9][0-9]*$' > /dev/null 2>&1; then
+ display="$1"
+ else
+ serverargs="$serverargs $1"
+ fi
+ fi
+ ;;
+ esac
+ shift
+done
+
+# process client arguments
+if [ x"$client" = x ]; then
+ # if no client arguments either, use rc file instead
+ if [ x"$clientargs" = x ]; then
+ client="$defaultclientargs"
+ else
+ client=$defaultclient
+ fi
+fi
+
+# process server arguments
+if [ x"$server" = x ]; then
+ # if no server arguments or display either, use rc file instead
+ if [ x"$serverargs" = x -a x"$display" = x ]; then
+ server="$defaultserverargs"
+ else
+ server=$defaultserver
+ fi
+fi
+
+if [ x"$XAUTHORITY" = x ]; then
+ XAUTHORITY=$HOME/.Xauthority
+ export XAUTHORITY
+fi
+
+removelist=
+
+
+# set up default Xauth info for this machine
+case `uname` in
+Linux*)
+ if [ -z "`hostname --version 2>&1 | grep GNU`" ]; then
+ hostname=`hostname -f`
+ else
+ hostname=`hostname`
+ fi
+ ;;
+*)
+ hostname=`hostname`
+ ;;
+esac
+
+authdisplay=${display:-:0}
+mcookie=`mcookie`
+for displayname in $authdisplay $hostname$authdisplay; do
+ if ! xauth list "$displayname" | grep "$displayname " >/dev/null 2>&1; then
+ xauth -q << EOF
+add $displayname . $mcookie
+EOF
+ removelist="$displayname $removelist"
+ fi
+done
+
+
+xinit $client $clientargs -- $server $display $serverargs
+
+if [ x"$removelist" != x ]; then
+ xauth remove $removelist
+fi
+
+
+
+
+
+if command -v deallocvt > /dev/null 2>&1; then
+ deallocvt
+fi
+
+
+
+
+
+
+
diff --git a/abs/mv-core/MythVantage-system/STB.install b/abs/mv-core/MythVantage-system/STB.install
new file mode 100644
index 0000000..d10e0c1
--- /dev/null
+++ b/abs/mv-core/MythVantage-system/STB.install
@@ -0,0 +1,113 @@
+# This is a default template for a post-install scriptlet. You can
+# remove any functions you don't need (and this header).
+
+# arg 1: the new package version
+pre_install() {
+/bin/true
+}
+
+# arg 1: the new package version
+post_install() {
+MVDIR=/usr/MythVantage/bin
+# ln -s $MVDIR/backup_job /etc/cron.daily/backup_cron
+# ln -s $MVDIR/update_system /etc/cron.daily/xupdate_system_cron
+ ln -s $MVDIR/repo_sync.sh /etc/cron.daily/zrepo_sync.sh
+ ln -s $MVDIR/myth_mtc.sh /etc/cron.daily/myth_mtc.sh
+
+ if [ ! -e /etc/cron.tenminutes ]
+ then
+ mkdir /etc/cron.tenminutes
+ fi
+
+ ln -s $MVDIR/grabkey.py /etc/cron.tenminutes/grabkey.py
+
+
+LINE="nobody ALL = NOPASSWD: /sbin/sv stop mythbackend"
+LINE1="nobody ALL = NOPASSWD: /sbin/sv start mythbackend"
+LINE2="nobody ALL = NOPASSWD: /usr/bin/backup_job"
+LINE3="nobody ALL = NOPASSWD: /bin/ls"
+LINE4="nobody ALL = NOPASSWD: /usr/bin/restore_job.sh"
+LINE5="nobody ALL = NOPASSWD: /usr/bin/update_system"
+LINE7="nobody ALL = NOPASSWD: /sbin/poweroff"
+LINE8="nobody ALL = NOPASSWD: /usr/bin/update_system_all"
+LINE9="nobody ALL = NOPASSWD: /usr/bin/func"
+LINE10="nobody ALL = NOPASSWD: /data/srv/hobbit/server/ext/hbfunc.py"
+LINE11="nobody ALL = NOPASSWD: /usr/bin/certmaster-ca"
+LINE12="nobody ALL = NOPASSWD: /sbin/reboot"
+LINE13="nobody ALL = NOPASSWD: /usr/MythVantage/bin/build_diskless.sh"
+LINE14="nobody ALL = NOPASSWD: /sbin/sv stop dnsmasq"
+LINE15="nobody ALL = NOPASSWD: /sbin/sv start dnsmasq"
+LINE16="nobody ALL = NOPASSWD: /sbin/sv hup dnsmasq"
+
+for i in "$LINE" "$LINE1" "$LINE2" "$LINE3" "$LINE4" "$LINE5" "$LINE7" "$LINE8" "$LINE9" "$LINE10" "$LINE11" "$LINE12" "$LINE13" "$LINE14" "$LINE15" "$LINE16"
+do
+ cp /etc/sudoers /etc/sudoers.bak
+ grep -q "$i" /etc/sudoers
+ if [ $? != 0 ]
+ then
+ echo "$i" >> /etc/sudoers
+ visudo -cf /etc/sudoers
+ if [ ! $? = 0 ]
+ then
+ cp /etc/sudoers.bak /etc/sudoers
+ echo $i
+ echo "Error adding files"
+ exit 1
+ fi
+ fi
+done
+
+REALTIME="session required pam_limits.so"
+grep -q "pam_limits.so" /etc/pam.d/su
+ if [ $? != 0 ]
+ then
+ echo "$REALTIME" >> /etc/pam.d/su
+
+ fi
+
+mkdir -p /data/home/mythtv/capture
+chown mythtv:mythtv /data/home/mythtv/capture
+
+}
+
+# arg 1: the new package version
+# arg 2: the old package version
+pre_upgrade() {
+ if [ -e /etc/cron.daily/backup_cron ]
+ then
+ rm -f /etc/cron.daily/backup_cron
+ fi
+ if [ -e /etc/cron.daily/xupdate_system_cron ]
+ then
+ rm -f /etc/cron.daily/xupdate_system_cron
+ fi
+
+ if [ -e /etc/cron.daily/myth_mtc.py ]
+ then
+ rm -f /etc/cron.daily/myth_mtc.py
+ fi
+
+
+
+
+}
+
+# arg 1: the new package version
+# arg 2: the old package version
+post_upgrade() {
+ post_install
+}
+
+# arg 1: the old package version
+pre_remove() {
+ /bin/true
+}
+
+# arg 1: the old package version
+post_remove() {
+ /bin/true
+}
+
+op=$1
+shift
+$op $*
diff --git a/abs/mv-core/MythVantage-system/STBWINDOWMANAGER b/abs/mv-core/MythVantage-system/STBWINDOWMANAGER
new file mode 100644
index 0000000..e2ac216
--- /dev/null
+++ b/abs/mv-core/MythVantage-system/STBWINDOWMANAGER
@@ -0,0 +1,2 @@
+#STBWINDOWMANAGER="/usr/bin/evilwm -fn fixed -bw 0"
+STBWINDOWMANAGER="/usr/bin/e16"
diff --git a/abs/mv-core/MythVantage-system/backend_control.sh b/abs/mv-core/MythVantage-system/backend_control.sh
new file mode 100755
index 0000000..53b973b
--- /dev/null
+++ b/abs/mv-core/MythVantage-system/backend_control.sh
@@ -0,0 +1,34 @@
+#!/bin/bash
+#. /etc/systemconfig
+#echo $@ > /tmp/parms
+#start Slavebackend: fusion 192.168.1.120
+COMMAND=$1
+BETYPE=$2
+eval LAST=\$$#
+dbhost=`echo $LAST`
+
+
+MESSAGE=""
+case $COMMAND in
+ stop) MESSAGE=`/usr/bin/curl http://$dbhost:1337/bestop.cgi 2>/dev/null`
+ ;;
+
+ start )
+ MESSAGE=`/usr/bin/curl http://$dbhost:1337/bestart.cgi 2>/dev/null`
+ ;;
+
+ restart)
+ /usr/bin/backend_control.sh stop $dbhost
+ sleep 3
+ /usr/bin/backend_control.sh start $dbhost
+# /tmp/backend_control.sh start $dbhost
+ ;;
+ clearcache)
+ MESSAGE2=`/usr/bin/curl http://$dbhost:1337/beclear.cgi 2>/dev/null`
+esac
+exit 0
+if [ ! "x$MESSAGE" = x ]
+then
+ xsay -t 3 "$MESSAGE"
+fi
+
diff --git a/abs/mv-core/MythVantage-system/backup_job b/abs/mv-core/MythVantage-system/backup_job
new file mode 100755
index 0000000..c3997ab
--- /dev/null
+++ b/abs/mv-core/MythVantage-system/backup_job
@@ -0,0 +1,63 @@
+#!/bin/bash
+echo "#########################################################"
+echo "Starting backup "
+. /etc/profile
+. /etc/systemconfig
+BACKUPDIR=/data/database_backup
+DATE=`date +%F_%H-%M`
+mkdir -p $BACKUPDIR/$DATE
+
+#backup db
+pacman -Q mysql 2>/dev/null
+if [ $? = 0 ]
+then
+ mysqldump mythconverg > $BACKUPDIR/$DATE/mythconverg
+ mysqldump ncid > $BACKUPDIR/$DATE/ncid
+ mysqldump webcal > $BACKUPDIR/$DATE/webcal
+fi
+
+#backup etc
+cp -rp /etc $BACKUPDIR/$DATE/etc
+cp -rp /var/lib/oss $BACKUPDIR/$DATE/oss
+
+#backup func keys
+cp -rp /data/srv/func $BACKUPDIR/$DATA/func
+
+#make_zip file
+cd $BACKUPDIR
+tar -zcvf $BACKUPDIR/backup.$DATE.tgz $DATE
+
+if [ -d $BACKUPDIR/$DATE ]
+then
+ rm -rf $BACKUPDIR/$DATE
+fi
+
+if [ -f /data/srv/hobbit/server/ext/hbnotes.py ]
+then
+ /data/srv/hobbit/server/ext/hbnotes.py
+ chown nobody:nobody /data/srv/httpd/htdocs/hobbit/notes/* 2> /dev/null >/dev/null
+
+
+fi
+
+
+#Remote copy
+if [ x$RemoteBackup = x1 ]
+then
+ localRemoteCheck=`echo $RemoteBackupDir | cut -d: -f1`
+ if [ x$localRemoteCheck = xdir ]
+ then
+ localRemotedir=`echo $RemoteBackupDir | cut -d: -f2`
+ cmd="cp $BACKUPDIR/backup.$DATE.tgz $localRemotedir"
+ echo "copying$BACKUPDIR/backup.$DATE.tgz to $localRemotedir "
+ else
+# sshcmd="scp -o StrictHostKeyChecking=no -o ConnectTimeout=1 -i /data/srv/.nobody_ssh/id_dsa $BACKUPDIR/backup.$DATE.tgz"
+# cmd="${sshcmd} mythtv@${RemoteBackupDir}:/data/database_backup/"
+ /usr/bin/func ${RemoteBackupDir} copyfile -f $BACKUPDIR/backup.$DATE.tgz --remotepath $BACKUPDIR/backup.$DATE.tgz
+
+ echo "copying$BACKUPDIR/backup.$DATE.tgz to ${RemoteBackupDir}:/data/database_backup/"
+ fi
+ $cmd
+fi
+
+echo "#########################################################"
diff --git a/abs/mv-core/MythVantage-system/file_time_offset.py b/abs/mv-core/MythVantage-system/file_time_offset.py
new file mode 100755
index 0000000..f2973d0
--- /dev/null
+++ b/abs/mv-core/MythVantage-system/file_time_offset.py
@@ -0,0 +1,39 @@
+#!/usr/bin/python
+
+
+import time
+import os
+import glob
+import getopt
+import sys
+def main(argv):
+ filecount=0
+# root = "/tmp"
+# offset = 4
+ now = int(time.time())
+
+
+ try:
+ opts, args = getopt.getopt(argv, "hs:d:")
+ except getopt.GetoptError:
+ sys.exit(2)
+ for opt, arg in opts:
+ if opt in ("-h", "--help"):
+ print "-s seconds -d /testdir"
+ print "default if 4 seconds"
+ sys.exit()
+ elif opt in ( "-s" ):
+ offset = int(arg)
+ elif opt in ("-d"):
+ root = arg
+
+ for item in glob.glob(root+"/*"):
+ lastmodDate = os.path.getmtime(item)
+ tdiff= now-lastmodDate
+ #print tdiff, offset
+
+ if tdiff > offset:
+ filecount+=1
+ print filecount
+if __name__ == "__main__":
+ main(sys.argv[1:])
diff --git a/abs/mv-core/MythVantage-system/firstboot.sh b/abs/mv-core/MythVantage-system/firstboot.sh
new file mode 100755
index 0000000..366874a
--- /dev/null
+++ b/abs/mv-core/MythVantage-system/firstboot.sh
@@ -0,0 +1,44 @@
+#!/bin/bash
+. ~/.configured
+ATTEMPT=0
+function try_smolt {
+ ((ATTEMPT=ATTEMPT+1))
+ echo $ATTEMPT
+ status=$(echo "jump mythsmolt" | telnet localhost 6546 2>&1)
+ echo $status|grep -q refused
+ status=$?
+ if [ $status != 0 ]
+ then
+ fb_status=0
+ echo "FB=NO" > ~/.configured
+ fi
+ if [ $ATTEMPT = 200 ]
+ then
+ fb_status=0
+ fi
+}
+
+if [ ! -e /tmp/debug ]
+then
+ if [ ! -e /tmp/nomfe ]
+ then
+ if [ ! -e ~/.mythtv/pub-uuid ]
+ then
+ if [ x$FB != xNO ]
+ then
+ fb_status=4
+ while [ $fb_status != 0 ]
+ do
+ try_smolt
+ if [ $fb_status != 0 ]
+ then
+ sleep 1
+ fi
+ done
+ fi
+ fi
+ fi
+fi
+
+
+
diff --git a/abs/mv-core/MythVantage-system/grabkey.py b/abs/mv-core/MythVantage-system/grabkey.py
new file mode 100755
index 0000000..b8bc059
--- /dev/null
+++ b/abs/mv-core/MythVantage-system/grabkey.py
@@ -0,0 +1,109 @@
+#!/usr/bin/python
+#polls the hobbit server for ghost clients. If it finds ghosts it will make a new bb-hosts file
+#with the new clients.
+#Will not add duplicate clients
+#return code of 0 means a new file was written, anything else is an error or no inserts occured
+import urllib2
+import string
+import sys
+import os
+
+def readkeyfile():
+ global keylist
+ try:
+ infile = open('/data/home/mythtv/.ssh/authorized_keys', 'r')
+ except(IOError), e:
+ keylist=''
+ else:
+ keylist = infile.readlines()
+ infile.close()
+
+
+def grabkey(server):
+ global numberlines
+ global mbekey
+ url="http://" + server + ":1337/serverkey.cgi"
+
+ try:
+ f = urllib2.urlopen(url)
+ except urllib2.HTTPError, e:
+ if e.code != 200:
+ print 'error find key'
+ sys.exit(1)
+ else:
+ mbekey = f.readlines()
+ f.close()
+ numberlines = len(mbekey)
+ #print mbekey
+
+
+def makenewkeyfile():
+ global keylist
+ global mbekey
+ global numberlines
+ global numinserts
+ numinserts=0
+ outlist = []
+ for item in keylist:
+ if item not in outlist:
+ outlist.append(item)
+
+ for item in mbekey:
+# line = item.rstrip()
+ #nline = "%s #" % (line)
+ #nline = nline + '\n'
+ if item not in outlist:
+ outlist.append(item)
+ #print "adding: " + item
+ numinserts = numinserts + 1
+ if numinserts > 0:
+ try:
+ outfile = open("/data/home/mythtv/.ssh/authorized_keys","w")
+ except(IOError), e:
+ os.system('mkdir -p /data/home/mythtv/.ssh')
+ outfile = open("/data/home/mythtv/.ssh/authorized_keys","w")
+ for i in outlist:
+ outfile.write(i + '\n' )
+ outfile.close
+ os.system('chown -R mythtv /data/home/mythtv/.ssh')
+ os.system('chmod 700 /data/home/mythtv/.ssh/authorized_keys')
+
+
+global infile
+global keylist
+global numberlines
+global numinserts
+global mbekey
+readkeyfile()
+#print numberlines
+#print mbekey
+
+try:
+ infile = open('/etc/systemconfig', 'r')
+except(IOError), e:
+ sys.exit(1)
+else:
+ keylist = infile.readlines()
+ infile.close()
+for item in keylist:
+ if item.startswith("dbhost"):
+ itemlist=item.split("=")
+ server=itemlist[1].strip()
+ server=server.rstrip()
+ server=server.strip('"')
+ server=server.rstrip('"')
+grabkey(server)
+
+
+if numberlines > 0:
+ makenewkeyfile()
+else:
+ print "nothing to add"
+
+
+if numinserts < 1:
+ sys.exit(1)
+else:
+ sys.exit(0)
+
+
diff --git a/abs/mv-core/MythVantage-system/imdb-bulk-update.pl b/abs/mv-core/MythVantage-system/imdb-bulk-update.pl
new file mode 100644
index 0000000..87a9668
--- /dev/null
+++ b/abs/mv-core/MythVantage-system/imdb-bulk-update.pl
@@ -0,0 +1,720 @@
+#!/usr/bin/perl
+################################################################################
+# Wrapper for imdb.pl tool for bulk movie metadata updates for mythdora #
+# #
+# 08/28/2007 #
+# Ryan Pisani <mythdora@thepisanis.com> #
+################################################################################
+#Parts of this were adopted from imdbbatchupdater.pl which in turn uses much #
+#of the original imdb.pl. This is a simpler wrapper to maintain and it utilizes#
+#the standard imdb.pl shipped with mythvideo. #
+################################################################################
+#version: 1.0 : Initial roll-out works with imdb.pl 1.3 #
+#version: 1.1 : Added some further error checking #
+#version: 1.2 : Added -Manual flag for manual entering of IMDBIDs #
+#version: 1.3 : Added -fileup metadata update for newly added/removed movies #
+#version: 1.4 : Duplicate menu will default to first entry in the returned #
+# list. #
+# Added -Exclude flag to mark any items with non-imdb match with #
+# a bogus imdb number to be skipped in later searches. #
+# Added -help for extended examples in usage #
+#version: 1.5 : Added -Folder flag to overide videopath for new video search #
+# Fixed hash sort of new files so that entries with more than 1 #
+# entry in the DB will not be "true" in new check. #
+# Fixed a bug in the newvideo find where multiples were added #
+# Fixed a bug in the newvideo find where multiples were added #
+#version:1.5.1: Added showlevel fix in -Fileup to fix incorrect default showlvl#
+#version: 1.6 : Found bug in -Title lookups where title was updated blank #
+################################################################################
+use strict;
+use DBI;
+use Getopt::Long;
+use File::Find;
+use File::Basename;
+use Sys::Hostname;
+
+#Set Global Path For Execution
+$ENV{PATH}="/bin:/usr/sbin:/usr/bin:/sbin";
+
+#Defaults & global declarations here
+my $dbhost = '127.0.0.1';
+my $db = 'mythconverg';
+my $dbuser = 'mythtv';
+my $dbpass = 'mythtv';
+my $imdbnum; #imdbnum set from imdb.pl
+my $movie; #movie title set from query
+my $intid; #incremental id for videometadata table
+my @FAILEDLOOKUP; #array to store failed lookups
+my $imdb= '/usr/local/share/mythtv/mythvideo/scripts/imdb.pl';
+my $posters; #coverart directory
+my $new; #-N flag
+my $all; #-A flag
+my $sqlstat; #used to store sql statments
+my $stitle; #grabbed from input for title search
+my $dup; #set if dupskip is on
+my $manual; #set if manual is on
+my $host = hostname; #the executing hosts machine name
+my $fileup; #set if fileup is on
+my $exclude; #set if exclude is on
+my $currentimdb; #dbs current imdb number before lookup is set
+my $help; #pass to usage if help flag i set for extended
+my $folder; #set if -Folder is set to overide DB for Videopath
+my $title; #Global Title to carry
+
+
+GetOptions("Posters=s"=>\$posters,
+ "A"=>\$all,
+ "N"=>\$new,
+ "Fileup"=>\$fileup,
+ "help"=>\$help,
+ "Exclude"=>\$exclude,
+ "Manual"=>\$manual,
+ "Dupskip"=>\$dup,
+ "Title=s"=>\$stitle,
+ "Folder=s"=>\$folder,
+ "Host=s"=>\$dbhost,
+ "User=s"=>\$dbuser,
+ "Imdb=s"=>\$imdb,
+ "Password=s"=>\$dbpass);
+
+
+if ( $help eq '1' ) {
+
+ #Show extended usage
+ usage($help);
+
+}
+
+#One quick sanity check here for anyone looking to -A and -Exclude together
+
+if ( $exclude eq '1' && $all eq '1' ) {
+
+print <<STOP;
+
+**********************************Warning***************************************
+
+ -Exclude and -A are not recommended to be used together. If they are
+ used together you may find yourself seriously pissed off.
+
+ -Exclude and -A will override any you may have previously entered in
+ manually because IMDB lookup may have failed. Furthermore the files
+ will go back to no-data and excluded from future searches.
+
+ It is in your best interest to use -Exclude only with -N
+
+ You have been warned.
+
+**********************************Warning***************************************
+
+Hit [Enter] to exit, or type 'go' to continue with -Exclude and -A:
+STOP
+
+chomp(my $choice=<STDIN>);
+
+ if ( "$choice" ne "go" ) {
+
+ exit;
+
+ }
+
+}
+
+
+#if the file update flag is set we'll update the db videometadata before continuing
+if ( $fileup eq '1' ) {
+
+ findnewvids($folder);
+
+}
+
+#Now parse sql options in an order that we care about
+if ( $stitle ne "" ) {
+
+ $sqlstat = "select inetref, filename, intid from videometadata where title like \"%$stitle%\"";
+
+}
+
+elsif ( $all eq '1') {
+
+ $sqlstat = "select inetref, filename, intId from videometadata order by title";
+
+}
+
+elsif ( $new eq '1' ) {
+
+ $sqlstat = "select inetref, filename, intId, title from videometadata where inetref=\"00000000\" order by title";
+
+}
+
+else {
+
+ usage();
+
+}
+
+
+#Check to see if posters have been defined if not grab from db
+if ( $posters eq "" ) {
+
+ $posters=getposter();
+
+}
+
+#Check for the posters directory & perms
+if ( ! -d "$posters" || ! -w "$posters" ) {
+
+ die "\nError: $posters doesn't exist or is not writable\n\n";
+
+}
+
+
+#Check for imdb.pl script or the one defined
+if ( ! -x "$imdb" ) {
+
+ die "Error: $imdb.pl is not executable\n";
+
+}
+
+
+#print "$sqlstat\n";
+
+#Prepare the sql connection
+my $dbh = DBI->connect("dbi:mysql:$db:$dbhost","$dbuser","$dbpass");
+
+my $sth = $dbh->prepare($sqlstat);
+
+$sth->execute || die "SQL statement failed";
+
+while (my @row=$sth->fetchrow_array) {
+
+ #Grab current imdb number in DB
+ chomp($currentimdb = "$row[0]");
+
+ #Grab incremental id in DB for rewrite
+ chomp($intid = "$row[2]");
+
+ lc($movie = `basename "$row[1]"`);
+
+ #Grab file id in DB for search
+ chomp($movie);
+
+ #Grab title data
+ chomp(my $title= "$row[3]");
+
+ sep();
+
+ #print "current:$currentimdb , intid:$intid, movie: $movie, title: $title\n";
+ #check to see if -Manual flag is set
+ if ( $manual ne '1' ) {
+
+ print "Searching for IMDB movieID for $movie\n";
+ chomp(($imdbnum)=(split /:/, `$imdb -M "$movie"`) [0] );
+
+ }
+ else {
+
+ print "Enter the IMDB movieID for $movie\n";
+ print "Enter the corresponding imdb number([Enter] to skip):";
+ chomp($imdbnum=<STDIN>);
+ }
+
+ #We'll check the imdb ids here. If they're longer than expected we assume
+ #it to be more than one return
+ if (length($imdbnum) > '8') {
+
+ #Check the multiple entries and skip if flag is set
+ if ($dup ne '1') {
+
+ my @TITLES=`$imdb -M "$movie"`;
+
+ print "More than one match for $movie exists at IMDB\n";
+
+ for (my $i=0;$i<=$#TITLES;$i++) {
+
+ print "$i) $TITLES[$i]";
+
+ }
+
+ print "Select a title ([0] Default, [x] to skip, [m] manual imdb number):";
+ chomp(my $choice=<STDIN>);
+
+ #print "my choice $choice\n";
+ if ($choice eq "") {
+
+ $choice="0";
+ chomp($imdbnum=(split /:/, $TITLES[$choice]) [0]);
+ }
+
+ elsif ($choice eq "x") {
+
+ $imdbnum="";
+ push(@FAILEDLOOKUP, "$movie");
+
+
+ }
+
+ elsif ($choice =~ /[0-9]/) {
+
+ chomp($imdbnum=(split /:/, $TITLES[$choice]) [0]);
+ #print $imdbnum;
+
+ }
+
+ elsif ($choice eq "m") {
+
+ print "Enter IMDB number: ";
+ chomp($imdbnum=<STDIN>);
+ }
+
+ else {
+
+ die "Not a valid selection\n";
+
+ }
+ }
+ else {
+
+ $imdbnum="";
+ push(@FAILEDLOOKUP, "$movie");
+ }
+
+ }
+
+ #Else check for failed lookups and -Exclude flag
+ elsif ( "$imdbnum" eq "" && "$exclude" eq "1" && "$currentimdb" eq "00000000" ) {
+
+ #We set a new bogus one to be ignored in later -N searches
+ $imdbnum="99999999";
+
+ push(@FAILEDLOOKUP, "$movie");
+
+ }
+
+
+ #Log the failed lookups here for later
+ elsif ( "$imdbnum" eq "" ) {
+
+ push(@FAILEDLOOKUP, "$movie");
+
+ #print $#FAILEDLOOKUP;
+
+ }
+
+
+
+ #now check for imdbnumber from query
+ if ( "$imdbnum" ne "" ) {
+
+ my $coverfile;
+ my $year;
+ my $director;
+ my $plot;
+ my $userrating;
+ my $rating;
+ my $time;
+
+ #If bogus is set do this first
+ if ("$imdbnum" eq "99999999") {
+
+ $coverfile="No Cover";
+ $year="1895";
+ $director="Unknown";
+ $plot="Unknown";
+ $userrating="0";
+ $rating="NR";
+ $time="0";
+ }
+
+ else {
+
+ #Now lets fine the cover image
+ #print "Going to use $imdb -P $imdbnum\n";
+ chomp(my $cover=`$imdb -P "$imdbnum"`);
+ #print "$cover";
+
+ if ($cover =~ /jpg/) {
+
+ $coverfile="$posters/$imdbnum.jpg";
+ print "Retrieving $cover\n";
+ system("wget $cover -O $coverfile >/dev/null 2>&1");
+
+ }
+ else {
+
+ $coverfile="No Cover";
+
+ }
+
+
+ #Now get the rest of the imdb data
+ undef my @TEMPDATA;
+ @TEMPDATA=`$imdb -D $imdbnum`;
+ chomp(($title)=(split /Title:/, $TEMPDATA[0])[1]);
+ $title=~s/"//g;
+ chomp(($year)=(split /Year:/, $TEMPDATA[1])[1]);
+ chomp(($director)=(split /Director:/, $TEMPDATA[2])[1]);
+ chomp(($plot)=(split /Plot:/, $TEMPDATA[3])[1]);
+ $plot=~s/"//g;
+ chomp(($userrating)=(split /UserRating:/, $TEMPDATA[4])[1]);
+ chomp(($rating)=(split /MovieRating:/, $TEMPDATA[5])[1]);
+ chomp(($time)=(split /Runtime:/, $TEMPDATA[6])[1]);
+
+ #print $#TEMPDATA;
+ #print "$title\n $year\n $director\n $plot\n $userrating\n $rating\n $time\n";
+ }
+
+
+
+ #Now let's write that data into the db
+ print "Updating videometadata with new information\n";
+ my $sqlstat="update videometadata set title=\"$title\", year=\"$year\", director=\"$director\", plot=\"$plot\", userrating=\"$userrating\", coverfile=\"$coverfile\", rating=\"$rating\", length=\"$time\", inetref=\"$imdbnum\" where intid=\"$intid\"";
+
+
+ my $sth = $dbh->prepare($sqlstat);
+
+ $sth->execute || die "SQL statement failed\n";
+
+
+ }
+
+}
+
+if ( $#FAILEDLOOKUP >= 0 ) {
+
+print "\n\nThe following videos had imdb lookup errors:\n @FAILEDLOOKUP\n";
+
+}
+
+
+sub usage {
+
+ my $help=$_[0];
+ my $comm=basename($0);
+
+print <<STOP;
+
+usage: $comm -[Required] -[Optional] -[Host] parameters
+
+ Required parameters:
+ -A Get IMDB data for ALL movies in database
+ -N Get IMDB data for movies with no IMDBID in database
+ -Title Get IMDB data for movie(s) matching a quoted pattern
+
+ Optional parameters:
+ -Exclude Mark entries with no result with imdb placeholder (DEFAULT: OFF)
+ -Fileup Search for new/removed videos and update database (DEFAULT: OFF)
+ -Manual Query for manual IMDB number for each title (DEFAULT: OFF)
+ -Dupskip Ignore the videos that find multiple imdb results (DEFAULT: OFF)
+
+ Host parameters:
+ -Host Specify a database host (DEFAULT:$dbhost)
+ -User Specify a database user (DEFAULT:$dbuser)
+ -Password Specify a database password (DEFAULT:$dbpass)
+ -Imdb Specify path to a working imdb.pl (DEFAULT:$imdb)
+ -Posters Specify a cover art directory if different from entry in DB
+ -Folder Specify a video folder to search if differs from entry in DB
+
+ Example:
+ $comm -N -Host myhostname -User mythuser -Password mythpass
+
+ Use $comm -help for extended examples
+STOP
+
+if ( $help eq '1' ) {
+print <<STOP;
+
+ New file check with IMDB lookup and non-local DB:
+ $comm -N -Fileup -Host 192.168.1.50
+
+ New file check with IMDB lookup and future exclusion for non-match:
+ $comm -N -Fileup -Exclude
+
+ New file check, IMDB lookup for ALL movies, skipping multiple IMDB returns:
+ $comm -A -Fileup -Dupskip
+
+ Title search with Manual IMDB entry
+ $comm -Title "Austin Powers" -Manual
+STOP
+}
+exit;
+}
+
+
+#Get Posters directory from host if possible out of settings
+sub getposter {
+
+ my $sqlstat="select data from settings where hostname=\'$host\' and value=\'VideoArtworkDir\'";
+
+ my $dbh = DBI->connect("dbi:mysql:$db:$dbhost","$dbuser","$dbpass") || die usage();
+
+ my $sth = $dbh->prepare($sqlstat);
+
+ $sth->execute || die "SQL statement failed";
+
+ chomp(my $posters=$sth->fetchrow_array);
+
+ return($posters);
+
+}
+
+#Routine to locate new & removed videos and update videometadata accordingly
+sub findnewvids {
+
+ my $folder=$_[0];
+ my $videopath;
+
+ sep();
+
+
+ if ( $folder eq "" ) {
+
+ print "Retrieving Video Path for this $host from $db.settings\n";
+
+ #First get video directory path from settings database for exectuting host
+ my $sqlstat="select data from settings where hostname=\'$host\' and value=\'VideoStartupDir\'";
+
+ my $dbh = DBI->connect("dbi:mysql:$db:$dbhost","$dbuser","$dbpass");
+
+ my $sth = $dbh->prepare($sqlstat);
+
+ $sth->execute || die "SQL statement failed";
+
+ chomp($videopath=$sth->fetchrow_array);
+
+ }
+ else {
+ print "Setting Video Path with manual override to $folder\n";
+ chomp($videopath="$folder");
+
+ }
+ sep(1);
+
+ #Now let's get the ignored file types so that we can truly ignore any overrides
+ print "Retrieving ignored files extensions from $db.videometadata\n";
+
+ $sqlstat = "select extension from videotypes where f_ignore=\"1\" order by extension";
+
+ my $dbh = DBI->connect("dbi:mysql:$db:$dbhost","$dbuser","$dbpass");
+
+ my $sth = $dbh->prepare($sqlstat);
+
+ $sth->execute || die "SQL statement failed";
+
+ my @ITYPES;
+ #put the ignored extensions found in the DB into an array
+ while (my @row=$sth->fetchrow_array) {
+
+ push(@ITYPES,"@row");
+
+ }
+
+ sep(1);
+ #Now look at allowed extensions and create an array to use when finding files
+ #We'll append these to a list of pre-defined ones below
+
+ print "Retrieving allowable file extensions from $db.videometadata\n";
+
+ $sqlstat = "select extension from videotypes where f_ignore=\"0\" order by extension";
+
+ my $dbh = DBI->connect("dbi:mysql:$db:$dbhost","$dbuser","$dbpass");
+
+ my $sth = $dbh->prepare($sqlstat);
+
+ $sth->execute || die "SQL statement failed";
+
+
+ #Array of commonly allowed video extensions
+ my @TYPES=(".wmv",".avi",".vob",".iso",".bin",".mpeg",".mpg",".mp4",".mov");
+
+ #put the extensions found in the DB into an array
+ while (my @row=$sth->fetchrow_array) {
+
+ if ( "@TYPES" !~ /@row/ ) {
+
+ push(@TYPES,".@row");
+
+ }
+
+
+ }
+
+ my @FTYPES;
+
+ #Pull any ignored extensions out of final file type search string
+ foreach (@TYPES) {
+
+ if ( "@ITYPES" !~ /$_/ ) {
+
+ push(@FTYPES,"($_)\\Z|");
+
+ }
+
+
+ }
+
+ my $types=join"",@FTYPES;
+
+ #Take the last | off of the search string
+ chop($types);
+
+ sep(1);
+
+ #Search for all files that match our allow file extension patterns as defined in $types
+ my @FILES;
+ find (sub{
+
+ my $file=$File::Find::name ;
+ if ( $file =~ /$types/i) {
+ push(@FILES,"$file");
+ #print "$file\n";
+ }
+
+ }, "$videopath");
+
+ @FILES=sort(@FILES);
+
+ my $totalfiles="$#FILES" + 1;
+
+ if ($totalfiles gt '1') {
+
+ print "Found $totalfiles total videos in $videopath\n";
+ sep(1);
+
+ }
+ else {
+
+ die "No video files were found in $videopath\n";
+
+
+ }
+
+ #Now lets see what's in videometadata
+ print "Retrieving a list of known videos from $db.videometadata\n";
+
+ sep(1);
+
+ $sqlstat = "select filename from videometadata where filename like \"%$videopath%\" order by filename";
+
+ my $dbh = DBI->connect("dbi:mysql:$db:$dbhost","$dbuser","$dbpass");
+
+ my $sth = $dbh->prepare($sqlstat);
+
+ $sth->execute || die "SQL statement failed";
+
+ #put those extensions found in the DB into an array
+
+ my @LISTINDB;
+ while (my @row=$sth->fetchrow_array) {
+
+ push(@LISTINDB,"@row");
+
+ }
+
+ print "Scrubbing the database for any videos that no longer exist in $videopath\n";
+
+ my @FILESINDB; #Database entries with an actual file associated
+ #Now scrub database entries for any files that are no longer present
+ foreach (@LISTINDB) {
+
+ if (! -e "$_") {
+
+ print "\nRemoving entry for $_ from database\n";
+
+ $sqlstat = "delete from videometadata where filename=\"$_\"";
+
+ my $dbh = DBI->connect("dbi:mysql:$db:$dbhost","$dbuser","$dbpass");
+
+ my $sth = $dbh->prepare($sqlstat);
+
+ $sth->execute || die "SQL statement failed";
+
+ }
+ else {
+
+ #Add to new scrubbed list
+ push(@FILESINDB, "$_");
+
+ }
+
+
+
+ }
+
+ sep();
+
+
+ my %count =();
+
+ my @FILESDIFF;
+ #Now well check to see what files differ between DB entries the Data
+ foreach my $element (@FILESINDB, @FILES) {
+
+ $count{$element}++;
+
+ }
+ foreach my $element (keys %count) {
+
+ if ( $count{$element} < 2 ) {
+
+ push(@FILESDIFF, $element);
+ print "$element\n";
+
+ }
+ }
+
+ #Now we tell the user how many updates to be made
+ my $totaldiff="$#FILESDIFF" + 1;
+
+ if ($totaldiff gt '0') {
+
+ print "Found a total of $totaldiff to be added to database\n";
+ sep (1);
+
+ }
+ else {
+
+ print "Found no new videos to be added to database\n";
+
+ }
+
+ #Now we need to grab just a title and populate the db with
+ foreach (@FILESDIFF) {
+
+ my $title=basename($_,@TYPES);
+
+ print "\nAdding entry for $_ to $db.videometadata\n";
+
+ $sqlstat = "insert into videometadata (title,director,rating,inetref,coverfile,filename,showlevel) values(\"$title\",\"Unknown\",\"NR\",\"00000000\",\"No Cover\",\"$_\",\"1\");";
+
+ my $dbh = DBI->connect("dbi:mysql:$db:$dbhost","$dbuser","$dbpass");
+
+ my $sth = $dbh->prepare($sqlstat);
+
+ $sth->execute || die "SQL statement failed";
+
+ }
+
+ #print "@FILESDIFF\n";
+
+
+
+}
+
+
+
+
+#Prints a easy on the eye separator
+sub sep {
+
+ if (defined $_[0]) {
+
+ print "=============================================================================\n";
+ sleep $_[0];
+ }
+ else {
+
+ print "=============================================================================\n";
+
+ }
+
+}
diff --git a/abs/mv-core/MythVantage-system/initial_db_run b/abs/mv-core/MythVantage-system/initial_db_run
new file mode 100644
index 0000000..0824c60
--- /dev/null
+++ b/abs/mv-core/MythVantage-system/initial_db_run
@@ -0,0 +1,24 @@
+#!/bin/bash
+. /etc/profile
+. /etc/systemconfig
+rundb=1
+
+if [ -f /var/log/mfdb.first.log ]
+then
+ #check exit code
+ rundb=`tail -1 /var/log/mfdb.first.log`
+fi
+
+if [ ! $rundb = 0 ]
+then
+ echo "Running 1st mythfilldatabase"
+ echo "Do not remove this file. This file is used to determine if mythfilldatabase needs to run before starting mythbackend" > /var/log/mfdb.first.log
+
+
+ /usr/local/bin/mythfilldatabase 2>&1 >> /var/log/mfdb.first.log
+
+ echo $? >> /var/log/mfdb.first.log
+fi
+
+
+
diff --git a/abs/mv-core/MythVantage-system/inittab b/abs/mv-core/MythVantage-system/inittab
new file mode 100644
index 0000000..caa0542
--- /dev/null
+++ b/abs/mv-core/MythVantage-system/inittab
@@ -0,0 +1,34 @@
+#
+# /etc/inittab
+#
+
+# Runlevels:
+# 0 Halt
+# 1(S) Single-user
+# 2 Not used
+# 3 Multi-user
+# 4 Not used
+# 5 X11
+# 6 Reboot
+
+id:3:initdefault:
+
+rc::sysinit:/etc/rc.sysinit
+rs:S1:wait:/etc/rc.single
+rm:2345:wait:/etc/rc.multi
+rh:06:wait:/etc/rc.shutdown
+su:S:wait:/sbin/sulogin -p
+
+c1:2345:respawn:/sbin/agetty 38400 vc/1 linux
+c2:2345:respawn:/sbin/agetty 38400 vc/2 linux
+c3:2345:respawn:/sbin/agetty 38400 vc/3 linux
+c4:2345:respawn:/sbin/agetty 38400 vc/4 linux
+c5:2345:respawn:/sbin/agetty 38400 vc/5 linux
+c6:2345:respawn:/sbin/agetty 38400 vc/6 linux
+
+ca::ctrlaltdel:/sbin/shutdown -t3 -r now
+
+x:5:respawn:/usr/bin/xdm -nodaemon
+
+SV:345:respawn:/usr/bin/svscan /service
+# End of file
diff --git a/abs/mv-core/MythVantage-system/load-modules-mythvantage.sh b/abs/mv-core/MythVantage-system/load-modules-mythvantage.sh
new file mode 100755
index 0000000..8382a29
--- /dev/null
+++ b/abs/mv-core/MythVantage-system/load-modules-mythvantage.sh
@@ -0,0 +1,32 @@
+#!/bin/bash
+#/usr/bin/load-modules-mythvantage.sh UNLOAD LCD
+. /etc/systemconfig
+
+case $1 in
+UNLOAD|unload )
+ MODULELIST=`grep /etc/modules.mythvantage $2`
+ for i in $MODULELIST
+ do
+ /sbin/rmmod $i
+ done
+
+ ;;
+
+ *) echo "- Loading MythVantage-modules"
+ #try to load the cx88 modules
+ if [ ! x$SystemType = xFrontend_only ]
+ then
+ /sbin/modprobe cx88-dvb 2>/dev/null
+ fi
+
+ if [ -f /etc/modules.mythvantage ]
+ then
+ while read line
+ do
+ module=`echo $line |cut -d# -f1`
+ /sbin/modprobe $module
+
+ done < /etc/modules.mythvantage
+ fi
+esac
+
diff --git a/abs/mv-core/MythVantage-system/mbegdbcommands.txt b/abs/mv-core/MythVantage-system/mbegdbcommands.txt
new file mode 100644
index 0000000..dda675b
--- /dev/null
+++ b/abs/mv-core/MythVantage-system/mbegdbcommands.txt
@@ -0,0 +1,8 @@
+handle SIGPIPE nostop noprint
+handle SIG33 nostop noprint
+set logging on
+set pagination off
+set args -v most
+run
+thread apply all bt full
+set logging off
diff --git a/abs/mv-core/MythVantage-system/mfegdbcommands.txt b/abs/mv-core/MythVantage-system/mfegdbcommands.txt
new file mode 100644
index 0000000..cf59068
--- /dev/null
+++ b/abs/mv-core/MythVantage-system/mfegdbcommands.txt
@@ -0,0 +1,8 @@
+handle SIGPIPE nostop noprint
+handle SIG33 nostop noprint
+set logging on
+set pagination off
+set args -d -v most
+run
+thread apply all bt full
+set logging off \ No newline at end of file
diff --git a/abs/mv-core/MythVantage-system/myth_mtc.py b/abs/mv-core/MythVantage-system/myth_mtc.py
new file mode 100755
index 0000000..faeee84
--- /dev/null
+++ b/abs/mv-core/MythVantage-system/myth_mtc.py
@@ -0,0 +1,139 @@
+#!/usr/bin/python
+
+
+import sys,popen2
+import optparse
+import re
+import socket
+import os
+import datetime,time
+
+
+
+try:
+ from MythTV import MythTV
+ mythtv = MythTV()
+except:
+ mythtv = None
+
+#print mythtv.db.getSetting( 'Theme', socket.gethostname())
+
+def optimize():
+ cursor = mythtv.db.cursor()
+ cursor.execute("SHOW tables")
+ result = cursor.fetchall()
+ ops=["REPAIR","OPTIMIZE","ANALYZE"]
+ for row in result:
+ ctable=row[0]
+ for op in ops:
+ print op,ctable
+ cmd= "%s table %s" %(op,ctable)
+ cursor.execute(cmd)
+
+
+def upcoming_check():
+ upcoming = mythtv.getUpcomingRecordings()
+ try:
+ show=str(upcoming[0])
+ show=show.strip()
+ showtime=show.partition("(")[2].strip(")")
+ now=time.time()
+ rec_time=time.strptime( showtime ,"%Y-%m-%d %H:%M:%S" )
+ r=time.mktime(rec_time)
+ time_diff= ( r - now ) / 60
+ except:
+ time_diff=100
+ show="No show"
+ if ( time_diff > 30) :
+ return True
+ else:
+ print show , "is upcoming in " , time_diff
+ return False
+
+
+def schemalock_check():
+ c = mythtv.db.cursor()
+ c.execute("select count(*) from schemalock")
+ results=c.fetchone()
+ schemalock=results[0]
+ if schemalock == 0:
+ return True
+ else:
+ print "schema is locked"
+ return False
+
+def job_check():
+ c = mythtv.db.cursor()
+ c.execute("select count(*) from jobqueue where status = 4")
+ results=c.fetchone()
+ jobs= results[0]
+ if jobs == 0 :
+ return True
+ else:
+ print " jobs are running"
+ return False
+
+
+def in_use():
+ c = mythtv.db.cursor()
+ c.execute("select count(*) from inuseprograms")
+ results=c.fetchone()
+ prginuse=results[0]
+ if prginuse == 0 :
+ return True
+ else:
+ print "programs in use"
+ return False
+
+def mfd_check():
+ ismfd=popen2.Popen3('/bin/ps cax|/bin/grep -v grep |/bin/grep mythfilldatabase')
+ ismfd.wait()
+ mfdIdle=ismfd.poll()
+ if mfdIdle == 0:
+ print "mythfilldatabase is running"
+ return False
+ else:
+ return True
+
+
+
+def idle_check():
+ if ( upcoming_check() and schemalock_check() and job_check() and in_use() and mfd_check() ):
+ idle=True
+ print "Myth is idle"
+ else:
+ idle=False
+ print "Myth is NOT idle"
+ return idle
+
+def run_stuff():
+ if idle_check():
+ print "Running optimize"
+ optimize()
+
+ print "Running backup"
+ os.system('/usr/MythVantage/bin/backup_job')
+
+ print "Running system_update"
+ os.system('/usr/MythVantage/bin/update_system')
+ continue_loop=False
+ else:
+ continue_loop=True
+ return continue_loop
+
+#---------------------------------
+starttime=time.time()
+ctin=True
+while ctin:
+ ctin=run_stuff()
+ if ctin:
+ time.sleep(600)
+ current_time=time.time()
+ if (current_time - starttime) > 10800 :
+ ctin = False
+ print "time exceeded (3 hours)"
+ exit(1)
+
+
+
+
diff --git a/abs/mv-core/MythVantage-system/myth_mtc.sh b/abs/mv-core/MythVantage-system/myth_mtc.sh
new file mode 100755
index 0000000..fc81254
--- /dev/null
+++ b/abs/mv-core/MythVantage-system/myth_mtc.sh
@@ -0,0 +1,12 @@
+#!/bin/bash
+. /etc/profile
+date=`date +%Y-%m-%d`
+myth_mtc.py > /var/log/$date/myth_mtc.log
+if [ $? = 0 ]
+then
+ echo "Finished" >> /var/log/$date/myth_mtc.log
+else
+ echo "Time Exceede" >> /var/log/$date/myth_mtc.log
+fi
+
+
diff --git a/abs/mv-core/MythVantage-system/notify.py b/abs/mv-core/MythVantage-system/notify.py
new file mode 100755
index 0000000..2e520c5
--- /dev/null
+++ b/abs/mv-core/MythVantage-system/notify.py
@@ -0,0 +1,29 @@
+#!/usr/bin/python
+# import MySQL module
+
+import MySQLdb
+import sys
+import getopt
+import socket
+import os
+
+def main(argv):
+ db = MySQLdb.connect(host="localhost", user="mythtv", passwd="mythtv", db="mythconverg")
+ # create a cursor
+ cursor = db.cursor()
+ # execute SQL statement
+ cursor.execute("SELECT DISTINCT(hostname) from settings where not hostname is NULL")
+ result = cursor.fetchall()
+ message = sys.argv[2]
+ messagetype = sys.argv[1]
+ port=str(5000)
+ if messagetype == "PH2":
+ port=str(5001)
+
+
+ message = message + " :::" + messagetype
+ for row in result:
+ os.system("/usr/bin/osdClient.pl " + row[0] + " " + port + " "+ "\"" + message + "\"" + "&" )
+
+if __name__ == "__main__":
+ main(sys.argv[1:])
diff --git a/abs/mv-core/MythVantage-system/optimize_mythdb.py b/abs/mv-core/MythVantage-system/optimize_mythdb.py
new file mode 100755
index 0000000..e7b35ed
--- /dev/null
+++ b/abs/mv-core/MythVantage-system/optimize_mythdb.py
@@ -0,0 +1,16 @@
+#!/usr/bin/python
+# import MySQL module
+import MySQLdb
+import socket
+import sys
+db = MySQLdb.connect(host="localhost", user="mythtv", passwd="mythtv", db="mythconverg")
+cursor = db.cursor()
+cursor.execute("SHOW tables")
+result = cursor.fetchall()
+ops=["REPAIR","OPTIMIZE","ANALYZE"]
+for row in result:
+ ctable=row[0]
+ for op in ops:
+ print op,ctable
+ cmd= "%s table %s" %(op,ctable)
+ cursor.execute(cmd)
diff --git a/abs/mv-core/MythVantage-system/playmedia.sh b/abs/mv-core/MythVantage-system/playmedia.sh
new file mode 100755
index 0000000..0b62655
--- /dev/null
+++ b/abs/mv-core/MythVantage-system/playmedia.sh
@@ -0,0 +1,53 @@
+#!/bin/bash
+
+DVD="xine --no-logo -B --no-splash --auto-play=pfhqd --post tvtime:method=Greedy2Frame,enable=1"
+#DVD="mplayer"
+#DVD="pdvd"
+
+VCD="xine"
+#VCD="mplayer"
+#VCD="pdvd"
+
+VIDEO="xine --no-logo -B --no-splash --auto-play=pfhq --post tvtime:method=Greedy2Frame,enable=1"
+#VIDEO="mplayer"
+CD="xmms /media/removeable"
+
+TYPE=$1
+shift
+
+UNMOUNT=0
+case $TYPE in
+ dvd|DVD )
+ PLAYCMD="$DVD"
+ ;;
+ vcd|VCD )
+ PLAYCMD="$VCD"
+ ;;
+ video|VIDEO )
+ PLAYCMD="$VIDEO"
+ EXT=isoa
+ if [ $EXT = "iso" ]
+ then
+ echo "mount logic"
+ UNMOUNT=1
+ fi
+ ;;
+ CD|cd )
+ PLAYCMD="$CD"
+ ;;
+
+ * ) echo "not a valid type"
+ exit 1
+
+ ;;
+esac
+
+
+
+$PLAYCMD "$@"
+
+if [ $UNMOUNT -eq 1 ]
+then
+ echo "umount logic here"
+fi
+
diff --git a/abs/mv-core/MythVantage-system/repo_sync.sh b/abs/mv-core/MythVantage-system/repo_sync.sh
new file mode 100755
index 0000000..e36d055
--- /dev/null
+++ b/abs/mv-core/MythVantage-system/repo_sync.sh
@@ -0,0 +1,11 @@
+#!/bin/sh
+echo "##################################################################################"
+echo "Starting sync"
+. /etc/profile
+. /etc/systemconfig
+if [ x$PKG_MIRROR = x"1" ]
+then
+$RSYNC jmeyer.us::current-STB /data/var/mirror/current-STB
+
+fi
+echo "##################################################################################"
diff --git a/abs/mv-core/MythVantage-system/restartfrontend.sh b/abs/mv-core/MythVantage-system/restartfrontend.sh
new file mode 100755
index 0000000..5919974
--- /dev/null
+++ b/abs/mv-core/MythVantage-system/restartfrontend.sh
@@ -0,0 +1,4 @@
+#!/bin/bash
+echo "Restarting Frontend" | osd_cat -f -*-*-*-*-*-*-25-*-*-*-*-*-*-* -A center - p bottom &
+killall -9 mythfrontend
+killall -9 mythfrontend
diff --git a/abs/mv-core/MythVantage-system/restore_job.sh b/abs/mv-core/MythVantage-system/restore_job.sh
new file mode 100755
index 0000000..0d0bec7
--- /dev/null
+++ b/abs/mv-core/MythVantage-system/restore_job.sh
@@ -0,0 +1,39 @@
+#!/bin/bash
+backupfile=$1
+. /etc/profile
+BACKUPDIR=/data/database_backup
+RESTOREDIR=$BACKUPDIR/restore
+DIR=`echo $backupfile |cut -d. -f2`
+CSQL="create database mythconverg;"
+DSQL="drop database mythconverg; "
+MYSQL="mysql -u mythtv -pmythtv"
+
+
+
+mkdir $RESTOREDIR
+cp $BACKUPDIR/$backupfile $RESTOREDIR
+cd $RESTOREDIR && tar -xvf $backupfile && cd $DIR
+
+if [ -f mythconverg ]
+then
+ #drop the db
+ $MYSQL -e "$DSQL"
+ #create the db
+ $MYSQL -e "$CSQL"
+ #restore the database_backup
+ echo "Restoring the database $DIR"
+ $MYSQL mythconverg < mythconverg
+ if [ $? = 0 ]
+ then
+ echo "Done"
+ else
+ echo "An error occured"
+ fi
+ else
+ echo "couldn't file a file to restore"
+fi
+
+
+#cleanup
+rm -rf $RESTOREDIR/$DIR
+rm -f $RESTOREDIR/$backupfile \ No newline at end of file
diff --git a/abs/mv-core/MythVantage-system/saytime.sh b/abs/mv-core/MythVantage-system/saytime.sh
new file mode 100755
index 0000000..39e3599
--- /dev/null
+++ b/abs/mv-core/MythVantage-system/saytime.sh
@@ -0,0 +1,14 @@
+#!/bin/bash
+cd /opt/saytime
+if [ ! -e /tmp/timelock ]
+then
+ touch /tmp/timelock
+ ps -ef | grep osd_clock
+ if [ $? = 0 ]
+ then
+ killall -9 osd_clock
+ fi
+
+ date +%r |osd_cat -c green -f -adobe-courier-*-*-*-*-*-*-*-*-*-150-*-* &
+ rm /tmp/timelock
+fi
diff --git a/abs/mv-core/MythVantage-system/smolt.cron b/abs/mv-core/MythVantage-system/smolt.cron
new file mode 100644
index 0000000..e0ba37c
--- /dev/null
+++ b/abs/mv-core/MythVantage-system/smolt.cron
@@ -0,0 +1,11 @@
+#!/bin/bash
+. /etc/profile
+if [ -f /data/home/mythtv/.mythtv/hw-uuid ]
+then
+ cd /usr/local/share/mythtv/mythsmolt/scripts
+ touch /var/log/smolt.update
+ chown mythtv /var/log/smolt.update
+ random=$((RANDOM%2000))
+ sleep $random
+ su mythtv -c "./sendProfile.py -a" > /var/log/smolt.update
+fi
diff --git a/abs/mv-core/MythVantage-system/startfrontend b/abs/mv-core/MythVantage-system/startfrontend
new file mode 100755
index 0000000..ba22900
--- /dev/null
+++ b/abs/mv-core/MythVantage-system/startfrontend
@@ -0,0 +1,147 @@
+#!/bin/sh
+. /etc/profile
+. /etc/systemconfig
+. /etc/X11/STBWINDOWMANAGER
+
+xhost +local:
+xhost +127.0.0.1
+xset -dpms s off
+export MALLOC_CHECK_=0
+#killall -q -9 xsay &
+#rm -rf /tmp/xsay* &
+
+function lirc_check {
+ lcmd=`irsend LIST "" "" 2>&1 `
+ status=$?
+ if [ $status = 0 ]
+ then
+ rc=0
+ else
+ echo $lcmd |grep -q "Connection refused"
+ status=$?
+ if [ $status = 0 ]
+ then
+ echo "lirc_check: lircd is not running"
+ else
+ echo " lirc_check: lircd is running but no receiver found"
+ fi
+ rc=1
+ fi
+ return $rc
+}
+
+
+
+
+$STBWINDOWMANAGER &
+keylaunch &
+/usr/bin/tilda &
+/usr/X11R6/bin/unclutter -root -idle 0 -jitter 400 -noevents &
+/usr/bin/xvattr -a XV_COLORKEY -v 0
+/usr/local/bin/mtd &
+/usr/bin/nvidia-settings -l
+/usr/bin/nvidia-settings -a InitialPixmapPlacement=2
+
+
+#if [ x$ncidclient = "x1" ]
+#then
+# ncid --no-gui &
+#fi
+
+if [ -f /opt/vmware/bin32/vmware-user-wrapper ]
+then
+ /opt/vmware/bin32/vmware-user-wrapper &
+fi
+
+if [ x$ShowTips = "x1" ]
+then
+# xsay -t 10 "Alt+h list shortcuts"
+bash -c "sleep 6;osdClient.pl localhost 5000 'ALT+h for shortcuts:::SYS' "&
+
+fi
+
+
+#wait for lirc
+if [ x$HostLircWait = x1 ]
+then
+ lcheck=5
+ lirc_check
+ status=$?
+
+ while [[ ! $status = 0 && ! $lcheck = 0 ]]
+ do
+ bash -c "osdClient.pl localhost 5000 'Waiting on remote - $lcheck:::SYS' "&
+ sudo sv restart lircd ; echo "restart lircd"
+ sleep .5
+ lirc_check
+ status=$?
+ lcheck=$((lcheck - 1))
+ done
+
+
+fi
+
+
+
+
+
+if [ ! $SystemType = "Frontend_only" ]
+then
+ if [ ! -f ~/.configured ]
+ then
+ autocard.py -g &
+ MythVantage -b
+ #0 yes
+ #1 yes/autodetech
+ #2 no
+ STATUS=$?
+ if [ ! $STATUS = 2 ]
+ then
+ /usr/bin/backend_control.sh stop BE 127.0.0.1
+ /usr/local/bin/mythtv-setup
+ /usr/bin/backend_control.sh start BE 127.0.0.1
+ fi
+ touch ~/.configured
+ fi
+else
+ #touch file for FE only(mythsmolt)
+ touch ~/.configured
+fi
+
+
+if [ x"$UseMythWelcome" = "x1" ]
+then
+ STARTCMD="/usr/local/bin/mythwelcome"
+else
+ STARTCMD="/usr/local/bin/mythfrontend -d"
+fi
+
+echo "====================================================================="
+echo "Starting $STARTCMD"
+#spawn fb to start mythsmolt
+firstboot.sh &
+
+while [ x = x ]
+do
+ if [ -f /tmp/nomfe ]
+ then
+ sleep 120
+ else
+ if [ -f /tmp/debug ]
+ then
+
+ echo "using gbd/debug"
+ gdb /usr/local/bin/mythfrontend -x $MV_ROOT/mfegdbcommands.txt
+ bash -c "osdClient.pl localhost 5000 'Restart: mdb.txt.mythfrontend:::SYS' "&
+ mv gdb.txt gdb.txt.mythfrontend
+ sleep 10
+
+ else
+ killall -9 irexec
+ /usr/bin/irexec &
+ $STARTCMD 2>&1
+ fi
+ fi
+echo "_______________________________________________________"
+done
+
diff --git a/abs/mv-core/MythVantage-system/update_system b/abs/mv-core/MythVantage-system/update_system
new file mode 100755
index 0000000..563ac22
--- /dev/null
+++ b/abs/mv-core/MythVantage-system/update_system
@@ -0,0 +1,52 @@
+#!/bin/bash
+
+echo "##################################################################################"
+echo "Starting update"
+. /etc/profile
+
+if [ x$1 = x ]
+then
+ . /etc/systemconfig
+else
+Hostupdateplan=$1
+fi
+
+
+case $Hostupdateplan in
+ "Myth_only")
+ echo "updating myth packages"
+ postfix=`cat $INSTALL_DIR/usr/local/share/mythtv/.releasetype`
+ for mythl in mythphone mytharchive mythbrowser mythnews mythgame mythflix mythweather mythcontrols mythgallery mythmovietime mythmusic mythsmolt mythvideo mythweb mythtv
+ do
+ mythlist="$mythlist $mythl$postfix"
+ done
+
+ pacman -Sy
+ list=`pacman -Qu $pkg |grep Targets`
+ for pkg in STB-system live-installer $mythlist
+ do
+ echo $list|grep -q $pkg
+ if [ $? = 0 ]
+ then
+ echo "Updating $pkg"
+ pacman --noconfirm -S $pkg
+ else
+ echo "$pkg is up to date"
+ fi
+ done
+ ;;
+ "All")
+ echo "updating ALL packages"
+ pacman -Sy
+ pacman --noconfirm -Sfu
+ ;;
+ "None")
+ echo "updating NO packages"
+ ;;
+ *)
+ echo "unkown plan $Hostupdateplan"
+ ;;
+esac
+
+
+echo "##################################################################################"
diff --git a/abs/mv-core/MythVantage-system/update_system_all b/abs/mv-core/MythVantage-system/update_system_all
new file mode 100755
index 0000000..26205bd
--- /dev/null
+++ b/abs/mv-core/MythVantage-system/update_system_all
@@ -0,0 +1,10 @@
+#!/bin/bash
+results=`cat /data/srv/hobbit/server/etc/bb-hosts|grep -v ^#|awk '{print $2}' `
+#echo $results
+for i in $results
+do
+ echo "$i"
+ echo "-------------------------------------------"
+ sudo /usr/bin/func $i call pacman update_system $1
+ ssh -o StrictHostKeyChecking=no -i /data/srv/.nobody_ssh/id_dsa mythtv@$i "sudo /usr/bin/update_system $1"
+done
diff --git a/abs/mv-core/MythVantage-system/wmaker b/abs/mv-core/MythVantage-system/wmaker
new file mode 100644
index 0000000..c66f5b6
--- /dev/null
+++ b/abs/mv-core/MythVantage-system/wmaker
@@ -0,0 +1,2 @@
+/usr/local/bin/onscreend &
+/usr/bin/wmaker