From 65a4c2654bd9383a2d85e324e64ccac120639477 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Fri, 9 Sep 2011 04:44:55 +0200 Subject: [PATCH] xbmc-pvr: sync init scripts with last merge Signed-off-by: Stephan Raue --- .../xbmc-pvr/init.d/91_setup-addons | 44 ++++++++ .../mediacenter/xbmc-pvr/init.d/92_setup-xbmc | 101 +++++++++-------- packages/mediacenter/xbmc-pvr/init.d/93_xbmc | 106 +++++++++--------- 3 files changed, 153 insertions(+), 98 deletions(-) create mode 100644 packages/mediacenter/xbmc-pvr/init.d/91_setup-addons diff --git a/packages/mediacenter/xbmc-pvr/init.d/91_setup-addons b/packages/mediacenter/xbmc-pvr/init.d/91_setup-addons new file mode 100644 index 0000000000..9f22b212cd --- /dev/null +++ b/packages/mediacenter/xbmc-pvr/init.d/91_setup-addons @@ -0,0 +1,44 @@ +################################################################################ +# This file is part of OpenELEC - http://www.openelec.tv +# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv) +# +# This Program 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, or (at your option) +# any later version. +# +# This Program 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.tv; see the file COPYING. If not, write to +# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. +# http://www.gnu.org/copyleft/gpl.html +################################################################################ + +# +# setup XBMC addons +# +# runlevels: openelec, textmode + +case $RUNLEVEL in + boot) + progress "setup XBMC addons" + + # hack: add addons to $PATH + for i in `find /storage/.xbmc/addons/* -name bin -type d`; do + PATH="$PATH:$i" + done + export PATH + + # hack: make addon-bins executable + chmod +x /storage/.xbmc/addons/*/bin/* > /dev/null 2>&1 + ;; + + poweroff|reboot) + ;; +esac + + diff --git a/packages/mediacenter/xbmc-pvr/init.d/92_setup-xbmc b/packages/mediacenter/xbmc-pvr/init.d/92_setup-xbmc index 1344840f82..b7a9fcabeb 100644 --- a/packages/mediacenter/xbmc-pvr/init.d/92_setup-xbmc +++ b/packages/mediacenter/xbmc-pvr/init.d/92_setup-xbmc @@ -22,21 +22,23 @@ # # runlevels: openelec -progress "setup XBMC" +case $RUNLEVEL in + boot) + progress "setup XBMC" -# -# clean temp dir -# - rm -rf $HOME/.xbmc/temp/* + # + # clean temp dir + # + rm -rf $HOME/.xbmc/temp/* -# -# add some default settings -# - mkdir -p $HOME/.xbmc/userdata + # + # add some default settings + # + mkdir -p $HOME/.xbmc/userdata -# use dds fanarts by default - if [ ! -f $HOME/.xbmc/userdata/advancedsettings.xml ] ; then - cat > $HOME/.xbmc/userdata/advancedsettings.xml << EOF + # use dds fanarts by default + if [ ! -f $HOME/.xbmc/userdata/advancedsettings.xml ] ; then + cat > $HOME/.xbmc/userdata/advancedsettings.xml << EOF true false @@ -47,21 +49,21 @@ progress "setup XBMC" EOF - fi + fi -# -# setup directories for XBMC sources -# + # + # setup directories for XBMC sources + # - [ ! -d "$HOME/music" ] && mkdir -p $HOME/music - [ ! -d "$HOME/pictures" ] && mkdir -p $HOME/pictures - [ ! -d "$HOME/tvshows" ] && mkdir -p $HOME/tvshows - [ ! -d "$HOME/videos" ] && mkdir -p $HOME/videos + [ ! -d "$HOME/music" ] && mkdir -p $HOME/music + [ ! -d "$HOME/pictures" ] && mkdir -p $HOME/pictures + [ ! -d "$HOME/tvshows" ] && mkdir -p $HOME/tvshows + [ ! -d "$HOME/videos" ] && mkdir -p $HOME/videos - mkdir -p $HOME/.xbmc/userdata + mkdir -p $HOME/.xbmc/userdata - if [ ! -f $HOME/.xbmc/userdata/sources.xml ] ; then - cat > $HOME/.xbmc/userdata/sources.xml << EOF + if [ ! -f $HOME/.xbmc/userdata/sources.xml ] ; then + cat > $HOME/.xbmc/userdata/sources.xml << EOF EOF - fi + fi -# -# common setup guisettings -# + # + # common setup guisettings + # - mkdir -p $HOME/.xbmc/userdata + mkdir -p $HOME/.xbmc/userdata - [ ! -d "$HOME/screenshots" ] && mkdir -p $HOME/screenshots + [ ! -d "$HOME/screenshots" ] && mkdir -p $HOME/screenshots - if [ ! -f $HOME/.xbmc/userdata/guisettings.xml ] ; then - echo "" > $HOME/.xbmc/userdata/guisettings.xml + if [ ! -f $HOME/.xbmc/userdata/guisettings.xml ] ; then + echo "" > $HOME/.xbmc/userdata/guisettings.xml - cat >> $HOME/.xbmc/userdata/guisettings.xml << EOF + cat >> $HOME/.xbmc/userdata/guisettings.xml << EOF $HOME/screenshots/ EOF -# -# include project specific options -# + # + # include project specific options + # - if [ -f /usr/share/xbmc/config/guisettings.xml ]; then - cat /usr/share/xbmc/config/guisettings.xml >> $HOME/.xbmc/userdata/guisettings.xml - fi + if [ -f /usr/share/xbmc/config/guisettings.xml ]; then + cat /usr/share/xbmc/config/guisettings.xml >> $HOME/.xbmc/userdata/guisettings.xml + fi -# -# common setup for amd and nvidia graphic -# + # + # common setup for amd and nvidia graphic + # - # Always sync to vblank - if [ "$GPUTYPE" = "NVIDIA" -o "$GPUTYPE" = "AMD" ] ; then - cat >> $HOME/.xbmc/userdata/guisettings.xml << EOF + # Always sync to vblank + if [ "$GPUTYPE" = "NVIDIA" -o "$GPUTYPE" = "AMD" ] ; then + cat >> $HOME/.xbmc/userdata/guisettings.xml << EOF 2 EOF - fi - echo "" >> $HOME/.xbmc/userdata/guisettings.xml - fi + fi + echo "" >> $HOME/.xbmc/userdata/guisettings.xml + fi + ;; + + poweroff|reboot) + ;; +esac diff --git a/packages/mediacenter/xbmc-pvr/init.d/93_xbmc b/packages/mediacenter/xbmc-pvr/init.d/93_xbmc index 49f1162175..1db77b91b2 100644 --- a/packages/mediacenter/xbmc-pvr/init.d/93_xbmc +++ b/packages/mediacenter/xbmc-pvr/init.d/93_xbmc @@ -22,66 +22,70 @@ # # runlevels: openelec -LIRCDEV="/var/run/lirc/lircd" -[ -e /var/run/lirc/lircd.irtrans ] && LIRCDEV="/var/run/lirc/lircd.irtrans" -XBMC_ARGS="--standalone -fs --lircdev $LIRCDEV" +case $RUNLEVEL in + boot) + LIRCDEV="/var/run/lirc/lircd" + [ -e /var/run/lirc/lircd.irtrans ] && LIRCDEV="/var/run/lirc/lircd.irtrans" + XBMC_ARGS="--standalone -fs --lircdev $LIRCDEV" -progress "starting XBMC" + progress "starting XBMC" -# hack for Boxee Remote -if $(cat /proc/bus/input/devices | grep Vendor=0471 | grep -q Product=20d9);then - export SDL_MOUSE_RELATIVE=0 -fi + # hack for Boxee Remote + if $(cat /proc/bus/input/devices | grep Vendor=0471 | grep -q Product=20d9);then + export SDL_MOUSE_RELATIVE=0 + fi -# hack: make addon-bins executable - chmod +x /storage/.xbmc/addons/*/bin/* > /dev/null 2>&1 + # starting autostart script (will be removed later again, dont use it!!!) + AUTOSTART="/storage/.config/autostart.sh" + if [ -f $AUTOSTART ]; then + echo "!!! AUTOSTART script detected !!!" >> /var/log/messages + cat "$AUTOSTART" >> /var/log/messages + echo "!!! -End of autostart script- !!!" >> /var/log/messages -# starting autostart script (will be removed later again, dont use it!!!) - AUTOSTART="/storage/.config/autostart.sh" - if [ -f $AUTOSTART ]; then - echo "!!! AUTOSTART script detected !!!" >> /var/log/messages - cat "$AUTOSTART" >> /var/log/messages - echo "!!! -End of autostart script- !!!" >> /var/log/messages + sh $AUTOSTART + fi - sh $AUTOSTART - fi + # starting autoupdate + [ -f /usr/bin/autoupdate ] && /usr/bin/autoupdate & -# starting autoupdate - [ -f /usr/bin/autoupdate ] && /usr/bin/autoupdate & + # waiting for Xorg to start + wait_for_xorg -# waiting for Xorg to start - wait_for_xorg + # set cpu's to 'on demand' + ( usleep 15000000 + progress "set cpu's to 'on demand'" + cpupower frequency-set -g ondemand > /dev/null 2>&1 + )& -# set cpu's to 'on demand' - ( usleep 15000000 - progress "set cpu's to 'on demand'" - cpupower frequency-set -g ondemand - )& + # starting XBMC + while true; do -# starting XBMC - while true; do + DISPLAY=:0.0 /usr/lib/xbmc/xbmc.bin $XBMC_ARGS > /dev/null 2>&1 + RET=$? - DISPLAY=:0.0 /usr/lib/xbmc/xbmc.bin $XBMC_ARGS > /dev/null 2>&1 - RET=$? + case "$RET" in + 0) + RUNLEVEL="poweroff" + ;; + 64) + RUNLEVEL="poweroff" + ;; + 66) + RUNLEVEL="reboot" + ;; + 255) + echo "Abnormal Exit. Exited with code $RET" + echo "is Xorg running? check /var/log/Xorg.log" + ;; + *) + echo "Abnormal Exit. Exited with code $RET" + ;; + esac - case "$RET" in - 0) - poweroff -f - ;; - 64) - poweroff -f - ;; - 66) - reboot - ;; - 255) - echo "Abnormal Exit. Exited with code $RET" - echo "is Xorg running? check /var/log/Xorg.log" - ;; - *) - echo "Abnormal Exit. Exited with code $RET" - ;; - esac + usleep 250000 + done + ;; - usleep 250000 - done + poweroff|reboot) + ;; +esac