#!/bin/bash exec 2>&1 export TERM=linux . /etc/rc.conf . /etc/rc.d/functions function cleanup(){ rm -f /etc/sv/frontend/.runtime/* printhl " Cleaning up /etc/sv/frontend/.runtime/" } grep -q nox /proc/cmdline STATUS=$? if [ $STATUS = 0 ] then printhl " status = 0" chvt 2 else pkill -f "X :0" printhl " status = 1" if [ ! -d /etc/sv/frontend/.runtime ] then mkdir -p /etc/sv/frontend/.runtime fi touch /etc/sv/frontend/.runtime/`date +%s` sleep 0.2 ps -U mythtv -ef |grep "/bin/sh /usr/bin/startx"|grep -v grep|awk ' { print $2 } '|xargs kill -9 2> /dev/null cdate=`date` numfilestotal=`/usr/bin/file_time_offset.py -s0 -d/etc/sv/frontend/.runtime` numfilesover10secondsold=`/usr/bin/file_time_offset.py -s10 -d/etc/sv/frontend/.runtime` numfileslessthan10secondsold=$(($numfilestotal-$numfilesover10secondsold)) if [ $numfileslessthan10secondsold -gt 2 ] then sv stop frontend printhl " Frontend disabled, due to many restarts." printhl " Run \"sv start frontend\" to try again" cleanup else if [ $numfilestotal -gt 10 ] then cleanup fi fi fi