diff --git a/nixos/modules/services/mail/stalwart-mail.nix b/nixos/modules/services/mail/stalwart-mail.nix index f576a426b318..8ab3497f7a17 100644 --- a/nixos/modules/services/mail/stalwart-mail.nix +++ b/nixos/modules/services/mail/stalwart-mail.nix @@ -32,10 +32,15 @@ in { global.tracing.level = mkDefault "info"; queue.path = mkDefault "${dataDir}/queue"; report.path = mkDefault "${dataDir}/reports"; + store.db.type = mkDefault "sqlite"; store.db.path = mkDefault "${dataDir}/data/index.sqlite3"; - store.blob.type = mkDefault "local"; - store.blob.local.path = mkDefault "${dataDir}/data/blobs"; + store.blob.type = mkDefault "fs"; + store.blob.path = mkDefault "${dataDir}/data/blobs"; + storage.data = mkDefault "db"; + storage.fts = mkDefault "db"; + storage.blob = mkDefault "blob"; resolver.type = mkDefault "system"; + resolver.public-suffix = mkDefault ["https://publicsuffix.org/list/public_suffix_list.dat"]; }; systemd.services.stalwart-mail = { @@ -57,8 +62,8 @@ in { KillSignal = "SIGINT"; Restart = "on-failure"; RestartSec = 5; - StandardOutput = "syslog"; - StandardError = "syslog"; + StandardOutput = "journal"; + StandardError = "journal"; SyslogIdentifier = "stalwart-mail"; DynamicUser = true; diff --git a/nixos/tests/stalwart-mail.nix b/nixos/tests/stalwart-mail.nix index b5589966a160..634c0e2e3926 100644 --- a/nixos/tests/stalwart-mail.nix +++ b/nixos/tests/stalwart-mail.nix @@ -42,20 +42,22 @@ in import ./make-test-python.nix ({ lib, ... }: { session.auth.mechanisms = [ "PLAIN" ]; session.auth.directory = "in-memory"; - jmap.directory = "in-memory"; # shared with imap + storage.directory = "in-memory"; # shared with imap session.rcpt.directory = "in-memory"; queue.outbound.next-hop = [ "local" ]; directory."in-memory" = { type = "memory"; - users = [ + principals = [ { + type = "individual"; name = "alice"; secret = "foobar"; email = [ "alice@${domain}" ]; } { + type = "individual"; name = "bob"; secret = "foobar"; email = [ "bob@${domain}" ]; @@ -90,8 +92,9 @@ in import ./make-test-python.nix ({ lib, ... }: { with IMAP4('localhost') as imap: imap.starttls() - imap.login('bob', 'foobar') - imap.select('"All Mail"') + status, [caps] = imap.login('bob', 'foobar') + assert status == 'OK' + imap.select() status, [ref] = imap.search(None, 'ALL') assert status == 'OK' [msgId] = ref.split()