diff --git a/apps/portal/pages/index.vue b/apps/portal/pages/index.vue
index 6da2061..8558ecc 100644
--- a/apps/portal/pages/index.vue
+++ b/apps/portal/pages/index.vue
@@ -31,7 +31,7 @@ const { user, logout } = useOidcAuth()
Files
OCIS · S3-backed storage
-
+
Mail
Stalwart · JMAP/IMAP/SMTP
diff --git a/infrastructure/docker-compose/docker-compose.yml b/infrastructure/docker-compose/docker-compose.yml
index e4a4dab..3b4f5c3 100644
--- a/infrastructure/docker-compose/docker-compose.yml
+++ b/infrastructure/docker-compose/docker-compose.yml
@@ -203,6 +203,10 @@ services:
- "4190:4190" # ManageSieve
environment:
STALWART_FQDN: mail.dezky.local
+ # Pin the recovery admin so it survives restarts. Without this, Stalwart
+ # generates a one-time-shown password at first boot and discards it after
+ # initial setup.
+ STALWART_RECOVERY_ADMIN: admin:${STALWART_ADMIN_PASSWORD}
volumes:
- stalwart_data:/opt/stalwart
- ./configs/stalwart/config.toml:/opt/stalwart/etc/config.toml:ro