From ac2678fcdd5145cff96cfe6f1c6339c51cf9db7a Mon Sep 17 00:00:00 2001 From: Noratrieb <48135649+Noratrieb@users.noreply.github.com> Date: Sun, 3 Aug 2025 17:22:52 +0200 Subject: [PATCH] systemd killua --- nix/apps/killua/default.nix | 38 ++++++++++++++++++++----------------- 1 file changed, 21 insertions(+), 17 deletions(-) diff --git a/nix/apps/killua/default.nix b/nix/apps/killua/default.nix index ce6b7be..a9d23db 100644 --- a/nix/apps/killua/default.nix +++ b/nix/apps/killua/default.nix @@ -1,23 +1,27 @@ -{ config, lib, ... }: -let dataDir = "/var/lib/killua"; in +{ config, lib, pkgs, ... }: +let + jarfile = pkgs.fetchurl { + url = + "https://github.com/Noratrieb/killua-bot/releases/download/2023-08-26/KilluaBot.jar"; + hash = "sha256-LUABYq6cRhLTLyZVzkIjIFHERcb7YQTzyAGaJB49Mxk="; + }; + dataDir = "/var/lib/killua"; +in { age.secrets.killua_env.file = ../../secrets/killua_env.age; - virtualisation.oci-containers.containers = { - killua = { - image = "docker.noratrieb.dev/killua-bot:ac8203d2"; - volumes = [ - "${dataDir}:/data" - ]; - environment = { - KILLUA_JSON_PATH = "/data/trivia_questions.json"; - }; - environmentFiles = [ config.age.secrets.killua_env.path ]; - login = { - registry = "docker.noratrieb.dev"; - username = "nils"; - passwordFile = config.age.secrets.docker_registry_password.path; - }; + systemd.services.killua = { + description = "killua, an awesome discord bot"; + wantedBy = [ "multi-user.target" ]; + after = [ "network.target" ]; + environment = { + BOT_TOKEN_PATH = config.age.secrets.widetom_bot_token.path; + CONFIG_PATH = config.age.secrets.widetom_config_toml.path; + }; + serviceConfig = { + DynamicUser = true; + ExecStart = "${lib.getExe' pkgs.jdk17 "java"} -jar ${jarfile}"; + EnvironmentFile = [ config.age.secrets.killua_env.path ]; }; };