summaryrefslogtreecommitdiff
path: root/modules/valheim.nix
diff options
context:
space:
mode:
Diffstat (limited to 'modules/valheim.nix')
-rw-r--r--modules/valheim.nix69
1 files changed, 0 insertions, 69 deletions
diff --git a/modules/valheim.nix b/modules/valheim.nix
deleted file mode 100644
index f12a894..0000000
--- a/modules/valheim.nix
+++ /dev/null
@@ -1,69 +0,0 @@
-{ config, lib, pkgs, ... }:
-
-let
- cfg = config.orbekk.valheim-server;
- statePath = "/var/lib/${cfg.stateDir}";
-in
-{
- options = {
- orbekk.valheim-server = {
- enable = lib.mkEnableOption "Enable valheim server";
- programDir = lib.mkOption {
- type = lib.types.str;
- default = null;
- };
- stateDir = lib.mkOption {
- type = lib.types.str;
- default = "valheim";
- };
- statusPort = lib.mkOption {
- type = lib.types.int;
- default = 12817;
- };
- };
- };
-
- config = lib.mkIf cfg.enable {
- systemd.services.valheim-server = {
- description = "Valheim server";
- wantedBy = [ "multi-user.target" ];
- after = [ "network.target" ];
- path = with pkgs; [ steam.run ];
-
- serviceConfig = {
- DynamicUser = true;
- StateDirectory = cfg.stateDir;
- KillSignal = "SIGINT";
- };
-
- environment = {
- HOME = statePath;
- };
-
- script = ''
- cd ${cfg.programDir}
- export templdpath=$LD_LIBRARY_PATH
- export LD_LIBRARY_PATH=./linux64:$LD_LIBRARY_PATH
- export SteamAppId=892970
- steam-run ./valheim_server.x86_64 -name "doomsday" -port 3400 -world "doomsday" -password "$(cat ${statePath}/password.txt)" -savedir ${statePath} -nographics -batchmode
- '';
- };
-
- systemd.services.valheim-server-prober = {
- description = "Collect metrics for valheim-server";
- startAt = "*:0/5";
- path = with pkgs; [ moreutils systemd gnugrep coreutils ];
- script = ''
- systemctl show valheim-server | \
- grep -E 'IPIngress|IPEgress|CPUUsage' | \
- tr '=' ' ' | {
- while read k v; do
- echo "# TYPE $k counter"
- echo "systemd_$k{unit=\"valheim-server.service\"} $v";
- done
- } | \
- sponge ${config.orbekk.monitoring-server.textFileDir}/valheim_server.prom
- '';
- };
- };
-}