#!/bin/sh ################################################################################ # This file is part of OpenELEC - http://www.openelec.tv # Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv) # # OpenELEC is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 2 of the License, or # (at your option) any later version. # # OpenELEC is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with OpenELEC. If not, see . ################################################################################ ACTION=$(echo "$1") DEVICE=$(echo "$2" | cut -f1 -d:) DRIVER=$(echo "$2" | cut -f2 -d:) CONFIG=$(echo "$2" | cut -f3 -d:) case "$ACTION" in add) if [ "x$DRIVER" = "x" ]; then exit 1; fi mkdir -p '/run/lirc' if [ ! -e "/run/lirc/lircd-$DEVICE.pid" ]; then LIRCD="/usr/sbin/lircd" LIRCD_CONFIG="--uinput --driver=$DRIVER --device=/dev/$DEVICE" LIRCD_CONFIG="$LIRCD_CONFIG --output=/run/lirc/lircd-$DEVICE" LIRCD_CONFIG="$LIRCD_CONFIG --pidfile=/run/lirc/lircd-$DEVICE.pid" if [ -e "/storage/.config/lircd.conf" ]; then LIRCD_CONFIG="$LIRCD_CONFIG /storage/.config/lircd.conf" elif [ -n "$CONFIG" ]; then if [ -e "/storage/.config/$CONFIG" ]; then LIRCD_CONFIG="$LIRCD_CONFIG /storage/.config/$CONFIG" elif [ -e "/etc/lirc/$CONFIG" ]; then LIRCD_CONFIG="$LIRCD_CONFIG /etc/lirc/$CONFIG" else exit 0 fi else exit 0 fi exec $LIRCD $LIRCD_CONFIG fi ;; remove) if [ -e "/run/lirc/lircd-$DEVICE.pid" ]; then PID=`cat /run/lirc/lircd-$DEVICE.pid` if [ ! "x$PID" = "x" ]; then kill $PID fi fi ;; esac exit 0