From fd73bcd734e447a9fe8ed3413b17146709879e0e Mon Sep 17 00:00:00 2001 From: James Valleroy Date: Sun, 7 Jun 2015 13:00:53 -0400 Subject: [PATCH] deluge: Run setup and enable after install. --- actions/deluge | 13 +++++++++++-- plinth/modules/deluge/views.py | 7 ++++++- 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/actions/deluge b/actions/deluge index 46dc4b248..6d7d40c9e 100755 --- a/actions/deluge +++ b/actions/deluge @@ -55,6 +55,9 @@ def parse_arguments(): parser = argparse.ArgumentParser() subparsers = parser.add_subparsers(dest='subcommand', help='Sub command') + # Setup deluge-web + subparsers.add_parser('setup', help='Perform first time setup operations.') + # Get whether deluge-web site is enabled subparsers.add_parser('get-enabled', help='Get whether deluge-web site is enabled') @@ -72,6 +75,14 @@ def parse_arguments(): return parser.parse_args() +def subcommand_setup(_): + """Perform first time setup operations.""" + setup() + start() + subprocess.check_call(['a2enconf', 'deluge-plinth']) + subprocess.check_call(['service', 'apache2', 'reload']) + + def subcommand_get_enabled(_): """Get whether deluge-web site is enabled.""" if os.path.isfile(APACHE_CONF_ENABLED_PATH) and \ @@ -83,8 +94,6 @@ def subcommand_get_enabled(_): def subcommand_enable(_): """Enable deluge-web site and start deluge-web.""" - setup() - start() subprocess.check_call(['a2enconf', 'deluge-plinth']) subprocess.check_call(['service', 'apache2', 'reload']) diff --git a/plinth/modules/deluge/views.py b/plinth/modules/deluge/views.py index 8d8c26647..428783a12 100644 --- a/plinth/modules/deluge/views.py +++ b/plinth/modules/deluge/views.py @@ -29,8 +29,13 @@ from plinth import actions from plinth import package +def on_install(): + """Setup deluge-web on install.""" + actions.superuser_run('deluge', ['setup']) + + @login_required -@package.required(['deluged', 'deluge-web']) +@package.required(['deluged', 'deluge-web'], on_install=on_install) def index(request): """Serve configuration page.""" status = get_status()