{ inputs, config, lib, pkgs, system, ... }: let cfg = config.services.minecraft; in { config = lib.mkIf (cfg.enable && cfg.servers.survival.enable) { nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [ "minecraft-server" ]; services.minecraft-servers.servers."survival" = { enable = true; autoStart = true; enableReload = true; package = pkgs.paperServers.paper-1_21_3-build_25; whitelist = { kB01guy = "1ff88b66-beda-4386-85b9-a00a5c27437a"; }; openFirewall = true; symlinks = { "plugins/LuckPerms.jar" = pkgs.fetchurl { url = "https://download.luckperms.net/1561/bukkit/loader/LuckPerms-Bukkit-5.4.146.jar"; sha512 = "3yx163xas6g30crj41ad8j9gh55ygfh7vbaq12hlm4rxf1npnxh95rhn2nx0qcjd4nl1rz8f8pbvmlh6ka32ahvn6x9rxsc8g6v24jz"; }; }; }; }; }