summaryrefslogtreecommitdiffstats
path: root/abs/core-testing/LinHES-config/ir_config.sh
diff options
context:
space:
mode:
Diffstat (limited to 'abs/core-testing/LinHES-config/ir_config.sh')
-rw-r--r--abs/core-testing/LinHES-config/ir_config.sh193
1 files changed, 193 insertions, 0 deletions
diff --git a/abs/core-testing/LinHES-config/ir_config.sh b/abs/core-testing/LinHES-config/ir_config.sh
new file mode 100644
index 0000000..670f9fa
--- /dev/null
+++ b/abs/core-testing/LinHES-config/ir_config.sh
@@ -0,0 +1,193 @@
+function include_lirc () {
+ config_file=$1
+ include_file=$2
+ grep -q ${include_file} ${config_file}
+ if [ $? = 0 ]
+ then
+ echo ${include_file} already present
+ else
+ echo "include \"${include_file}\"" >> $config_file
+ fi
+
+}
+
+
+
+function setup_ir_remote {
+ case $Remotetype in
+ no_remote) echo "No remote selected"
+ daemon_remove="lircd $daemon_remove"
+ ;;
+
+ tinker) echo "Remote in tinker mode"
+ ;;
+
+ *) echo "Start of ir_remote setup"
+ #make backup copy
+ mv ${BASE}/etc/lircd.conf ${BASE}/etc/lircd.conf.`date +%Y-%m-%d-%H-%M`
+ mv ${BASE}/etc/lircrc ${BASE}/etc/lircrc.`date +%Y-%m-%d-%H-%M`
+ cd $TEMPLATES/remotes/$Remotetype
+ for i in lircd*
+ do
+ include_lirc ${BASE}/etc/lircd.conf $TEMPLATES/remotes/$Remotetype/$i
+ done
+
+ for i in lircrc*
+ do
+ include_lirc ${BASE}/etc/lircrc $TEMPLATES/remotes/$Remotetype/$i
+ done
+
+ chmod 755 /etc/lircrc
+ daemon_add="lircd $daemon_add"
+ #standard location for mythtv lircrc
+ if [ ! -e /home/mythtv/.mythtv/lircrc ]
+ then
+ if [ ! -d /home/mythtv/.mythtv ]
+ then
+ mkdir /home/mythtv/.mythtv
+ chown mythtv:mythtv /home/mythtv/.mythtv
+ fi
+ ln -s /etc/lircrc /home/mythtv/.mythtv/lircrc 2> /dev/null
+ fi
+ #standard location for lircrc
+ if [ ! -e /home/mythtv/.lircrc ]
+ then
+ ln -s /etc/lircrc /home/mythtv/.lircrc 2> /dev/null
+ fi
+ echo "Sending hup to lircd"
+ sv hup lircd
+ ;;
+ esac
+
+}
+function setup_ir_receiver () {
+ echo "setup_ir_receiver"
+ case $ReceiverType in
+ Serial) echo "setup serial lirc"
+ sed -i -e '/.*#lirc/d' ${BASE}/etc/modules.mythvantage
+ echo "lirc_serial #lirc" >> ${BASE}/etc/modules.mythvantage
+ 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
+ load-modules-mythvantage.sh
+ ;;
+ Hauppauge) echo "setup hauppauge reciever (lirc_i2c)"
+ sed -i -e '/.*#lirc/d' ${BASE}/etc/modules.mythvantage
+ echo "lirc_i2c #lirc" >> ${BASE}/etc/modules.mythvantage
+ cp_and_log $TEMPLATES/modules/lirc_i2c.conf ${BASE}/etc/modprobe.d/lirc_i2c.conf
+ rmmod lirc_i2c 2>/dev/null
+ load-modules-mythvantage.sh
+ ;;
+ *) sed -i -e '/.*#lirc/d' ${BASE}/etc/modules.mythvantage
+ ;;
+ esac
+
+
+}
+
+function setup_lcd () {
+ case x$LCDtype in
+ xtinker) echo "do nothing"
+ ;;
+ xno_lcd) echo "disabling lcd"
+ sv down lcdd
+ 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_and_log $TEMPLATES/LCD/$LCDtype/LCDd.conf /etc
+ # install="lcdproc $install"
+ daemon_add="lcdd $daemon_add"
+ load-modules-mythvantage.sh
+ RESTART_FE="true"
+ RESTART_LCD="true"
+ fi
+ #check if lirc capable,if so then call setupremote
+ #if not in tinker mode check for remote
+ if [ ! x$Remotetype = xtinker ]
+ then
+ if [ -f $TEMPLATES/LCD/$LCDtype/lircrc ]
+ then
+ cd $TEMPLATES/LCD/$LCDtype
+ for i in lircd*
+ do
+ include_lirc ${BASE}/etc/lircd.conf $TEMPLATES/LCD/$LCDtype/$i
+ done
+
+ for i in lircrc*
+ do
+ include_lirc ${BASE}/etc/lircrc $TEMPLATES/LCD/$LCDtype/$i
+ done
+ cd -
+ fi
+ fi
+ ;;
+ esac
+}
+
+function setup_blaster_proto () {
+ for i in `seq $Hostnumblaster`
+ do
+ TEMP=HostTransmitproto_$i
+ eval proto=\$${TEMP}
+ if [ -f $TEMPLATES/transmit/${proto}/lircd.conf ]
+ then
+ include_lirc ${BASE}/etc/lircd.conf $TEMPLATES/transmit/${proto}/lircd.conf
+ fi
+ done
+ #--------------------------------REVISIT THIS------------------------
+ #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
+}
+
+function setup_blaster_transmiter () {
+ echo "setup_blaster_transmiter"
+ #if it's Reciever type, then these modules have already been loaded.
+ if [ ! x$HostBlasterType = xReceiver ]
+ then
+ case $HostBlasterType in
+ Serial) echo "setup serial lirc blaster"
+ sed -i -e '/.*#blaster/d' ${BASE}/etc/modules.mythvantage
+ echo "lirc_serial #blaster" >> ${BASE}/etc/modules.mythvantage
+ load-modules-mythvantage.sh
+ ;;
+ Hauppauge) echo "setup hauppauge blaster (lirc_i2c)"
+ sed -i -e '/.*#blaster/d' ${BASE}/etc/modules.mythvantage
+ echo "lirc_i2c #blaster" >> ${BASE}/etc/modules.mythvantage
+ cp_and_log $TEMPLATES/modules/lirc_i2c.conf ${BASE}/etc/modprobe.d/lirc_i2c.conf
+ rmmod lirc_i2c 2>/dev/null
+ load-modules-mythvantage.sh
+ ;;
+ *) sed -i -e '/.*#lirc/d' ${BASE}/etc/modules.mythvantage
+ ;;
+ esac
+ fi
+
+}
+
+function setupir () {
+ if [ ! x$Remotetype = xtinker ]
+ then
+ setup_ir_remote
+ setup_ir_receiver
+ setup_blaster_proto
+ setup_blaster_transmiter
+ fi
+ setup_lcd
+} \ No newline at end of file