make clamav a module

This commit is contained in:
Robin Raymond 2017-09-02 12:59:07 +02:00
parent 691f034f9d
commit 061054926d
3 changed files with 16 additions and 9 deletions

View file

@ -82,6 +82,7 @@ in
mkpasswd -m sha-512 "super secret password" mkpasswd -m sha-512 "super secret password"
``` ```
''; '';
default = {};
}; };
valiases = mkOption { valiases = mkOption {
@ -98,6 +99,7 @@ in
forwarded to some valid email address. (Alternatively you can create login forwarded to some valid email address. (Alternatively you can create login
accounts for `postmaster` and (or) `abuse`). accounts for `postmaster` and (or) `abuse`).
''; '';
default = {};
}; };
vmail_id_start = mkOption { vmail_id_start = mkOption {
@ -245,12 +247,16 @@ in
}; };
}; };
imports = [
./mail-server/clamav.nix
];
config = mkIf cfg.enable { config = mkIf cfg.enable {
services = import ./mail-server/services.nix { services = import ./mail-server/services.nix {
inherit lib; inherit lib;
inherit (cfg) mail_dir vmail_user_name vmail_group_name valiases domain inherit (cfg) mail_dir vmail_user_name vmail_group_name valiases domain
enable_imap enable_pop3 virus_scanning dkim_signing dkim_selector enable_imap enable_pop3 dkim_signing dkim_selector dkim_dir
dkim_dir certificate_scheme cert_file key_file cert_dir; certificate_scheme cert_file key_file cert_dir virus_scanning;
}; };
environment = import ./mail-server/environment.nix { environment = import ./mail-server/environment.nix {

View file

@ -14,10 +14,15 @@
# You should have received a copy of the GNU General Public License # You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/> # along with this program. If not, see <http://www.gnu.org/licenses/>
{ virus_scanning }: { config, pkgs, lib, ... }:
let
cfg = config.mailserver;
in
{ {
daemon.enable = virus_scanning; config = lib.mkIf cfg.virus_scanning {
updater.enable = virus_scanning; services.clamav.daemon.enable = true;
services.clamav.updater.enable = true;
};
} }

View file

@ -51,8 +51,4 @@ in
inherit vmail_group_name vmail_user_name mail_dir enable_imap inherit vmail_group_name vmail_user_name mail_dir enable_imap
enable_pop3 cert key; enable_pop3 cert key;
}; };
clamav = import ./clamav.nix {
inherit virus_scanning;
};
} }