feat: create mymx service

This commit is contained in:
Jet Pham 2026-03-04 12:20:26 -08:00
parent 478af69792
commit ad8cb52169
No known key found for this signature in database
20 changed files with 3152 additions and 1 deletions

40
modules/mymx.nix Normal file
View file

@ -0,0 +1,40 @@
{ config, pkgs, inputs, ... }:
{
users.users.mymx = {
isSystemUser = true;
group = "mymx";
description = "MyMX webhook service user";
};
users.groups.mymx = {};
services.postgresql = {
enable = true;
ensureDatabases = [ "mymx" ];
ensureUsers = [{
name = "mymx";
ensureDBOwnership = true;
}];
};
systemd.services.mymx = {
description = "MyMX Webhook Receiver";
after = [ "postgresql.service" "network.target" ];
requires = [ "postgresql.service" ];
wantedBy = [ "multi-user.target" ];
environment = {
DATABASE_URL = "postgres:///mymx?host=/run/postgresql";
LISTEN_ADDR = "127.0.0.1:4002";
MYMX_WEBHOOK_SECRET = config.mySecrets.mymxWebhookSecret;
};
serviceConfig = {
ExecStart = "${inputs.mymx.packages.x86_64-linux.default}/bin/mymx-server";
User = "mymx";
Group = "mymx";
Restart = "on-failure";
RestartSec = 5;
};
};
}