aux-config/modules/nixos/services/minecraft/survival.nix

50 lines
1.4 KiB
Nix
Raw Normal View History

2024-11-14 01:43:04 +01:00
{
inputs,
config,
lib,
pkgs,
system,
...
}:
let
cfg = config.services.minecraft;
in
{
config = lib.mkIf (cfg.enable && cfg.servers.survival.enable) {
services.minecraft-servers.servers."survival" = {
enable = true;
autoStart = true;
enableReload = true;
package = pkgs.paperServers.paper-1_21_4;
serverProperties = {
online-mode = false;
server-ip = "127.0.0.1";
server-port = 49333;
difficulty = 3;
gamemode = 1;
max-players = 5;
};
openFirewall = false; # Should use Velocity Player Proxy
# Add Plugins
symlinks = {
"plugins/LuckPerms.jar" = pkgs.fetchurl {
url = "https://download.luckperms.net/1567/bukkit/loader/LuckPerms-Bukkit-5.4.150.jar";
sha512 = "39cr9nd68afrrvn80kvdgaml37xkj3mzhv50y3app5j1199hg12kls29r49x06p9rxm6dk7i0j8aww2hw4ahm18andb69a5kp97vf94";
};
};
# Configure Velocity Modern forwarding https://docs.papermc.io/velocity/player-information-forwarding#configuring-modern-forwarding-for-paper
files."spigot.yml".value = {
settings.bungeecord = false;
};
files."config/paper-global.yml".value = {
proxies.velocity.enabled = true;
proxies.velocity.online-mode = "online-mode";
forwarding.secret = ""; # TODO: Add Forewarding Secret using Sops
};
2024-11-14 01:43:04 +01:00
};
};
}