nix-infra/configs/services/minecraft-server.nix

40 lines
1.1 KiB
Nix

{ lib, pkgs, config, ... }: {
nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [
"minecraft-server"
];
environment.systemPackages = with pkgs; [
rconc
];
services.minecraft-server = {
package = pkgs.papermc;
enable = true;
eula = true;
openFirewall = true; # Opens the port the server is running on (by default 25565 but in this case 43000)
declarative = true;
whitelist = {
# This is a mapping from Minecraft usernames to UUIDs. You can use https://mcuuid.net/ to get a Minecraft UUID for a username
Scarpiro = "fbbc57a7-189e-4108-916a-7efeed47b197";
LadyRaveena = "a1629c6b-48aa-4b42-8cbf-a7930db39ea2";
};
serverProperties = {
difficulty = 1;
gamemode = 0;
max-players = 2;
motd = "Minecraft UwU :3";
white-list = true;
allow-cheats = true;
pvp = false;
enable-rcon = true;
"rcon.password" = "foobar2342";
"rcon.port" = 25575;
};
jvmOpts = "-Xms2048M -Xmx2048M";
};
networking.firewall.allowedTCPPorts = [ 8080 ];
}