Joseph Nuthalapati cd4bd17173
components: Introduce new component - Packages
Signed-off-by: Joseph Nuthalapati <njoseph@riseup.net>
[sunil: isort all files]
[sunil: Remove component in datetime component as managed_packages is empty]
[sunil: Minor refactor in minidlna for consistency]
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2021-11-08 16:03:42 -08:00

47 lines
1.1 KiB
Python

# SPDX-License-Identifier: AGPL-3.0-or-later
"""
FreedomBox app to configure Single Sign On services.
"""
from django.utils.translation import gettext_lazy as _
from plinth import actions
from plinth import app as app_module
from plinth.package import Packages
version = 1
is_essential = True
depends = ['security', 'apache']
managed_packages = [
'libapache2-mod-auth-pubtkt',
'openssl',
'python3-openssl',
'flite',
]
class SSOApp(app_module.App):
"""FreedomBox app for single sign on."""
app_id = 'sso'
def __init__(self):
"""Create components for the app."""
super().__init__()
info = app_module.Info(app_id=self.app_id, version=version,
is_essential=is_essential, depends=depends,
name=_('Single Sign On'))
self.add(info)
packages = Packages('packages-sso', managed_packages)
self.add(packages)
def setup(helper, old_version=None):
"""Install the required packages"""
helper.install(managed_packages)
actions.superuser_run('auth-pubtkt', ['create-key-pair'])