summaryrefslogtreecommitdiff
path: root/omxplayer/omxplayer.initd
diff options
context:
space:
mode:
Diffstat (limited to 'omxplayer/omxplayer.initd')
-rw-r--r--omxplayer/omxplayer.initd34
1 files changed, 34 insertions, 0 deletions
diff --git a/omxplayer/omxplayer.initd b/omxplayer/omxplayer.initd
new file mode 100644
index 0000000..70af0e5
--- /dev/null
+++ b/omxplayer/omxplayer.initd
@@ -0,0 +1,34 @@
+#!/sbin/openrc-run
+
+depend() {
+ after net firewall chrony
+}
+
+omxplayer_run_loop() {
+ while true; do
+ /usr/bin/omxplayer "$@"
+ status=$?
+ echo "exited: $status"
+ [ "$status" -eq 129 ] && exit 0
+ [ "$status" -ne 0 ] && sleep ${OMXPLAYER_DELAY:-5}
+ done
+}
+
+checkconfig() {
+ [ -z "$OMXPLAYER_URL" ] && eerror "omxplayer URL not set"
+ return 0
+}
+
+start() {
+ checkconfig || return 1
+ ebegin "Starting omxplayer"
+ omxplayer_run_loop ${OMXPLAYER_OPTS} "${OMXPLAYER_URL}" 2>&1 | logger -t omxplayer &
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping omxplayer"
+ killall -HUP omxplayer
+ eend $?
+}
+