{ pkgs, ... }: let masConfig = (pkgs.formats.yaml { }).generate "matrix-authentication-service-config.yaml" { }; in { environment.systemPackages = with pkgs; [ matrix-authentication-service ]; systemd.services.matrix-authentication-service = { description = "Matrix Authentication Service"; after = [ "postgresql.service" ]; serviceConfig = { Type = "simple"; ExecReload = "${pkgs.util-linux}/bin/kill -HUP $MAINPID"; Restart = "on-abort"; User = "mas"; Group = "nogroup"; WorkingDirectory = pkgs.matrix-authentication-service; ExecStart = "${pkgs.matrix-authentication-service}/bin/mas-cli server --config=${masConfig}"; SyslogIdentifier = "matrix-authentication-service"; }; wantedBy = [ "multi-user.target" ]; }; }