Add a new app for SOGo
SOGo is an open source webmail client and groupware available in Debian. Make a new FreedomBox app for it to be used with the local Postfix/Dovecot email server.
SOGo requires a database to store events/tasks as well as user settings. Memcached is also required for caching.
Users log in with their username (as opposed to username + domain on Roundcube).
Authentication is done via openldap. It is possible to authenticate with apache, however it is limited to http basic auth, so mod_auth_tkt cannot be used. See: https://github.com/Alinto/sogo/blob/b40d777a86104d08dbd8168b8e12c198a3d4321a/SoObjects/SOGo/SOGoProxyAuthenticator.m#L137 Configuring http basic auth in my opinion wouldn't add much to the user experience. It would actually take away the usage of SOGO's built in TOTP feature.
SOGo only accepts configurations from /etc/sogo/sogo.conf, other configs from sogo.d don't get recognised.
The email app has to be configured with a domain name from Name Services for SOGo to work.
Tests:
- Install app and log in with a FreedomBox user. Create a new event
titled "Lunch with
🍕 and fries". Confirm the pizza character displays properly. - Backup the app and uninstall it.
- Restore from the backup, log in and confirm the event gets restored.
- Send email via SOGo in a production setup: https://www.mail-tester.com/test-pdf2yzy6n
Signed-off-by: Benedek Nagy contact@nbenedek.me