From 78ac018a117362898eca2e253f2c17af0a18af97 Mon Sep 17 00:00:00 2001 From: Jimbo Date: Tue, 18 Feb 2025 17:10:54 -0500 Subject: [PATCH] Make the minecraft stuff work again --- flake.lock | 42 +++++++++---------- hosts/kitty/default.nix | 5 +++ .../server/minecraft/common/default.nix | 4 +- .../services/server/minecraft/default.nix | 16 +++---- .../server/minecraft/servers/default.nix | 12 ++++++ .../minecraft/servers/skyblock/default.nix | 20 +++++++++ .../minecraft/servers/velocity/default.nix | 4 +- 7 files changed, 68 insertions(+), 35 deletions(-) create mode 100644 modules/system/services/server/minecraft/servers/default.nix create mode 100644 modules/system/services/server/minecraft/servers/skyblock/default.nix diff --git a/flake.lock b/flake.lock index 97ce418..08220ba 100644 --- a/flake.lock +++ b/flake.lock @@ -61,11 +61,11 @@ ] }, "locked": { - "lastModified": 1738765162, - "narHash": "sha256-3Z40qHaFScWUCVQrGc4Y+RdoPsh1R/wIh+AN4cTXP0I=", + "lastModified": 1739791827, + "narHash": "sha256-l6ooDEtfzet9qRQxlb5A+H6eY7VPpdiGMwqX0nqD1xM=", "owner": "nix-community", "repo": "disko", - "rev": "ff3568858c54bd306e9e1f2886f0f781df307dff", + "rev": "af4a580628e98302bb922c01e1169ce08d7bee57", "type": "github" }, "original": { @@ -229,11 +229,11 @@ ] }, "locked": { - "lastModified": 1736373539, - "narHash": "sha256-dinzAqCjenWDxuy+MqUQq0I4zUSfaCvN9rzuCmgMZJY=", + "lastModified": 1739757849, + "narHash": "sha256-Gs076ot1YuAAsYVcyidLKUMIc4ooOaRGO0PqTY7sBzA=", "owner": "nix-community", "repo": "home-manager", - "rev": "bd65bc3cde04c16755955630b344bc9e35272c56", + "rev": "9d3d080aec2a35e05a15cedd281c2384767c2cfe", "type": "github" }, "original": { @@ -314,11 +314,11 @@ "nixpkgs": "nixpkgs_3" }, "locked": { - "lastModified": 1738806350, - "narHash": "sha256-NaCd65SqWMROgbJzio9HW5WGNb5sOBfyuGVtccU4YmM=", + "lastModified": 1739756973, + "narHash": "sha256-76SWjSvK8rLD1naSltv6G8cq0hGa55mjTAbwu8CllRc=", "owner": "Infinidoge", "repo": "nix-minecraft", - "rev": "e35b9bfe00b0602f57de8f19745c3d91cb45efec", + "rev": "8f62b0011ad2e219314df3a955150e63eb6e5503", "type": "github" }, "original": { @@ -406,11 +406,11 @@ }, "nixpkgs_4": { "locked": { - "lastModified": 1738843498, - "narHash": "sha256-7x+Q4xgFj9UxZZO9aUDCR8h4vyYut4zPUvfj3i+jBHE=", + "lastModified": 1739758141, + "narHash": "sha256-uq6A2L7o1/tR6VfmYhZWoVAwb3gTy7j4Jx30MIrH0rE=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "f5a32fa27df91dfc4b762671a0e0a859a8a0058f", + "rev": "c618e28f70257593de75a7044438efc1c1fc0791", "type": "github" }, "original": { @@ -421,11 +421,11 @@ }, "nixpkgs_5": { "locked": { - "lastModified": 1739020877, - "narHash": "sha256-mIvECo/NNdJJ/bXjNqIh8yeoSjVLAuDuTUzAo7dzs8Y=", + "lastModified": 1739736696, + "narHash": "sha256-zON2GNBkzsIyALlOCFiEBcIjI4w38GYOb+P+R4S8Jsw=", "owner": "nixos", "repo": "nixpkgs", - "rev": "a79cfe0ebd24952b580b1cf08cd906354996d547", + "rev": "d74a2335ac9c133d6bbec9fc98d91a77f1604c1f", "type": "github" }, "original": { @@ -442,11 +442,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1739046624, - "narHash": "sha256-Ez+tmWYnoOC7cgQ5NOXH4f6aGf1nn4tQv6gYgvhusog=", + "lastModified": 1739824570, + "narHash": "sha256-zj1b2jPID1CHEsmVHk+QcbarNoK2RPS55NRQ60DO5iQ=", "owner": "nix-community", "repo": "NUR", - "rev": "d2844978bb32ce74c90c276b151fc9e57fa3bb79", + "rev": "eb69d09d62b3556f663d7cb703f91b37c3723e11", "type": "github" }, "original": { @@ -574,11 +574,11 @@ }, "unstable": { "locked": { - "lastModified": 1739020877, - "narHash": "sha256-mIvECo/NNdJJ/bXjNqIh8yeoSjVLAuDuTUzAo7dzs8Y=", + "lastModified": 1739736696, + "narHash": "sha256-zON2GNBkzsIyALlOCFiEBcIjI4w38GYOb+P+R4S8Jsw=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "a79cfe0ebd24952b580b1cf08cd906354996d547", + "rev": "d74a2335ac9c133d6bbec9fc98d91a77f1604c1f", "type": "github" }, "original": { diff --git a/hosts/kitty/default.nix b/hosts/kitty/default.nix index 8475880..a7635ad 100644 --- a/hosts/kitty/default.nix +++ b/hosts/kitty/default.nix @@ -22,4 +22,9 @@ wireguard.server.enable = true; stateVersion = "24.05"; }; + + services.minecraft-servers.servers = { + velocity.enable = true; + skyblock.enable = true; + }; } diff --git a/modules/system/services/server/minecraft/common/default.nix b/modules/system/services/server/minecraft/common/default.nix index a432b53..ff8fa21 100644 --- a/modules/system/services/server/minecraft/common/default.nix +++ b/modules/system/services/server/minecraft/common/default.nix @@ -40,8 +40,8 @@ sha256 = "19jwfymqgvjk0vkm1blhq2q6gi7jkgqznp6bxc3k1sqw4hh5raj0"; }; "plugins/LuckPerms.jar" = builtins.fetchurl { - url = "https://download.luckperms.net/1556/bukkit/loader/LuckPerms-Bukkit-5.4.141.jar"; - sha256 = "02ad0dl34vdk6b1wyflqa6wq440xrh5w7yf3z3w1x1g089myddw4"; + url = "https://download.luckperms.net/1571/bukkit/loader/LuckPerms-Bukkit-5.4.154.jar"; + sha256 = "0ls539d99h4bc3mh0h84gdmgh8lxjakr9rp0il81m695j4j2l5mz"; }; "plugins/ProtocolLib.jar" = builtins.fetchurl { url = "https://ci.dmulloy2.net/job/ProtocolLib/733/artifact/build/libs/ProtocolLib.jar"; diff --git a/modules/system/services/server/minecraft/default.nix b/modules/system/services/server/minecraft/default.nix index 2e56bc2..c7ecc81 100644 --- a/modules/system/services/server/minecraft/default.nix +++ b/modules/system/services/server/minecraft/default.nix @@ -2,24 +2,20 @@ { imports = [ minecraft.nixosModules.minecraft-servers - ./servers/velocity - ./servers/dewdemolisher - ./servers/johnside - ./servers/roguecraft - ./servers/blockworld - ./servers/uberbeta + ./servers/default.nix ]; config = lib.mkIf config.system.server.enable { - nixpkgs.overlays = [ minecraft.overlay ]; + nixpkgs = { + config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [ "minecraft-server" ]; + overlays = [ minecraft.overlay ]; + }; services.minecraft-servers = { enable = true; eula = true; }; - environment.persistence."/persist".directories = [ - "/srv/minecraft" - ]; + environment.persistence."/persist".directories = [ "/srv/minecraft" ]; }; } diff --git a/modules/system/services/server/minecraft/servers/default.nix b/modules/system/services/server/minecraft/servers/default.nix new file mode 100644 index 0000000..7cabc66 --- /dev/null +++ b/modules/system/services/server/minecraft/servers/default.nix @@ -0,0 +1,12 @@ +{ ... }: +{ + imports = [ + ./velocity + ./dewdemolisher + ./johnside + ./roguecraft + ./skyblock + ./blockworld + ./uberbeta + ]; +} diff --git a/modules/system/services/server/minecraft/servers/skyblock/default.nix b/modules/system/services/server/minecraft/servers/skyblock/default.nix new file mode 100644 index 0000000..eac1b3d --- /dev/null +++ b/modules/system/services/server/minecraft/servers/skyblock/default.nix @@ -0,0 +1,20 @@ +{ config, lib, pkgs, ... }: +let + common = import ../../common { inherit pkgs; }; +in { + services = { + minecraft-servers.servers.skyblock = { + package = pkgs.paperServers.paper-1_21_4; + jvmOpts = "-Xmx2000M"; + serverProperties = common.serverProperties // { + difficulty = 3; + server-port = 30015; + motd = "\\u00A7l\\u00A7aBlocking in the sky"; + }; + whitelist = common.whitelist; + symlinks = common.paperSymlinks; + files = common.configFiles; + }; + ddclient.domains = lib.mkIf config.services.minecraft-servers.servers.dewdemolisher.enable [ "skyblock.${config.domains.p2}" ]; + }; +} diff --git a/modules/system/services/server/minecraft/servers/velocity/default.nix b/modules/system/services/server/minecraft/servers/velocity/default.nix index fa225f1..1e0d327 100644 --- a/modules/system/services/server/minecraft/servers/velocity/default.nix +++ b/modules/system/services/server/minecraft/servers/velocity/default.nix @@ -15,8 +15,8 @@ in { sha256 = "1hxdf38qzpzdnyn2gn1152fyd54bi37i0ayc82dgcjf0qrcbmv0c"; }; "plugins/LuckPerms.jar" = builtins.fetchurl { - url = "https://download.luckperms.net/1556/velocity/LuckPerms-Velocity-5.4.141.jar"; - sha256 = "0j5f7r3g8h4f8z8ppakwfk96hijp3slr0vxyj9v8x4h8w5rcl9d1"; + url = "https://download.luckperms.net/1571/velocity/LuckPerms-Velocity-5.4.154.jar"; + sha256 = "03kqgxrf6ssclrwgyfxs521b7kswmpkk90kdwyaajkkx8hqvbqlc"; }; "plugins/SkinsRestorer.jar" = builtins.fetchurl { url = "https://github.com/SkinsRestorer/SkinsRestorer/releases/download/15.4.2/SkinsRestorer.jar";