diff options
author | Ismaël Bouya <ismael.bouya@normalesup.org> | 2019-10-16 13:49:24 +0200 |
---|---|---|
committer | Ismaël Bouya <ismael.bouya@normalesup.org> | 2019-10-16 13:49:24 +0200 |
commit | 6a8252b11bb02f3e67857d5a9d733b1affa6a625 (patch) | |
tree | 175cb91c386b444ce951361baaa4875136d5c9e4 /modules/private/mail | |
parent | 5304a64b84c5a84525c96419cc6126775af306e0 (diff) | |
download | Nix-6a8252b11bb02f3e67857d5a9d733b1affa6a625.tar.gz Nix-6a8252b11bb02f3e67857d5a9d733b1affa6a625.tar.zst Nix-6a8252b11bb02f3e67857d5a9d733b1affa6a625.zip |
Add backup module
Diffstat (limited to 'modules/private/mail')
-rw-r--r-- | modules/private/mail/default.nix | 9 | ||||
-rw-r--r-- | modules/private/mail/dovecot.nix | 4 | ||||
-rw-r--r-- | modules/private/mail/postfix.nix | 3 | ||||
-rw-r--r-- | modules/private/mail/rspamd.nix | 3 |
4 files changed, 19 insertions, 0 deletions
diff --git a/modules/private/mail/default.nix b/modules/private/mail/default.nix index ad2c684..ac8ad8c 100644 --- a/modules/private/mail/default.nix +++ b/modules/private/mail/default.nix | |||
@@ -9,4 +9,13 @@ | |||
9 | mxs = map (zone: "mx-1.${zone.name}") zonesWithMx; | 9 | mxs = map (zone: "mx-1.${zone.name}") zonesWithMx; |
10 | in builtins.listToAttrs (map (mx: lib.attrsets.nameValuePair mx null) mxs); | 10 | in builtins.listToAttrs (map (mx: lib.attrsets.nameValuePair mx null) mxs); |
11 | }; | 11 | }; |
12 | config.services.backup.profiles = { | ||
13 | mail = { | ||
14 | rootDir = "/var/lib"; | ||
15 | excludeFile = lib.mkAfter '' | ||
16 | + /var/lib/vhost | ||
17 | - /var/lib | ||
18 | ''; | ||
19 | }; | ||
20 | }; | ||
12 | } | 21 | } |
diff --git a/modules/private/mail/dovecot.nix b/modules/private/mail/dovecot.nix index 047d7d0..0d13a7b 100644 --- a/modules/private/mail/dovecot.nix +++ b/modules/private/mail/dovecot.nix | |||
@@ -12,6 +12,10 @@ let | |||
12 | ''; | 12 | ''; |
13 | in | 13 | in |
14 | { | 14 | { |
15 | config.services.backup.profiles.mail.excludeFile = '' | ||
16 | + /var/lib/dhparams | ||
17 | + /var/lib/dovecot | ||
18 | ''; | ||
15 | config.secrets.keys = [ | 19 | config.secrets.keys = [ |
16 | { | 20 | { |
17 | dest = "dovecot/ldap"; | 21 | dest = "dovecot/ldap"; |
diff --git a/modules/private/mail/postfix.nix b/modules/private/mail/postfix.nix index c2d0af6..edfd196 100644 --- a/modules/private/mail/postfix.nix +++ b/modules/private/mail/postfix.nix | |||
@@ -1,5 +1,8 @@ | |||
1 | { lib, pkgs, config, myconfig, ... }: | 1 | { lib, pkgs, config, myconfig, ... }: |
2 | { | 2 | { |
3 | config.services.backup.profiles.mail.excludeFile = '' | ||
4 | + /var/lib/postfix | ||
5 | ''; | ||
3 | config.secrets.keys = [ | 6 | config.secrets.keys = [ |
4 | { | 7 | { |
5 | dest = "postfix/mysql_alias_maps"; | 8 | dest = "postfix/mysql_alias_maps"; |
diff --git a/modules/private/mail/rspamd.nix b/modules/private/mail/rspamd.nix index 3a7a67c..af3541f 100644 --- a/modules/private/mail/rspamd.nix +++ b/modules/private/mail/rspamd.nix | |||
@@ -10,6 +10,9 @@ | |||
10 | rspamd sockets | 10 | rspamd sockets |
11 | ''; | 11 | ''; |
12 | }; | 12 | }; |
13 | config.services.backup.profiles.mail.excludeFile = '' | ||
14 | + /var/lib/rspamd | ||
15 | ''; | ||
13 | config.services.cron.systemCronJobs = let | 16 | config.services.cron.systemCronJobs = let |
14 | cron_script = pkgs.runCommand "cron_script" { | 17 | cron_script = pkgs.runCommand "cron_script" { |
15 | buildInputs = [ pkgs.makeWrapper ]; | 18 | buildInputs = [ pkgs.makeWrapper ]; |