diff options
Diffstat (limited to 'abs/core')
| -rwxr-xr-x | abs/core/runit-scripts/PKGBUILD | 2 | ||||
| -rwxr-xr-x | abs/core/runit-scripts/runitscripts/services/remotes/run | 186 | 
2 files changed, 101 insertions, 87 deletions
| diff --git a/abs/core/runit-scripts/PKGBUILD b/abs/core/runit-scripts/PKGBUILD index 9357169..48e469d 100755 --- a/abs/core/runit-scripts/PKGBUILD +++ b/abs/core/runit-scripts/PKGBUILD @@ -1,6 +1,6 @@  pkgname=runit-scripts  pkgver=2.1.1 -pkgrel=62 +pkgrel=63  pkgdesc="collection of startup scripts for runit"  url="http://smarden.org/runit/"  license="BSD" diff --git a/abs/core/runit-scripts/runitscripts/services/remotes/run b/abs/core/runit-scripts/runitscripts/services/remotes/run index 9d46b0e..0943a8e 100755 --- a/abs/core/runit-scripts/runitscripts/services/remotes/run +++ b/abs/core/runit-scripts/runitscripts/services/remotes/run @@ -17,99 +17,113 @@ fi  echo "`date` --- run started" >> $LOG -. /etc/systemconfig -stat_runit "Starting remotes" -[ -e /etc/sv/remotes/.runtime ] || mkdir -p /etc/sv/remotes/.runtime -[ -e /var/run/lirc ] || mkdir -p /var/run/lirc +#What is done in this file may not be enough to start your specific remote. +#If that is true of your remote place your remote startup commands in: +# /etc/runit/lirc.sh +#Anything in that file will be used and the rest of this file is ignored. -num_lirc=`ls -la /dev/lirc[0-9] 2>/dev/null |wc -l ` -num_lirc=$((num_lirc-1)) - -serial_port="" - -if [ x$ReceiverType = xSerial ] -then -    serial_port=$ReceiverSerialport -elif [ x$HostBlasterType = xSerial ] -then -    serial_port=$HostSerialPort_blasterlirc -fi - -if [ -n "$serial_port" ] -then -    #/dev/ttyS0 (COM1), port 0x3f8, irq 4 -    #/dev/ttyS1 (COM2), port 0x2f8, irq 3 -    #/dev/ttyS2 (COM3), port 0x3e8, irq 4 -    #/dev/ttyS3 (COM4), port 0x2e8, irq 3 - -    case $serial_port in -    ttyS0) -           FLAGS="io=0x3f8  irq=4" -           ;; -    ttyS1) -           FLAGS="io=0x2f8  irq=3" -           ;; -    ttyS2) -           FLAGS="io=0x3e8  irq=4" -           ;; -    ttyS3) -           FLAGS="io=0x2e8  irq=3" -           ;; -    esac -    /usr/bin/setserial /dev/$serial_port uart none -    sleep 0.5 -    /sbin/modprobe lirc_serial $FLAGS -    sleep 0.5 -fi - -if [ x$HostBlasterType = xCommandIR -o x$ReceiverType = xCommandIR ] -then -    CMD="/usr/sbin/lircd -r -n  --driver=commandir" -    printhl "   Using commandir" -    echo $CMD >>$LOG -    $CMD >>$LOG 2>>$LOG -elif [ x$HostBlasterType = xiguanaIR-usb -o x$ReceiverType = xiguanaIR-usb ] +if [ -f /etc/runit/lirc.sh ]  then -    sv start igdaemon -    CMD="/usr/sbin/lircd -r -n  --driver=iguanaIR" -    printhl "       Using iguanaIR usb" -    echo $CMD >>$LOG -    $CMD >>$LOG 2>>$LOG -elif [ x$ReceiverType = "xSiliconDust_HDHR" ] -then -    # if using the SiliconDust_HDHR as an I/R Receiver -    CMD="/usr/sbin/lircd -H udp -d 5000 -n" -    printhl "   Using SiliconDust on port 5000" -    echo $CMD >>$LOG -    $CMD >>$LOG 2>>$LOG +    #program must not terminate. +    stat_runit "Starting remotes from /etc/runit/lirc.sh" +    echo "Starting remotes from /etc/runit/lirc.sh" >>$LOG +    /etc/runit/lirc.sh  else -    LASTCMD="" - -    for i in `seq 1 $num_lirc` -    do -        CMD="/usr/sbin/lircd -r -d /dev/lirc$i --output=/var/run/lirc/lircd$i --pidfile=/var/run/lircd$i.pid --listen=876$i" -        printhl "   Device $i" +    . /etc/systemconfig +    stat_runit "Starting remotes" +     +    [ -e /etc/sv/remotes/.runtime ] || mkdir -p /etc/sv/remotes/.runtime +    [ -e /var/run/lirc ] || mkdir -p /var/run/lirc +     +    num_lirc=`ls -la /dev/lirc[0-9] 2>/dev/null |wc -l ` +    num_lirc=$((num_lirc-1)) +     +    serial_port="" +     +    if [ x$ReceiverType = xSerial ] +    then +        serial_port=$ReceiverSerialport +    elif [ x$HostBlasterType = xSerial ] +    then +        serial_port=$HostSerialPort_blasterlirc +    fi +     +    if [ -n "$serial_port" ] +    then +        #/dev/ttyS0 (COM1), port 0x3f8, irq 4 +        #/dev/ttyS1 (COM2), port 0x2f8, irq 3 +        #/dev/ttyS2 (COM3), port 0x3e8, irq 4 +        #/dev/ttyS3 (COM4), port 0x2e8, irq 3 +     +        case $serial_port in +        ttyS0) +               FLAGS="io=0x3f8  irq=4" +               ;; +        ttyS1) +               FLAGS="io=0x2f8  irq=3" +               ;; +        ttyS2) +               FLAGS="io=0x3e8  irq=4" +               ;; +        ttyS3) +               FLAGS="io=0x2e8  irq=3" +               ;; +        esac +        /usr/bin/setserial /dev/$serial_port uart none +        sleep 0.5 +        /sbin/modprobe lirc_serial $FLAGS +        sleep 0.5 +    fi +     +    if [ x$HostBlasterType = xCommandIR -o x$ReceiverType = xCommandIR ] +    then +        CMD="/usr/sbin/lircd -r -n  --driver=commandir" +        printhl "   Using commandir"          echo $CMD >>$LOG          $CMD >>$LOG 2>>$LOG -        LASTCMD="--connect=localhost:876$i   $LASTCMD    " -    done - -    echo $LASTCMD >>$LOG - -    if [ -f /etc/remote.run ] +    elif [ x$HostBlasterType = xiguanaIR-usb -o x$ReceiverType = xiguanaIR-usb ]      then -        #program must not terminate. - -        stat_runit "Starting remotes from /etc/remote.run" -        LCMD="/etc/remote.run    $LASTCMD" -        echo "Starting remotes from $LCMD" >>$LOG -        exec $LCMD >>$LOG 2>>$LOG +        sv start igdaemon +        CMD="/usr/sbin/lircd -r -n  --driver=iguanaIR" +        printhl "       Using iguanaIR usb" +        echo $CMD >>$LOG +        $CMD >>$LOG 2>>$LOG +    elif [ x$ReceiverType = "xSiliconDust_HDHR" ] +    then +        # if using the SiliconDust_HDHR as an I/R Receiver +        CMD="/usr/sbin/lircd -H udp -d 5000 -n" +        printhl "   Using SiliconDust on port 5000" +        echo $CMD >>$LOG +        $CMD >>$LOG 2>>$LOG      else -        echo "Disable in kernel remote driver" >>$LOG -        in_kernel_support "disable" -        LCMD="/usr/sbin/lircd -r -n -d /dev/lirc0 --output /var/run/lirc/lircd  $LASTCMD" -        echo "Starting remotes from $LCMD" >>$LOG -        exec $LCMD >>$LOG 2>>$LOG +        LASTCMD="" +     +        for i in `seq 1 $num_lirc` +        do +            CMD="/usr/sbin/lircd -r -d /dev/lirc$i --output=/var/run/lirc/lircd$i --pidfile=/var/run/lircd$i.pid --listen=876$i" +            printhl "   Device $i" +            echo $CMD >>$LOG +            $CMD >>$LOG 2>>$LOG +            LASTCMD="--connect=localhost:876$i   $LASTCMD    " +        done +     +        echo $LASTCMD >>$LOG +     +        if [ -f /etc/remote.run ] +        then +            #program must not terminate. +     +            stat_runit "Starting remotes from /etc/remote.run" +            LCMD="/etc/remote.run    $LASTCMD" +            echo "Starting remotes from $LCMD" >>$LOG +            exec $LCMD >>$LOG 2>>$LOG +        else +            echo "Disable in kernel remote driver" >>$LOG +            in_kernel_support "disable" +            LCMD="/usr/sbin/lircd -r -n -d /dev/lirc0 --output /var/run/lirc/lircd  $LASTCMD" +            echo "Starting remotes from $LCMD" >>$LOG +            exec $LCMD >>$LOG 2>>$LOG +        fi      fi  fi | 
