Add email support to nextcloud

This commit is contained in:
SebastianStork 2024-08-25 22:38:15 +02:00
parent dbb8fdcfbb
commit 69e69307e4
4 changed files with 40 additions and 6 deletions

View file

@ -0,0 +1,35 @@
{
config,
pkgs,
lib,
...
}:
{
options.myConfig.nextcloud.enable = lib.mkEnableOption "";
config = lib.mkIf config.myConfig.nextcloud.enable {
sops.secrets."nextcloud/admin-pass" = {
owner = config.services.nextcloud.config.dbname;
group = config.services.nextcloud.config.dbuser;
};
services.nextcloud = {
enable = true;
package = pkgs.nextcloud29;
home = "/data/nextcloud";
hostName = config.networking.fqdn;
database.createLocally = true;
config = {
dbtype = "pgsql";
adminuser = "admin";
adminpassFile = config.sops.secrets."nextcloud/admin-pass".path;
};
settings = {
log_type = "file";
default_phone_region = "DE";
};
};
};
}

View file

@ -0,0 +1,29 @@
{ config, lib, ... }:
{
options.myConfig.nextcloud.emailServer.enable = lib.mkEnableOption "";
config = lib.mkIf config.myConfig.nextcloud.emailServer.enable {
sops.secrets."nextcloud/gmail-password" = {
owner = config.services.nextcloud.config.dbname;
group = config.services.nextcloud.config.dbuser;
};
programs.msmtp = {
enable = true;
accounts.default = {
auth = true;
tls = true;
host = "smtp.gmail.com";
port = "587";
user = "nextcloud.stork";
from = "nextcloud.stork@gmail.com";
passwordeval = "cat ${config.sops.secrets."nextcloud/gmail-password".path}";
};
};
services.nextcloud.settings = {
mail_smtpmode = "sendmail";
mail_sendmailmode = "pipe";
};
};
}