diff --git a/mail-config.nix b/mail-config.nix index 3629a1f..7541065 100644 --- a/mail-config.nix +++ b/mail-config.nix @@ -58,11 +58,7 @@ in inherit domain host_prefix; }; - # TODO: Move to /mail-server/systemd.nix - # TODO: Respect setting of maildir - # Set the correct permissions for dovecot vmail folder. See - # . We choose - # to use the systemd service to set the folder permissions whenever - # dovecot gets started. - systemd.services.dovecot2.preStart = "chmod 02770 /var/vmail"; + systemd = import ./mail-server/systemd.nix { + inherit mail_dir; + }; } diff --git a/mail-server/systemd.nix b/mail-server/systemd.nix new file mode 100644 index 0000000..61767fa --- /dev/null +++ b/mail-server/systemd.nix @@ -0,0 +1,25 @@ +# nixos-mailserver: a simple mail server +# Copyright (C) 2016-2017 Robin Raymond +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see + +{ mail_dir }: + +{ + # Set the correct permissions for dovecot vmail folder. See + # . We choose + # to use the systemd service to set the folder permissions whenever + # dovecot gets started. + services.dovecot2.preStart = ("mkdir -p " + mail_dir + "; chmod 02770 " + mail_dir); +}