{ config, lib, pkgs, ... }:
{
  config = lib.mkIf config.services.mastodon.enable {
    services.mastodon = {
      localDomain = "social.nixfox.ca";
      streamingProcesses = 4;
      configureNginx = true;
      smtp = {
        createLocally = false;
        host = "mx.nixfox.ca";
        port = 587;
        authenticate = true;
        fromAddress = "NixFox Mastodon <noreply@nixfox.ca>";
        user = "noreply@nixfox.ca";
        passwordFile = pkgs.writeText "smtp_pass.txt" config.secrets.mailPass.nixfoxNoReply;
      };
    };
    environment.persistence."/persist".directories = [ "/var/lib/mastodon" ];
  };
}
