{lib, ...}: { options.mailsystem = { enable = lib.mkEnableOption "nixos-mailsystem"; openFirewall = lib.mkOption { type = lib.types.bool; default = true; description = "Automatically open ports in the firewall."; }; fqdn = lib.mkOption { type = lib.types.str; example = "mail.example.com"; description = "Fully qualified domain name of the mail server."; }; vmailUID = lib.mkOption { type = lib.types.int; default = 5000; description = "The unix UID of the virtual mail user."; }; vmailUserName = lib.mkOption { type = lib.types.str; default = "vmail"; description = "The user name of the user that owns the directory all the mail is stored."; }; vmailGroupName = lib.mkOption { type = lib.types.str; default = "vmail"; description = "The group name of the user that owns the directory all the mail is stored."; }; mailDirectory = lib.mkOption { type = lib.types.str; default = "/var/vmail"; description = "Storage location for all mail."; }; }; imports = [ ./nginx.nix ./user.nix ]; }