blob: e4db34729541edffdaeaf54ed665fda152fe9fde (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
|
{
pkgs,
vhackPackages,
}: {
mkUser = user: serverName: {
nodes,
lib,
...
}: {
imports = [
./acme/client.nix
];
environment.systemPackages = [
vhackPackages.fetchmail-common-name
pkgs.msmtp
pkgs.procmail
pkgs.bind
pkgs.openssl
];
networking.nameservers = lib.mkForce [
nodes.name_server.networking.primaryIPAddress
nodes.name_server.networking.primaryIPv6Address
];
users.users."${user}" = {isNormalUser = true;};
systemd.tmpfiles.rules = [
"d /home/${user}/mail 0700 ${user} users - -"
"L /home/${user}/.fetchmailrc - - - - /etc/homeSetup/.fetchmailrc"
"L /home/${user}/.procmailrc - - - - /etc/homeSetup/.procmailrc"
"L /home/${user}/.msmtprc - - - - /etc/homeSetup/.msmtprc"
];
environment.etc = {
"homeSetup/.fetchmailrc" = {
text = ''
poll "${serverName}.server.com" protocol IMAP
username "${user}"
password "${user}-password"
ssl
mda procmail;
'';
mode = "0600";
inherit user;
};
"homeSetup/.procmailrc" = {
text = ''
DEFAULT=$HOME/mail
'';
mode = "0600";
inherit user;
};
"homeSetup/.msmtprc" = {
text = ''
account ${user}
host ${serverName}.server.com
domain ${user}.com
port 465
from ${user}@${user}.com
user ${user}
password ${user}-password
auth on
tls on
tls_starttls off
'';
mode = "0600";
inherit user;
};
};
};
}
|