feat(minecraft): self hosted minecraft server

This commit is contained in:
Guz
2025-10-27 17:17:19 -03:00
parent 063f99f9a7
commit 86fa568da1
5 changed files with 128 additions and 13 deletions

View File

@@ -9,6 +9,8 @@
../../configuration.nix
./home.nix
./services.nix
];
users.users."guz" = {

View File

@@ -0,0 +1,51 @@
{
pkgs,
pkgs-unstable,
config,
inputs,
lib,
...
}: {
imports = [
inputs.nix-minecraft.nixosModules.minecraft-servers
];
nixpkgs.overlays = [
inputs.nix-minecraft.overlay
];
nixpkgs.config.allowUnfree = true;
nixpkgs.config.allowUnfreePredicate = pkg:
builtins.elem (lib.getName pkg) [
"minecraft-server"
"minecraft-server-1.21.8"
];
services.minecraft-servers = {
enable = true;
eula = true;
dataDir = "/var/lib/minecraft-servers";
managementSystem = {
tmux.enable = false;
systemd-socket.enable = true;
};
openFirewall = true;
servers = {
"heart-smp" = let
modpack = inputs.heart-modpack.packages.${pkgs.system}.default;
mcVersion = modpack.manifest.versions.minecraft;
fabricVersion = modpack.manifest.versions.fabric;
serverVersion = lib.replaceStrings ["."] ["_"] "fabric-${mcVersion}";
in {
enable = true;
autoStart = false;
package = pkgs.fabricServers.${serverVersion}.override {loaderVersion = fabricVersion;};
symlinks = {
"mods" = "${modpack}/mods";
};
files = {
"config" = "${modpack}/config";
};
};
};
};
}