mirror of
https://git.pvv.ntnu.no/Drift/pvv-nixos-config.git
synced 2026-06-03 19:52:07 +02:00
58 lines
1.4 KiB
Nix
58 lines
1.4 KiB
Nix
{ config, pkgs, lib, ... }:
|
|
|
|
with lib;
|
|
let
|
|
cfg = config.services.roundcube;
|
|
domain = "webmail.pvv.ntnu.no";
|
|
in
|
|
{
|
|
sops.secrets."roundcube/postgres_password" = {
|
|
owner = "nginx";
|
|
group = "nginx";
|
|
restartUnits = [ "phpfpm-roundcube.service" ];
|
|
};
|
|
sops.secrets."roundcube/des_key" = {
|
|
owner = "nginx";
|
|
group = "nginx";
|
|
restartUnits = [ "phpfpm-roundcube.service" ];
|
|
};
|
|
|
|
services.roundcube = {
|
|
enable = true;
|
|
|
|
package = pkgs.roundcube.withPlugins (plugins: with plugins; [
|
|
persistent_login
|
|
thunderbird_labels
|
|
contextmenu
|
|
custom_from
|
|
]);
|
|
|
|
dicts = with pkgs.aspellDicts; [ en en-computers nb nn fr de it ];
|
|
maxAttachmentSize = 20;
|
|
hostName = domain;
|
|
|
|
database = {
|
|
host = "postgres.pvv.ntnu.no";
|
|
passwordFile = config.sops.secrets."roundcube/postgres_password".path;
|
|
};
|
|
|
|
extraConfig = ''
|
|
$config['enable_installer'] = false;
|
|
$config['default_host'] = "ssl://imap.pvv.ntnu.no";
|
|
$config['default_port'] = 993;
|
|
$config['smtp_server'] = "ssl://smtp.pvv.ntnu.no";
|
|
$config['smtp_port'] = 465;
|
|
$config['mail_domain'] = "pvv.ntnu.no";
|
|
$config['smtp_user'] = "%u";
|
|
$config['support_url'] = "";
|
|
$config['des_key'] = "${config.sops.secrets."roundcube/des_key".path}";
|
|
'';
|
|
};
|
|
|
|
# TODO: move this back to `webmail.pvv.ntnu.no/roundcube` subpath
|
|
|
|
services.nginx.virtualHosts.${domain} = {
|
|
kTLS = true;
|
|
};
|
|
}
|