Add systemd service and ensure db for discord bot

This commit is contained in:
thiloho
2023-09-10 20:52:11 +02:00
parent dc1627fe5e
commit b272880344
4 changed files with 29 additions and 106 deletions

View File

@@ -8,6 +8,10 @@
nix.settings.trusted-users = [ "thiloho" ];
environment.systemPackages = with pkgs; [
nodejs_20
];
networking = {
hostName = "server";
firewall = {
@@ -77,19 +81,6 @@
};
autoUpdateApps.enable = true;
};
# mysql.package = pkgs.mariadb;
# firefox-syncserver = {
# enable = true;
# database.createLocally = true;
# secrets = "/var/run/firefox-syncserver-secrets.txt";
# singleNode = {
# enable = true;
# enableNginx = true;
# enableTLS = true;
# hostname = "fsync.thilohohlt.com";
# url = "https://ffsync.thilohohlt.com";
# };
# };
};
security = {
@@ -102,6 +93,28 @@
'';
};
services.postgresql = {
enable = true;
package = pkgs.postgresql_15;
ensureDatabases = [ "dcbot" ];
authentication = pkgs.lib.mkOverride 10 ''
#type database DBuser auth-method
local all all trust
'';
};
systemd.services.denbot = {
description = "Thilo's Den discord bot";
wantedBy = ["multi-user.target"];
after = ["network-online.target"];
serviceConfig = {
ExecStart = "${pkgs.nodejs_20}/bin/node index.js --token=$CREDENTIALS_DIRECTORY/bot.token";
LoadCredential = "bot.token:/var/run/bot-token.txt";
WorkingDirectory = inputs.denbot;
Restart = "always";
};
};
users.users.thiloho.openssh.authorizedKeys.keys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMkvr+vT7Ik0fjquxb9xQBfVVWJPgrfC+vJZsyG2V+/G thiloho@pc"
];