aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaroline Larimore <caroline@larimo.re>2025-04-26 02:18:24 -0700
committerCaroline Larimore <caroline@larimo.re>2025-04-26 02:18:24 -0700
commit5a59cea92e1d75fc673923b4ab4614a8281f2f64 (patch)
tree97beba51873911fba7e442b1de274bd67c10cc29
parent0b5e20158e6981f746748a81ed668a0d5af56451 (diff)
copenhagen: add mc server scripts
-rw-r--r--modules/nixos/services/minecraft/default.nix25
1 files changed, 24 insertions, 1 deletions
diff --git a/modules/nixos/services/minecraft/default.nix b/modules/nixos/services/minecraft/default.nix
index cc1ae99..ae8b423 100644
--- a/modules/nixos/services/minecraft/default.nix
+++ b/modules/nixos/services/minecraft/default.nix
@@ -1,4 +1,4 @@
-{ options, config, lib, namespace, ... }:
+{ options, config, lib, pkgs, namespace, ... }:
with lib; with lib.${namespace}; let
cfg = config.${namespace}.services.minecraft;
@@ -15,5 +15,28 @@ in {
eula = true;
openFirewall = true;
};
+
+ environment.systemPackages = with pkgs; [
+ (writeShellScriptBin "mc-attach" ''
+ file="/run/minecraft/$1.sock"
+
+ if [[ -r "$file" && -w "$file" ]]; then
+ tmux -S "$file" attach
+ else
+ sudo -u minecraft tmux -S "$file" attach
+ fi
+ '')
+
+ (writeShellScriptBin "mc-shell" ''
+ dir="/srv/minecraft"
+
+ if [[ -v "$1" ]]; then
+ dir="$1"
+ fi
+
+ cd "$dir"
+ sudo -u minecraft "$SHELL"
+ '')
+ ];
};
}