From 2e1ade42c93b02762dae329b431d8cbb74a749d0 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Sun, 29 May 2011 15:27:51 +0200 Subject: [PATCH] transmission: rework startscript Signed-off-by: Stephan Raue --- .../transmission/changelog.txt | 3 + .../service/downloadmanager/transmission/meta | 2 +- .../{start.sh => bin/transmission.service} | 62 ++----------------- .../transmission/source/default.py | 16 +---- 4 files changed, 9 insertions(+), 74 deletions(-) rename packages/addons/service/downloadmanager/transmission/source/{start.sh => bin/transmission.service} (72%) diff --git a/packages/addons/service/downloadmanager/transmission/changelog.txt b/packages/addons/service/downloadmanager/transmission/changelog.txt index df843f9e73..475dab6c3d 100644 --- a/packages/addons/service/downloadmanager/transmission/changelog.txt +++ b/packages/addons/service/downloadmanager/transmission/changelog.txt @@ -1,3 +1,6 @@ +0.99.5 +- simplyfing start scripts + 0.99.4 - fix paths diff --git a/packages/addons/service/downloadmanager/transmission/meta b/packages/addons/service/downloadmanager/transmission/meta index ef8d1d2ace..58b68d3e9a 100644 --- a/packages/addons/service/downloadmanager/transmission/meta +++ b/packages/addons/service/downloadmanager/transmission/meta @@ -20,7 +20,7 @@ PKG_NAME="transmission" PKG_VERSION="2.31" -PKG_REV="4" +PKG_REV="5" PKG_ARCH="any" PKG_LICENSE="OSS" PKG_SITE="http://www.transmissionbt.com/" diff --git a/packages/addons/service/downloadmanager/transmission/source/start.sh b/packages/addons/service/downloadmanager/transmission/source/bin/transmission.service similarity index 72% rename from packages/addons/service/downloadmanager/transmission/source/start.sh rename to packages/addons/service/downloadmanager/transmission/source/bin/transmission.service index 77e05ad4f0..7c99fd7b9e 100755 --- a/packages/addons/service/downloadmanager/transmission/source/start.sh +++ b/packages/addons/service/downloadmanager/transmission/source/bin/transmission.service @@ -20,44 +20,11 @@ # http://www.gnu.org/copyleft/gpl.html ################################################################################ -XBMC_PID=$1 -APP=$2 -SCRIPT_DIR=$(dirname `readlink -f $0`) +ADDON_DIR="$HOME/.xbmc/addons/service.downloadmanager.transmission" ADDON_HOME="$HOME/.xbmc/userdata/addon_data/service.downloadmanager.transmission" -PATH="${PATH}:${SCRIPT_DIR}/bin" -LOG_FILE="${ADDON_HOME}/service.log" +LOG_FILE="$ADDON_HOME/service.log" -cleanup() { - local EXIT_STATUS=$1 - if [ -n "${EXIT_STATUS}" ];then - EXIT_STATUS=0 - fi - kill -15 "${APP_PID}" - exit $EXIT_STATUS; -} - -# trap signals for clean shutdown - trap cleanup 1 2 3 15 - -launch_app() { - local PID - eval "${APP} ${TRANSMISSION_ARG} &>${LOG_FILE} &" - APP_PID=$! -} - -pid_is_running() { - local PID=${1} - for IPID in `ps -o pid | sed 's/[A-Za-z]//g' | sed 's/\ //g'`;do - if [ ${IPID} -eq ${PID} ];then - return 0 - fi - done - return 1 -} - -app_prep() { - -export TRANSMISSION_WEB_HOME="$SCRIPT_DIR/web" +export TRANSMISSION_WEB_HOME="$ADDON_DIR/web" mkdir -p $ADDON_HOME OPENELEC_SETTINGS="$ADDON_HOME/settings.xml" @@ -86,7 +53,6 @@ TRANSMISSION_ARG="$TRANSMISSION_ARG --watch-dir /storage/downloads/watch" TRANSMISSION_ARG="$TRANSMISSION_ARG -e /var/log/transmission.log" TRANSMISSION_ARG="$TRANSMISSION_ARG -g /storage/.cache/transmission" TRANSMISSION_ARG="$TRANSMISSION_ARG -a $TRANSMISSION_IP" -TRANSMISSION_ARG="$TRANSMISSION_ARG -f" if [ "$TRANSMISSION_AUTH" = "true" ]; then TRANSMISSION_ARG="$TRANSMISSION_ARG -t" @@ -96,24 +62,4 @@ else TRANSMISSION_ARG="$TRANSMISSION_ARG -T" fi -} - -main() { - app_prep - launch_app "${APP}" - pid_is_running "${XBMC_PID}" - XBMC_RUNNING=$? - pid_is_running "${APP_PID}" - APP_RUNNING=$? - - while [ $XBMC_RUNNING -eq 0 -a ${APP_RUNNING} -eq 0 ]; do - sleep 1 - pid_is_running "${XBMC_PID}" - XBMC_RUNNING=$? - pid_is_running "${APP_PID}" - APP_RUNNING=$? - done -} - -main -cleanup +transmission-daemon $TRANSMISSION_ARG &>$LOG_FILE diff --git a/packages/addons/service/downloadmanager/transmission/source/default.py b/packages/addons/service/downloadmanager/transmission/source/default.py index 5d7fa663d5..d56480efee 100644 --- a/packages/addons/service/downloadmanager/transmission/source/default.py +++ b/packages/addons/service/downloadmanager/transmission/source/default.py @@ -20,18 +20,4 @@ import xbmc, time, os, subprocess -dir = os.path.realpath(os.path.dirname(__file__)) -script = 'start.sh' - -launcher = os.path.join(dir, script) -app = '/storage/.xbmc/addons/service.downloadmanager.transmission/bin/transmission-daemon' - -os.chmod(launcher, 0755) -os.chmod(app, 0755) - -args = [launcher, str(os.getpid()), app] - -p = subprocess.Popen(args) -print p.pid -p.wait() -os.exit(1) +os.system("transmission.service")