#!/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 . ################################################################################ DEVICE=$(echo "$1" | cut -f1 -d:) DRIVER=$(echo "$1" | cut -f2 -d:) CONFIG=$(echo "$1" | cut -f3 -d:) if [ "x$DRIVER" = "x" ]; then exit 1; fi mkdir -p '/run/lirc' LIRCD="/usr/sbin/lircd" LIRCD_UINPUT="/usr/sbin/lircd-uinput" LIRCD_CONFIG="--driver=$DRIVER --device=/dev/$DEVICE" LIRCD_CONFIG="$LIRCD_CONFIG --output=/run/lirc/lircd-$DEVICE" LIRCD_CONFIG="$LIRCD_CONFIG --pidfile=/run/lirc/lircd-$DEVICE.pid" LIRCD_CONFIG="$LIRCD_CONFIG --release=_LIRCUP" 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 echo "No device specific $CONFIG file found" echo "You need to provide your own $CONFIG file" echo "Place it in /storage/.config/$CONFIG" exit 0 fi else echo "No lircd.conf file found" echo "You need to provide your own lircd.conf file" echo "Place it in /storage/.config/lircd.conf" exit 0 fi # lircd daemonizes but lircd-uinput doesn't so we need to fork it to the background $LIRCD $LIRCD_CONFIG $LIRCD_UINPUT --release=_LIRCUP /run/lirc/lircd-$DEVICE & exit 0