From a569cf943136013c91fa1089fc1e804bfdaa0eda Mon Sep 17 00:00:00 2001 From: Colossus Date: Fri, 22 Apr 2011 02:26:11 +0200 Subject: [PATCH 01/23] fix for tvheadend startup for dvb cards with more than one tuner, because tvheadend is starting multiple times --- packages/multimedia/hts-tvheadend/install | 3 +++ .../hts-tvheadend/scripts/tvheadend_startup | 25 +++++++++++++++++++ .../hts-tvheadend/udev.d/76-tvheadend.rules | 2 +- 3 files changed, 29 insertions(+), 1 deletion(-) create mode 100755 packages/multimedia/hts-tvheadend/scripts/tvheadend_startup diff --git a/packages/multimedia/hts-tvheadend/install b/packages/multimedia/hts-tvheadend/install index 2eae408e3c..b6d0d8667d 100755 --- a/packages/multimedia/hts-tvheadend/install +++ b/packages/multimedia/hts-tvheadend/install @@ -27,3 +27,6 @@ mkdir -p $INSTALL/usr/bin mkdir -p $INSTALL/etc/pm/sleep.d cp $PKG_DIR/sleep.d/* $INSTALL/etc/pm/sleep.d + +mkdir -p $INSTALL/lib/udev + cp $PKG_DIR/scripts/tvheadend_startup $INSTALL/lib/udev diff --git a/packages/multimedia/hts-tvheadend/scripts/tvheadend_startup b/packages/multimedia/hts-tvheadend/scripts/tvheadend_startup new file mode 100755 index 0000000000..132e5848a7 --- /dev/null +++ b/packages/multimedia/hts-tvheadend/scripts/tvheadend_startup @@ -0,0 +1,25 @@ +#!/bin/sh + +################################################################################ +# 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 +################################################################################ + +if [ ! $(pidof tvheadend) ];then + tvheadend -C -s -f -u root -g root +fi \ No newline at end of file diff --git a/packages/multimedia/hts-tvheadend/udev.d/76-tvheadend.rules b/packages/multimedia/hts-tvheadend/udev.d/76-tvheadend.rules index 441b76235b..ea19c0a8ec 100644 --- a/packages/multimedia/hts-tvheadend/udev.d/76-tvheadend.rules +++ b/packages/multimedia/hts-tvheadend/udev.d/76-tvheadend.rules @@ -25,6 +25,6 @@ ENV{DVB_DEVICE_TYPE}!="frontend", GOTO="end" # Start TVHeadend if dvb frontend is starting ACTION=="add", RUN+="/usr/bin/tvheadend -C -s -f -u root -g root" -ACTION=="remove", RUN+="/usr/bin/killall tvheadend" +ACTION=="add", RUN+="/lib/udev/tvheadend_startup" LABEL="end" From 16d499bcfb8ff8ecdbbea017437173e859c3007e Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Fri, 22 Apr 2011 02:53:14 +0200 Subject: [PATCH 02/23] hts-tvheadend: fix latest patch, cleanup Signed-off-by: Stephan Raue --- packages/multimedia/hts-tvheadend/scripts/tvheadend_startup | 2 +- packages/multimedia/hts-tvheadend/udev.d/76-tvheadend.rules | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/multimedia/hts-tvheadend/scripts/tvheadend_startup b/packages/multimedia/hts-tvheadend/scripts/tvheadend_startup index 132e5848a7..1137a8ea29 100755 --- a/packages/multimedia/hts-tvheadend/scripts/tvheadend_startup +++ b/packages/multimedia/hts-tvheadend/scripts/tvheadend_startup @@ -21,5 +21,5 @@ ################################################################################ if [ ! $(pidof tvheadend) ];then - tvheadend -C -s -f -u root -g root + tvheadend -C -s -f -u root -g root fi \ No newline at end of file diff --git a/packages/multimedia/hts-tvheadend/udev.d/76-tvheadend.rules b/packages/multimedia/hts-tvheadend/udev.d/76-tvheadend.rules index ea19c0a8ec..8e00208484 100644 --- a/packages/multimedia/hts-tvheadend/udev.d/76-tvheadend.rules +++ b/packages/multimedia/hts-tvheadend/udev.d/76-tvheadend.rules @@ -24,7 +24,7 @@ SUBSYSTEM!="dvb", GOTO="end" ENV{DVB_DEVICE_TYPE}!="frontend", GOTO="end" # Start TVHeadend if dvb frontend is starting -ACTION=="add", RUN+="/usr/bin/tvheadend -C -s -f -u root -g root" ACTION=="add", RUN+="/lib/udev/tvheadend_startup" +ACTION=="remove", RUN+="/usr/bin/killall tvheadend" LABEL="end" From 1c8c30cafcc623980fb6f0f02a7bd52940fb5d4b Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Fri, 22 Apr 2011 14:30:04 +0200 Subject: [PATCH 03/23] SABnzbd: fix ini_tool thanks to thansen, fix settingsdialog Signed-off-by: Stephan Raue --- .../SABnzbd/source/bin/ini_tool | 35 +++++++++++++------ .../SABnzbd/source/resources/settings.xml | 4 +-- .../downloadmanager/SABnzbd/source/start.sh | 3 +- 3 files changed, 28 insertions(+), 14 deletions(-) diff --git a/packages/addons/downloadmanager/SABnzbd/source/bin/ini_tool b/packages/addons/downloadmanager/SABnzbd/source/bin/ini_tool index bf350d9f16..ab663574af 100755 --- a/packages/addons/downloadmanager/SABnzbd/source/bin/ini_tool +++ b/packages/addons/downloadmanager/SABnzbd/source/bin/ini_tool @@ -3,16 +3,17 @@ from configobj import ConfigObj import sys import os +import string python_major = sys.version_info[0] python_minor = sys.version_info[1] -prog="ini_tool" +prog="configobj_ini_tool" description="""Read/Write config files. Examples: - %(prog)s --file config.ini --action read --section "general" --option username - %(prog)s --file config.ini --action write --section "general" --option username --value foo""" % {'prog':prog} + %(prog)s --file config.ini --action read --option [section:]username + %(prog)s --file config.ini --action write --option [section:]username --value foo""" % {'prog':prog} def option_required_error(option): parser.print_usage() @@ -30,7 +31,6 @@ if python_major > 2 or (python_major == 2 and python_minor >= 7): parser.add_argument('--file', help='file to read/write to/from', required=True) parser.add_argument('--action', help='read|write', required=True) - parser.add_argument('--section', help='the config section', required=True) parser.add_argument('--option', help='the option key', required=True) parser.add_argument('--value', help='value to store in the given option (only for write action)') @@ -46,7 +46,6 @@ else: parser.add_option('--file', help='file to read/write to/from') parser.add_option('--action', help='read|write') - parser.add_option('--section', help='the config section') parser.add_option('--option', help='the option key') parser.add_option('--value', help='value to store in the given option (only for write action)') @@ -56,8 +55,6 @@ else: option_required_error("--file") if not options.action: option_required_error("--action") - if not options.section: - option_required_error("--section") if not options.option: option_required_error("--option") @@ -72,11 +69,29 @@ if options.action == "read" and not os.path.isfile(options.file): exit(2) config = ConfigObj(options.file) +keys = string.split(options.option, ":") +key_len = len(keys) +current_section = config if options.action == 'read': - print config[options.section][options.option] + i = 1 + for key in keys: + if i == key_len: + print current_section[key] + exit(0) + else: + current_section = current_section[key] + i += 1 elif options.action == 'write': - config[options.section][options.option] = options.value - config.write() + i = 1 + for key in keys: + if i == key_len: + current_section[key] = options.value + elif key not in current_section: + current_section[key] = {} + current_section = current_section[key] + i += 1 + + config.write() else: exit(1) \ No newline at end of file diff --git a/packages/addons/downloadmanager/SABnzbd/source/resources/settings.xml b/packages/addons/downloadmanager/SABnzbd/source/resources/settings.xml index 4200202909..8ee2bb0ab2 100644 --- a/packages/addons/downloadmanager/SABnzbd/source/resources/settings.xml +++ b/packages/addons/downloadmanager/SABnzbd/source/resources/settings.xml @@ -5,8 +5,8 @@ - - + + diff --git a/packages/addons/downloadmanager/SABnzbd/source/start.sh b/packages/addons/downloadmanager/SABnzbd/source/start.sh index 3ebe911e95..4d3a827875 100755 --- a/packages/addons/downloadmanager/SABnzbd/source/start.sh +++ b/packages/addons/downloadmanager/SABnzbd/source/start.sh @@ -37,8 +37,7 @@ SABNZBD_WEBCOLOR2="gold" write_ini() { python bin/ini_tool --action=write \ --file=$SABNZBD_HOME/sabnzbd.ini \ - --section="$1" \ - --option="$2" \ + --option="$1:$2" \ --value="$3" } From 34907709105a3adeb7af45d39d521a0c80c0d537 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Fri, 22 Apr 2011 16:05:30 +0200 Subject: [PATCH 04/23] SABnzbd: add mor default options, remove unneeded patches, add patch to hide default options Signed-off-by: Stephan Raue --- .../SABnzbd-0.6.0RC2-001_defaults-0.1.patch | 33 --- ...0RC2-001_remove_default_settings-0.2.patch | 214 ++++++++++++++++++ ....6.0RC2-002-remove_host_settings-0.1.patch | 70 ------ .../downloadmanager/SABnzbd/source/start.sh | 42 +++- 4 files changed, 253 insertions(+), 106 deletions(-) delete mode 100644 packages/addons/downloadmanager/SABnzbd/patches/SABnzbd-0.6.0RC2-001_defaults-0.1.patch create mode 100644 packages/addons/downloadmanager/SABnzbd/patches/SABnzbd-0.6.0RC2-001_remove_default_settings-0.2.patch delete mode 100644 packages/addons/downloadmanager/SABnzbd/patches/SABnzbd-0.6.0RC2-002-remove_host_settings-0.1.patch diff --git a/packages/addons/downloadmanager/SABnzbd/patches/SABnzbd-0.6.0RC2-001_defaults-0.1.patch b/packages/addons/downloadmanager/SABnzbd/patches/SABnzbd-0.6.0RC2-001_defaults-0.1.patch deleted file mode 100644 index 4cceea678d..0000000000 --- a/packages/addons/downloadmanager/SABnzbd/patches/SABnzbd-0.6.0RC2-001_defaults-0.1.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff -Naur SABnzbd-0.6.0RC2/sabnzbd/constants.py SABnzbd-0.6.0RC2.patch/sabnzbd/constants.py ---- SABnzbd-0.6.0RC2/sabnzbd/constants.py 2011-04-10 16:06:27.000000000 +0200 -+++ SABnzbd-0.6.0RC2.patch/sabnzbd/constants.py 2011-04-16 21:49:52.858788377 +0200 -@@ -70,8 +70,8 @@ - DB_HISTORY_NAME = 'history%s.db' % DB_HISTORY_VERSION - DB_QUEUE_NAME = 'queue%s.db' % DB_QUEUE_VERSION - --DEF_DOWNLOAD_DIR = 'Downloads/incomplete' --DEF_COMPLETE_DIR = 'Downloads/complete' -+DEF_DOWNLOAD_DIR = '/storage/downloads/incoming/' -+DEF_COMPLETE_DIR = '/storage/downloads/' - DEF_CACHE_DIR = 'cache' - DEF_ADMIN_DIR = 'admin' - DEF_LOG_DIR = 'logs' -@@ -83,12 +83,12 @@ - DEF_STDINTF = 'smpl' - DEF_SKIN_COLORS = {'smpl':'white', 'classic':'darkblue', 'mobile':'light', 'plush' : 'gold'} - DEF_MAIN_TMPL = 'templates/main.tmpl' --DEF_INI_FILE = 'sabnzbd.ini' --DEF_HOST = 'localhost' --DEF_PORT_WIN = 8080 --DEF_PORT_UNIX = 8080 --DEF_PORT_WIN_SSL = 9090 --DEF_PORT_UNIX_SSL= 9090 -+DEF_INI_FILE = 'sabnzbd.conf' -+DEF_HOST = '0.0.0.0' -+DEF_PORT_WIN = 8081 -+DEF_PORT_UNIX = 8081 -+DEF_PORT_WIN_SSL = 9081 -+DEF_PORT_UNIX_SSL= 9081 - DEF_WORKDIR = 'sabnzbd' - DEF_LOG_FILE = 'sabnzbd.log' - DEF_LOG_ERRFILE = 'sabnzbd.error.log' diff --git a/packages/addons/downloadmanager/SABnzbd/patches/SABnzbd-0.6.0RC2-001_remove_default_settings-0.2.patch b/packages/addons/downloadmanager/SABnzbd/patches/SABnzbd-0.6.0RC2-001_remove_default_settings-0.2.patch new file mode 100644 index 0000000000..6929607456 --- /dev/null +++ b/packages/addons/downloadmanager/SABnzbd/patches/SABnzbd-0.6.0RC2-001_remove_default_settings-0.2.patch @@ -0,0 +1,214 @@ +diff -Naur SABnzbd-0.6.0RC2/interfaces/Plush/templates/config_directories.tmpl SABnzbd-0.6.0RC2.patch/interfaces/Plush/templates/config_directories.tmpl +--- SABnzbd-0.6.0RC2/interfaces/Plush/templates/config_directories.tmpl 2011-04-10 16:06:26.000000000 +0200 ++++ SABnzbd-0.6.0RC2.patch/interfaces/Plush/templates/config_directories.tmpl 2011-04-22 15:08:09.323174151 +0200 +@@ -109,49 +109,6 @@ + + + +-
+-
+-

$T('systemFolders')

+-

$T('base-folder'):
$my_lcldata

+-
+-
+-
+- +- +- +-
+-
+- +- +-
+-
+- +- +-
+-
+-
+- +
+
+

 

+diff -Naur SABnzbd-0.6.0RC2/interfaces/Plush/templates/config_general.tmpl SABnzbd-0.6.0RC2.patch/interfaces/Plush/templates/config_general.tmpl +--- SABnzbd-0.6.0RC2/interfaces/Plush/templates/config_general.tmpl 2011-04-10 16:06:26.000000000 +0200 ++++ SABnzbd-0.6.0RC2.patch/interfaces/Plush/templates/config_general.tmpl 2011-04-22 14:59:06.304131312 +0200 +@@ -14,82 +14,6 @@ +
+
+
+- +- +-
+-
+- +- +-
+-
+- +- +-
+-
+- +- +-
+-
+- +- +-
+-
+- +- +-
+-
+ +-
+
+
+ +@@ -152,36 +69,6 @@ + $T('explain-enable_https') + + +-
+- +- +-
+-
+- +- +-
+-
+- +- +-
+ + + +diff -Naur SABnzbd-0.6.0RC2/interfaces/Plush/templates/config_switches.tmpl SABnzbd-0.6.0RC2.patch/interfaces/Plush/templates/config_switches.tmpl +--- SABnzbd-0.6.0RC2/interfaces/Plush/templates/config_switches.tmpl 2011-04-10 16:06:26.000000000 +0200 ++++ SABnzbd-0.6.0RC2.patch/interfaces/Plush/templates/config_switches.tmpl 2011-04-22 15:21:32.791455752 +0200 +@@ -12,20 +12,6 @@ +

$T('swtag-general')

+ +
+-
+- 0 then "checked=1" else ""#--> /> +- +-
+-
+- 0 then "checked=1" else ""#--> /> +- +-
+ +
+ 0 then "checked=1" else ""#--> /> diff --git a/packages/addons/downloadmanager/SABnzbd/patches/SABnzbd-0.6.0RC2-002-remove_host_settings-0.1.patch b/packages/addons/downloadmanager/SABnzbd/patches/SABnzbd-0.6.0RC2-002-remove_host_settings-0.1.patch deleted file mode 100644 index d33207187b..0000000000 --- a/packages/addons/downloadmanager/SABnzbd/patches/SABnzbd-0.6.0RC2-002-remove_host_settings-0.1.patch +++ /dev/null @@ -1,70 +0,0 @@ -diff -Naur SABnzbd-0.6.0RC2/interfaces/Classic/templates/config_general.tmpl SABnzbd-0.6.0RC2.patch/interfaces/Classic/templates/config_general.tmpl ---- SABnzbd-0.6.0RC2/interfaces/Classic/templates/config_general.tmpl 2011-04-16 23:15:34.940298239 +0200 -+++ SABnzbd-0.6.0RC2.patch/interfaces/Classic/templates/config_general.tmpl 2011-04-16 23:21:11.140812740 +0200 -@@ -13,16 +13,6 @@ - - $T('webServer') - $T('restartRequired')

--$T('opt-host'):
--$T('explain-host')
-- --
--
--$T('opt-port'):
--$T('explain-port')
-- --
--
- $T('opt-web_dir'):
- $T('explain-web_dir')
- -- -- --
--
-- -- --
--
-
+- +-
+- +- +- +-
+- +-
+
- -- -- -- --
[donate]Sickbeard is free, but you can contribute by giving a donation.
-- - #include $os.path.join($sickbeard.PROG_DIR, "data/interfaces/default/inc_bottom.tmpl") -diff --git a/data/interfaces/default/inc_top.tmpl b/data/interfaces/default/inc_top.tmpl -index b88e57c..11c6987 100644 ---- a/data/interfaces/default/inc_top.tmpl -+++ b/data/interfaces/default/inc_top.tmpl -@@ -147,19 +147,6 @@ table.tablesorter thead tr .headerSortDown { background-image: url("$sbRoot/imag - - - --#if $sickbeard.NEWEST_VERSION_STRING: --
--
-- $sickbeard.NEWEST_VERSION_STRING --
--
--
--#end if -- - - #if $varExists('submenu'): - -
-- -- --
--
- - -
-@@ -31,21 +27,6 @@ - - - --
-- -- --
--
-- -- <% hasGit = updater.hasGit() %> -- -- % if hasGit: --

-- To enable the CouchPotato Updater, remove the ".git" folder. -- Otherwise use "git pull". --

-- % endif --
-
-
-

Search

--- -1.7.4.4 - diff --git a/packages/addons/downloadmanager/CouchPotato/patches/CouchPotato-datadir-Set_defaults.patch b/packages/addons/downloadmanager/CouchPotato/patches/CouchPotato-datadir-Set_defaults.patch deleted file mode 100644 index a99ced46f2..0000000000 --- a/packages/addons/downloadmanager/CouchPotato/patches/CouchPotato-datadir-Set_defaults.patch +++ /dev/null @@ -1,31 +0,0 @@ -From a2196e61c14dd0437754406d007ae6e8273eb9a6 Mon Sep 17 00:00:00 2001 -From: Anthony Nash -Date: Wed, 20 Apr 2011 16:00:07 +0100 -Subject: [PATCH 2/2] Set defaults - ---- - app/config/configApp.py | 6 +++--- - 1 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/app/config/configApp.py b/app/config/configApp.py -index fb0e2d0..8247df6 100644 ---- a/app/config/configApp.py -+++ b/app/config/configApp.py -@@ -39,11 +39,11 @@ class configApp(): - self.addSection('global') - self.setDefault('global', 'server.environment', 'production') - self.setDefault('global', 'host', '0.0.0.0') -- self.setDefault('global', 'port', 5000) -+ self.setDefault('global', 'port', 8083) - self.setDefault('global', 'username', '') - self.setDefault('global', 'password', '') -- self.setDefault('global', 'launchbrowser', True) -- self.setDefault('global', 'updater', True) -+ self.setDefault('global', 'launchbrowser', False) -+ self.setDefault('global', 'updater', False) - self.setDefault('global', 'git', 'git') - self.setDefault('global', 'urlBase', '') - self.setDefault('global', 'ignoreWords', '') --- -1.7.4.4 - diff --git a/packages/addons/downloadmanager/CouchPotato/patches/CouchPotato-ded60e1-000-add_datadir_and_config_support-0.1.patch b/packages/addons/downloadmanager/CouchPotato/patches/CouchPotato-ded60e1-000-add_datadir_and_config_support-0.1.patch new file mode 100644 index 0000000000..afa884f705 --- /dev/null +++ b/packages/addons/downloadmanager/CouchPotato/patches/CouchPotato-ded60e1-000-add_datadir_and_config_support-0.1.patch @@ -0,0 +1,186 @@ +diff -Naur CouchPotato-ded60e1/app/config/db.py CouchPotato-ded60e1.patch/app/config/db.py +--- CouchPotato-ded60e1/app/config/db.py 2011-04-23 19:55:33.000000000 +0200 ++++ CouchPotato-ded60e1.patch/app/config/db.py 2011-04-23 20:26:44.495557932 +0200 +@@ -10,6 +10,7 @@ + import datetime + import os + import sys ++import app.config + + log = CPLog(__name__) + +@@ -24,7 +25,7 @@ + else: + path = os.path.join(os.path.abspath(os.path.curdir), 'data.db') + else: +- path = os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))), 'data.db') ++ path = os.path.join(app.config.DATADIR, 'data.db') + + engine = create_engine('sqlite:///%s' % path) + metadata = MetaData(engine) +diff -Naur CouchPotato-ded60e1/app/config/__init__.py CouchPotato-ded60e1.patch/app/config/__init__.py +--- CouchPotato-ded60e1/app/config/__init__.py 2011-04-23 19:55:33.000000000 +0200 ++++ CouchPotato-ded60e1.patch/app/config/__init__.py 2011-04-23 20:26:44.480558230 +0200 +@@ -0,0 +1 @@ ++DATADIR=None +diff -Naur CouchPotato-ded60e1/app/controllers/log.py CouchPotato-ded60e1.patch/app/controllers/log.py +--- CouchPotato-ded60e1/app/controllers/log.py 2011-04-23 19:55:33.000000000 +0200 ++++ CouchPotato-ded60e1.patch/app/controllers/log.py 2011-04-23 20:26:44.505557734 +0200 +@@ -4,6 +4,7 @@ + from markupsafe import escape + import cherrypy + import os ++import app.config + + log = CPLog(__name__) + file = 'CouchPotato.log' +@@ -56,7 +57,7 @@ + return redirect(url(controller = 'log', action = 'index')) + + def logDir(self): +- return os.path.join(cherrypy.config.get('runPath'), 'logs') ++ return os.path.join(app.config.DATADIR, 'logs') + + def logFile(self): + return os.path.join(self.logDir(), file) +diff -Naur CouchPotato-ded60e1/CouchPotato.py CouchPotato-ded60e1.patch/CouchPotato.py +--- CouchPotato-ded60e1/CouchPotato.py 2011-04-23 19:55:33.000000000 +0200 ++++ CouchPotato-ded60e1.patch/CouchPotato.py 2011-04-23 20:26:50.127445945 +0200 +@@ -3,6 +3,7 @@ + import os + + rundir = os.path.dirname(os.path.abspath(__file__)) ++ + try: + frozen = sys.frozen + except AttributeError: +@@ -20,28 +21,9 @@ + sys.path.insert(0, path_base) + sys.path.insert(0, os.path.join(path_base, 'library')) + +-# Configure logging +-from app.config.cplog import CPLog +-debug = os.path.isfile(os.path.join(path_base, 'debug.conf')) +-log = CPLog() +-log.config(os.path.join(rundir, 'logs'), debug) +- +-# Create cache dir +-cachedir = os.path.join(rundir, 'cache') +-if not os.path.isdir(cachedir): +- os.mkdir(cachedir) +- +-import cherrypy +-import app.config.render +-from app.config.db import initDb +-from optparse import OptionParser +-from app.config.configApp import configApp +-from app.config.routes import setup as Routes +-from app.lib.cron import CronJobs +-from app.config.updater import Updater +-from cherrypy.process import plugins +- + def server_start(): ++ from optparse import OptionParser ++ + p = OptionParser() + p.add_option('-d', action = "store_true", + dest = 'daemonize', help = "Run the server as a daemon") +@@ -50,19 +32,80 @@ + p.add_option('-p', '--pidfile', + dest = 'pidfile', default = None, + help = "Store the process id in the given file") ++ p.add_option('--config', ++ dest = 'config', default = None, ++ help = "Path to config.ini file") ++ p.add_option('--datadir', ++ dest = 'datadir', default = None, ++ help = "Path to the data directory") ++ + + options, args = p.parse_args() ++ ++ if options.datadir: ++ datadir = options.datadir ++ ++ if not os.path.isdir(datadir): ++ os.makedirs(datadir) ++ ++ else: ++ datadir = rundir ++ ++ datadir = os.path.abspath(datadir) ++ ++ if not os.access(datadir, os.W_OK): ++ raise SystemExit("Data dir must be writeable '" + datadir + "'") ++ ++ import app.config ++ app.config.DATADIR = datadir ++ ++ if options.config: ++ config = options.config ++ else: ++ config = os.path.join(datadir, 'config.ini') ++ ++ config = os.path.abspath(config) + +- config = os.path.join(rundir, 'config.ini') ++ if not os.access(os.path.dirname(config), os.W_OK) and not os.access(config, os.W_OK): ++ if not os.path.exists(os.path.dirname(config)): ++ os.makedirs(os.path.dirname(config)) ++ else: ++ raise SystemExit("Directory for config file must be writeable") ++ ++ import cherrypy ++ import app.config.render ++ ++ # Configure logging ++ from app.config.cplog import CPLog ++ ++ # Setup logging ++ debug = os.path.isfile(os.path.join(datadir, 'debug.conf')) ++ log = CPLog() ++ log.config(os.path.join(datadir, 'logs'), debug) ++ ++ # Create cache dir ++ cachedir = os.path.join(datadir, 'cache') ++ if not os.path.isdir(cachedir): ++ os.mkdir(cachedir) + + # Stop logging + if options.quiet or options.daemonize: + cherrypy.config.update({'log.screen': False}) ++ + + # Config app ++ from app.config.configApp import configApp + ca = configApp(config) ++ ++ # Setup db ++ from app.config.db import initDb + initDb() + ++ from app.config.routes import setup as Routes ++ from app.lib.cron import CronJobs ++ from app.config.updater import Updater ++ from cherrypy.process import plugins ++ + # Check an see if CP is already running + import socket + s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) +@@ -129,7 +172,7 @@ + }, + '/cache':{ + 'tools.staticdir.on': True, +- 'tools.staticdir.root': rundir, ++ 'tools.staticdir.root': datadir, + 'tools.staticdir.dir': "cache", + 'tools.expires.on': True, + 'tools.expires.secs': 3600 * 24 * 7 +@@ -173,7 +216,6 @@ + if hasattr(cherrypy.engine, "console_control_handler"): + cherrypy.engine.console_control_handler.subscribe() + +- + ## start the app + try: + cherrypy.engine.start() diff --git a/packages/addons/downloadmanager/CouchPotato/source/bin/ini_tool b/packages/addons/downloadmanager/CouchPotato/source/bin/ini_tool new file mode 100755 index 0000000000..97f7b4c433 --- /dev/null +++ b/packages/addons/downloadmanager/CouchPotato/source/bin/ini_tool @@ -0,0 +1,117 @@ +#!/usr/bin/env python + +################################################################################ +# This file is part of OpenELEC - http://www.openelec.tv +# Copyright (C) 2011 Travis Glenn Hansen (travisghansen@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 +################################################################################ + +from configobj import ConfigObj +import sys +import os +import string + +python_major = sys.version_info[0] +python_minor = sys.version_info[1] + +prog="ini_tool" +description="""Read/Write config files. + +Examples: + %(prog)s --file config.ini --action read --option [section:]username + %(prog)s --file config.ini --action write --option [section:]username --value foo""" % {'prog':prog} + +def option_required_error(option): + parser.print_usage() + print prog + ": error: " + option + " is required" + exit(2) + +if python_major > 2 or (python_major == 2 and python_minor >= 7): + import argparse + + parser = argparse.ArgumentParser( + prog=prog, + description=description, + formatter_class=argparse.RawDescriptionHelpFormatter, + ) + + parser.add_argument('--file', help='file to read/write to/from', required=True) + parser.add_argument('--action', help='read|write', required=True) + parser.add_argument('--option', help='the option key', required=True) + parser.add_argument('--value', help='value to store in the given option (only for write action)') + + options = parser.parse_args() + +else: + import optparse + + parser = optparse.OptionParser( + prog=prog, + description=description, + ) + + parser.add_option('--file', help='file to read/write to/from') + parser.add_option('--action', help='read|write') + parser.add_option('--option', help='the option key') + parser.add_option('--value', help='value to store in the given option (only for write action)') + + (options, args) = parser.parse_args() + + if not options.file: + option_required_error("--file") + if not options.action: + option_required_error("--action") + if not options.option: + option_required_error("--option") + + +if options.action != "read" and options.action != "write": + print "'" + options.action + "' is not a valid action" + parser.print_help() + exit(2) + +if options.action == "read" and not os.path.isfile(options.file): + print "'" + options.file + "' is not a file" + exit(2) + +config = ConfigObj(options.file) +keys = string.split(options.option, ":") +key_len = len(keys) +current_section = config + +if options.action == 'read': + i = 1 + for key in keys: + if i == key_len: + print current_section[key] + exit(0) + else: + current_section = current_section[key] + i += 1 +elif options.action == 'write': + i = 1 + for key in keys: + if i == key_len: + current_section[key] = options.value + elif key not in current_section: + current_section[key] = {} + current_section = current_section[key] + i += 1 + + config.write() +else: + exit(1) \ No newline at end of file diff --git a/packages/addons/downloadmanager/CouchPotato/source/default.py b/packages/addons/downloadmanager/CouchPotato/source/default.py index 5f07881ccc..08ea1c0de4 100644 --- a/packages/addons/downloadmanager/CouchPotato/source/default.py +++ b/packages/addons/downloadmanager/CouchPotato/source/default.py @@ -23,4 +23,4 @@ import xbmcaddon import os if ( __name__ == "__main__" ): - os.system("sh start.sh") + os.system("start.sh") diff --git a/packages/addons/downloadmanager/CouchPotato/source/resources/language/Dutch/strings.xml b/packages/addons/downloadmanager/CouchPotato/source/resources/language/Dutch/strings.xml deleted file mode 100644 index 6b5d8a9c19..0000000000 --- a/packages/addons/downloadmanager/CouchPotato/source/resources/language/Dutch/strings.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - CouchPotato - Gebruikers instellingen - Gebruik verificatie - Gebruikersnaam - Wachtwoord - Netwerk instellingen - Toegestane IP adressen - - diff --git a/packages/addons/downloadmanager/CouchPotato/source/resources/language/English/strings.xml b/packages/addons/downloadmanager/CouchPotato/source/resources/language/English/strings.xml deleted file mode 100644 index 56257cf4c1..0000000000 --- a/packages/addons/downloadmanager/CouchPotato/source/resources/language/English/strings.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - CouchPotato - User Settings - Use authentification - Username - Password - Network Settings - Allowed IP addresses - - diff --git a/packages/addons/downloadmanager/CouchPotato/source/resources/language/French/strings.xml b/packages/addons/downloadmanager/CouchPotato/source/resources/language/French/strings.xml deleted file mode 100644 index 67c7368756..0000000000 --- a/packages/addons/downloadmanager/CouchPotato/source/resources/language/French/strings.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - CouchPotato - Préférences utilisateur - Utiliser une authentification - Nom d'utilisateur - Mot de passe - Préférences réseau - Adresses IP autorisées - - diff --git a/packages/addons/downloadmanager/CouchPotato/source/resources/language/German/strings.xml b/packages/addons/downloadmanager/CouchPotato/source/resources/language/German/strings.xml deleted file mode 100644 index 1f4f729f6f..0000000000 --- a/packages/addons/downloadmanager/CouchPotato/source/resources/language/German/strings.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - CouchPotato - Benutzer Einstellungen - Authentifizierung verwenden - Benutzername - Passwort - Netzwerk Einstellungen - Erlaubte IP Adressen - - diff --git a/packages/addons/downloadmanager/CouchPotato/source/resources/language/Norwegian/strings.xml b/packages/addons/downloadmanager/CouchPotato/source/resources/language/Norwegian/strings.xml deleted file mode 100644 index d9e6aa758f..0000000000 --- a/packages/addons/downloadmanager/CouchPotato/source/resources/language/Norwegian/strings.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - CouchPotato - Bruker Instillinger - Bruk inlogging - Brukernavn - Passord - Nettverksinstillinger - Tilatte IP addresser - - diff --git a/packages/addons/downloadmanager/CouchPotato/source/resources/settings.xml b/packages/addons/downloadmanager/CouchPotato/source/resources/settings.xml deleted file mode 100644 index d02bcd7779..0000000000 --- a/packages/addons/downloadmanager/CouchPotato/source/resources/settings.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/packages/addons/downloadmanager/CouchPotato/source/start.sh b/packages/addons/downloadmanager/CouchPotato/source/start.sh old mode 100644 new mode 100755 index 4e1078e59c..7f956d88a2 --- a/packages/addons/downloadmanager/CouchPotato/source/start.sh +++ b/packages/addons/downloadmanager/CouchPotato/source/start.sh @@ -21,12 +21,82 @@ # http://www.gnu.org/copyleft/gpl.html ################################################################################ -COUCHPOTATO_HOME="$HOME/.xbmc/userdata/addon_data/addon.downloadmanager.CouchPotato" -COUCHPOTATO_SETTINGS="$COUCHPOTATO_HOME/settings.xml" + export PATH="$PATH:./bin" + export PYTHONPATH="$PYTHONPATH:./pylib" -mkdir -p /var/run -mkdir -p $COUCHPOTATO_HOME + COUCHPOTATO_HOME="$HOME/.xbmc/userdata/addon_data/addon.downloadmanager.CouchPotato" + SABNZBD_SETTINGS="$HOME/.xbmc/userdata/addon_data/addon.downloadmanager.SABnzbd/sabnzbd.ini" + XBMC_SETTINGS="$HOME/.xbmc/userdata/guisettings.xml" -python ./CouchPotato/CouchPotato.py -d \ - --pidfile=/var/run/couchpotato.pid \ - --datadir $COUCHPOTATO_HOME + write_ini() { + python bin/ini_tool --action=write \ + --file=$COUCHPOTATO_HOME/config.ini \ + --option="$1:$2" \ + --value="$3" + } + + read_sabconfig() { + python bin/ini_tool --action=read \ + --file=$SABNZBD_SETTINGS \ + --option="$1:$2" + } + + read_xbmcconfig() { + grep "<$1>" $XBMC_SETTINGS | sed -e "s,[[:space:]]*<$1>,," -e "s,,," + } + + mkdir -p $COUCHPOTATO_HOME + chmod +x ./bin/* + + sleep 5 + + if [ ! -f "$COUCHPOTATO_HOME/config.ini" ]; then + COUCHPOTATO_FIRSTRUN="yes" + fi + + # default values + COUCHPOTATO_LAUNCHBROWSER="False" + COUCHPOTATO_VERSIONCHECK="False" + COUCHPOTATO_PORT="8083" + COUCHPOTATO_USEXBMC="True" + COUCHPOTATO_UPDATEXBMC="True" + + # read xbmc settings + XBMC_HOST="127.0.0.1" + XBMC_PORT=`read_xbmcconfig webserverport` + XBMC_USER=`read_xbmcconfig webserverusername` + XBMC_PWD=`read_xbmcconfig webserverpassword` + + # read sabnzbd settings + SABNZBD_HOST="127.0.0.1" + SABNZBD_PORT="8081" + SABNZBD_APIKEY=`read_sabconfig misc api_key` + SABNZBD_WEBUSERNAME=`read_sabconfig misc username` + SABNZBD_WEBPASSWORD=`read_sabconfig misc password` + + if [ -z "$COUCHPOTATO_HOST" ]; then + COUCHPOTATO_HOST="0.0.0.0" + fi + + write_ini global host $COUCHPOTATO_HOST + write_ini global port $COUCHPOTATO_PORT + write_ini global username $SABNZBD_WEBUSERNAME + write_ini global password $SABNZBD_WEBPASSWORD + write_ini global launchbrowser $COUCHPOTATO_LAUNCHBROWSER + write_ini global updater $COUCHPOTATO_VERSIONCHECK + + write_ini Sabnzbd username $SABNZBD_WEBUSERNAME + write_ini Sabnzbd password $SABNZBD_WEBPASSWORD + write_ini Sabnzbd apikey $SABNZBD_APIKEY + write_ini Sabnzbd host "$SABNZBD_HOST:$SABNZBD_PORT" + + write_ini XBMC enabled $COUCHPOTATO_USEXBMC + write_ini XBMC host "$XBMC_HOST:$XBMC_PORT" + write_ini XBMC username $XBMC_USER + write_ini XBMC password $XBMC_PWD + + if [ "$COUCHPOTATO_FIRSTRUN" = "yes" ]; then + write_ini XBMC updateoneonly $COUCHPOTATO_UPDATEXBMC + fi + + python ./CouchPotato/CouchPotato.py -d --datadir $COUCHPOTATO_HOME --config $COUCHPOTATO_HOME/config.ini From 568f1ccbe1a4dbd7c4f3231493bfe0dcb7688187 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Sun, 24 Apr 2011 17:19:04 +0200 Subject: [PATCH 19/23] tools/mkpkg: add script to download and pack CouchPotato Signed-off-by: Stephan Raue --- tools/mkpkg/mkpkg_couchpotato | 43 +++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100755 tools/mkpkg/mkpkg_couchpotato diff --git a/tools/mkpkg/mkpkg_couchpotato b/tools/mkpkg/mkpkg_couchpotato new file mode 100755 index 0000000000..affee0f4c5 --- /dev/null +++ b/tools/mkpkg/mkpkg_couchpotato @@ -0,0 +1,43 @@ +#!/bin/sh +################################################################################ +# 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 +################################################################################ + +echo "getting sources..." + if [ ! -d CouchPotato.git ]; then + git clone git://github.com/RuudBurger/CouchPotato.git CouchPotato.git + fi + + cd CouchPotato.git + git pull + GIT_REV=`git log -n1 --format=%h` + cd .. + +echo "copying sources..." + rm -rf CouchPotato-$GIT_REV + cp -R CouchPotato.git CouchPotato-$GIT_REV + +echo "cleaning sources..." + rm -rf CouchPotato-$GIT_REV/.git + +echo "packing sources..." + tar cvjf CouchPotato-$GIT_REV.tar.bz2 CouchPotato-$GIT_REV + +echo "remove temporary sourcedir..." + rm -rf CouchPotato-$GIT_REV From 61796882473d409ecd1c8020927583e459d41e2e Mon Sep 17 00:00:00 2001 From: Colossus Date: Sun, 24 Apr 2011 02:36:31 +0200 Subject: [PATCH 20/23] add mkpg script's for git repository from opdenkamp (ppa & master / xbmc-pvr) and tvheadend --- tools/mkpkg/mkpkg_tvheadend | 60 +++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100755 tools/mkpkg/mkpkg_tvheadend diff --git a/tools/mkpkg/mkpkg_tvheadend b/tools/mkpkg/mkpkg_tvheadend new file mode 100755 index 0000000000..5fde37a539 --- /dev/null +++ b/tools/mkpkg/mkpkg_tvheadend @@ -0,0 +1,60 @@ +#!/bin/sh +################################################################################ +# 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 +################################################################################ + +MKPKG_CURRENTPATH=$(pwd) +MKPKG_TMP="$MKPKG_CURRENTPATH/mkpkg-temp" + +mkdir -p $MKPKG_TMP +cd $MKPKG_TMP + +echo "deleteing old revisions..." + ls $MKPKG_TMP | \ + while read I; do + if [ -f "${I}" ] ; then + case "${I}" in + tvheadend.tar.bz2) rm "${I}";; + esac + elif [ -d "${I}" ] ; then + case "${I}" in + tvheadend) rm -Rf "${I}";; + esac + fi + done + +echo "getting sources if needed (or update only)" + if [ ! -d tvheadend ]; then + git clone git://github.com/andoma/tvheadend.git tvheadend + fi + +echo "updateing revision..." + cd tvheadend + git pull + cd $MKPKG_TMP + +echo "getting version..." + cd tvheadend + REV=$(git rev-parse --short HEAD) + cd $MKPKG_TMP + +echo "packing sources..." + tar cvjf tvheadend-$REV.tar.bz2 tvheadend + +cd $MKPKG_CURRENTPATH \ No newline at end of file From d50cc4caf9f675e1333cb0ab5e8d350cfb75182c Mon Sep 17 00:00:00 2001 From: Colossus Date: Sun, 24 Apr 2011 15:00:01 +0200 Subject: [PATCH 21/23] make package scripts for getting git sources from opdenkamp & tvheadend --- tools/mkpkg/mkpkg_tvheadend | 22 +++++++++------------- 1 file changed, 9 insertions(+), 13 deletions(-) diff --git a/tools/mkpkg/mkpkg_tvheadend b/tools/mkpkg/mkpkg_tvheadend index 5fde37a539..358a559993 100755 --- a/tools/mkpkg/mkpkg_tvheadend +++ b/tools/mkpkg/mkpkg_tvheadend @@ -24,20 +24,10 @@ MKPKG_TMP="$MKPKG_CURRENTPATH/mkpkg-temp" mkdir -p $MKPKG_TMP cd $MKPKG_TMP +mkdir -p dest echo "deleteing old revisions..." - ls $MKPKG_TMP | \ - while read I; do - if [ -f "${I}" ] ; then - case "${I}" in - tvheadend.tar.bz2) rm "${I}";; - esac - elif [ -d "${I}" ] ; then - case "${I}" in - tvheadend) rm -Rf "${I}";; - esac - fi - done + rm -Rf dest/tvheadend* echo "getting sources if needed (or update only)" if [ ! -d tvheadend ]; then @@ -53,8 +43,14 @@ echo "getting version..." cd tvheadend REV=$(git rev-parse --short HEAD) cd $MKPKG_TMP + +echo "create repo for packaging tvheadend -> tvheadend-$REV" + cp -R tvheadend tvheadend-$REV echo "packing sources..." - tar cvjf tvheadend-$REV.tar.bz2 tvheadend + tar cvjf dest/tvheadend-$REV.tar.bz2 --exclude ".git" --exclude ".gitignore" tvheadend-$REV + +echo "CLEANUP" + rm -Rf tvheadend-$REV cd $MKPKG_CURRENTPATH \ No newline at end of file From db681808c62ec1dfff6df3733ac746a0898613fc Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Sun, 24 Apr 2011 18:31:20 +0200 Subject: [PATCH 22/23] mkpkg_tvheadend: simplyfing Signed-off-by: Stephan Raue --- tools/mkpkg/mkpkg_tvheadend | 43 +++++++++++++------------------------ 1 file changed, 15 insertions(+), 28 deletions(-) diff --git a/tools/mkpkg/mkpkg_tvheadend b/tools/mkpkg/mkpkg_tvheadend index 358a559993..f81c7dd0ca 100755 --- a/tools/mkpkg/mkpkg_tvheadend +++ b/tools/mkpkg/mkpkg_tvheadend @@ -19,38 +19,25 @@ # http://www.gnu.org/copyleft/gpl.html ################################################################################ -MKPKG_CURRENTPATH=$(pwd) -MKPKG_TMP="$MKPKG_CURRENTPATH/mkpkg-temp" - -mkdir -p $MKPKG_TMP -cd $MKPKG_TMP -mkdir -p dest - -echo "deleteing old revisions..." - rm -Rf dest/tvheadend* - -echo "getting sources if needed (or update only)" - if [ ! -d tvheadend ]; then - git clone git://github.com/andoma/tvheadend.git tvheadend +echo "getting sources..." + if [ ! -d hts-tvheadend.git ]; then + git clone https://github.com/andoma/tvheadend.git hts-tvheadend.git fi -echo "updateing revision..." - cd tvheadend + cd hts-tvheadend.git git pull - cd $MKPKG_TMP + GIT_REV=`git log -n1 --format=%h` + cd .. -echo "getting version..." - cd tvheadend - REV=$(git rev-parse --short HEAD) - cd $MKPKG_TMP +echo "copying sources..." + rm -rf hts-tvheadend-$GIT_REV + cp -R hts-tvheadend.git hts-tvheadend-$GIT_REV + +echo "cleaning sources..." + rm -rf hts-tvheadend-$GIT_REV/.git -echo "create repo for packaging tvheadend -> tvheadend-$REV" - cp -R tvheadend tvheadend-$REV - echo "packing sources..." - tar cvjf dest/tvheadend-$REV.tar.bz2 --exclude ".git" --exclude ".gitignore" tvheadend-$REV + tar cvjf hts-tvheadend-$GIT_REV.tar.bz2 hts-tvheadend-$GIT_REV -echo "CLEANUP" - rm -Rf tvheadend-$REV - -cd $MKPKG_CURRENTPATH \ No newline at end of file +echo "remove temporary sourcedir..." + rm -rf hts-tvheadend-$GIT_REV From 115399cbe1517f390227c5e3f188c61abf7ce9fa Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Sun, 24 Apr 2011 18:59:12 +0200 Subject: [PATCH 23/23] hts-tvheadend: update to hts-tvheadend-90e3570 Signed-off-by: Stephan Raue --- packages/multimedia/hts-tvheadend/meta | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/multimedia/hts-tvheadend/meta b/packages/multimedia/hts-tvheadend/meta index fa17261fc2..d9145c8059 100644 --- a/packages/multimedia/hts-tvheadend/meta +++ b/packages/multimedia/hts-tvheadend/meta @@ -19,12 +19,13 @@ ################################################################################ PKG_NAME="hts-tvheadend" -PKG_VERSION="2.12" +PKG_VERSION="90e3570" PKG_REV="1" PKG_ARCH="any" PKG_LICENSE="GPL" PKG_SITE="http://www.lonelycoder.com/hts/tvheadend_overview.html" -PKG_URL="http://www.lonelycoder.com/debian/dists/hts/main/source/${PKG_NAME}_${PKG_VERSION}.tar.gz" +# PKG_URL="http://www.lonelycoder.com/debian/dists/hts/main/source/${PKG_NAME}_${PKG_VERSION}.tar.gz" +PKG_URL="$OPENELEC_SRC/${PKG_NAME}-${PKG_VERSION}.tar.bz2" PKG_DEPENDS="libiconv avahi" PKG_BUILD_DEPENDS="toolchain libiconv avahi" PKG_PRIORITY="optional"