Allow server to be imported, deprioritize Jimbo. Those who nose.

This commit is contained in:
Jimbo 2025-01-01 02:02:00 -05:00
parent 5f0edcbb09
commit d873588c59
42 changed files with 228 additions and 207 deletions

View file

@ -4,7 +4,6 @@
enable = lib.mkOption {
type = lib.types.bool;
default = false;
description = "Enable mail host and services";
};
};

View file

@ -2,9 +2,9 @@
{
services.roundcube = {
enable = config.system.mailserver.enable;
hostName = "mail.${config.domains.jim1}";
hostName = "mail.${config.domains.p1}";
extraConfig = ''
$config['smtp_server'] = "tls://mx.${config.domains.jim1}";
$config['smtp_server'] = "tls://mx.${config.domains.p1}";
$config['smtp_user'] = "%u";
$config['smtp_pass'] = "%p";
'';

View file

@ -8,37 +8,46 @@
mailserver = rec {
enable = config.system.mailserver.enable;
domains = [
"${config.domains.jim1}"
"${config.domains.jim2}"
"${config.domains.p1}"
"${config.domains.p2}"
"${config.domains.luna}"
"${config.domains.corn}"
];
fqdn = "mx.${config.domains.jim1}";
fqdn = "mx.${config.domains.p1}";
certificateScheme = "acme-nginx";
localDnsResolver = false;
redis.port = 1515;
dmarcReporting = {
enable = true;
domain = "${config.domains.jim1}";
domain = "${config.domains.p1}";
localpart = "noreply";
organizationName = "Jimbo's Files";
};
# Passwords made with 'mkpasswd -sm bcrypt'
loginAccounts = {
"noreply@${config.domains.jim1}" = {
"noreply@${config.domains.p1}" = {
hashedPasswordFile = pkgs.writeText "noreply" config.secrets.noreplyMailHash;
sendOnly = true;
};
"jimbo@${config.domains.jim2}" = {
"jimbo@${config.domains.p2}" = {
hashedPasswordFile = pkgs.writeText "jimbo" config.secrets.jimboMailHash;
aliases = [
"jimbo@${config.domains.jim1}"
"james@${config.domains.jim1}"
"james@${config.domains.jim2}"
"contact@${config.domains.jim1}"
"contact@${config.domains.jim2}"
"jimbo@${config.domains.p1}"
"james@${config.domains.p1}"
"james@${config.domains.p2}"
"contact@${config.domains.p1}"
"contact@${config.domains.p2}"
];
};
"vicee@${config.domains.p2}" = {
hashedPasswordFile = pkgs.writeText "vicee" config.secrets.jimboMailHash;
aliases = [
"vice@${config.domains.p2}"
"yara@${config.domains.p2}"
"yaralis@${config.domains.p2}"
"contact@${config.domains.p2}"
];
};
"luna@${config.domains.luna}" = {

View file

@ -1,6 +1,6 @@
{ pkgs, config, ... }:
{ pkgs, config, lib, ... }:
{
services.nginx.virtualHosts."mx.${config.domains.jim1}" = lib.mkIf config.mailserver.enable {
services.nginx.virtualHosts."mx.${config.domains.p1}" = lib.mkIf config.mailserver.enable {
enableACME = true;
forceSSL = true;
locations."/" = {