roundcube: Use drop-in config component for /etc files

Tests:

- Config files are all symlinks in /etc/
- Web interface works
- fail2ban jail is enabled

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
This commit is contained in:
Sunil Mohan Adapa 2023-05-16 12:05:42 -07:00 committed by James Valleroy
parent 23f7497c05
commit 8b1dfc525b
No known key found for this signature in database
GPG Key ID: 77C0C75E7B650808
4 changed files with 10 additions and 1 deletions

View File

@ -124,3 +124,5 @@ rm_conffile /etc/NetworkManager/dispatcher.d/10-freedombox-batman 23.10~
rm_conffile /etc/pagekite.d/90_freedombox_certs.rc 23.10~ rm_conffile /etc/pagekite.d/90_freedombox_certs.rc 23.10~
rm_conffile /etc/dpkg/origins/freedombox 23.10~ rm_conffile /etc/dpkg/origins/freedombox 23.10~
rm_conffile /etc/apache2/conf-available/radicale2-freedombox.conf 23.10~ rm_conffile /etc/apache2/conf-available/radicale2-freedombox.conf 23.10~
rm_conffile /etc/apache2/conf-available/roundcube-freedombox.conf 23.10~
rm_conffile /etc/fail2ban/jail.d/roundcube-auth-freedombox.conf 23.10~

View File

@ -7,6 +7,7 @@ from django.utils.translation import gettext_lazy as _
from plinth import app as app_module from plinth import app as app_module
from plinth import frontpage, menu from plinth import frontpage, menu
from plinth.config import DropinConfigs
from plinth.modules.apache.components import Webserver from plinth.modules.apache.components import Webserver
from plinth.modules.backups.components import BackupRestore from plinth.modules.backups.components import BackupRestore
from plinth.modules.firewall.components import Firewall from plinth.modules.firewall.components import Firewall
@ -39,7 +40,7 @@ class RoundcubeApp(app_module.App):
app_id = 'roundcube' app_id = 'roundcube'
_version = 3 _version = 4
def __init__(self): def __init__(self):
"""Create components for the app.""" """Create components for the app."""
@ -70,6 +71,12 @@ class RoundcubeApp(app_module.App):
['sqlite3', 'roundcube', 'roundcube-core', 'roundcube-sqlite3']) ['sqlite3', 'roundcube', 'roundcube-core', 'roundcube-sqlite3'])
self.add(packages) self.add(packages)
dropin_configs = DropinConfigs('dropin-configs-roundcube', [
'/etc/apache2/conf-available/roundcube-freedombox.conf',
'/etc/fail2ban/jail.d/roundcube-auth-freedombox.conf',
])
self.add(dropin_configs)
firewall = Firewall('firewall-roundcube', info.name, firewall = Firewall('firewall-roundcube', info.name,
ports=['http', 'https'], is_external=True) ports=['http', 'https'], is_external=True)
self.add(firewall) self.add(firewall)