52 lines
1.2 KiB
Nix
52 lines
1.2 KiB
Nix
{
|
|
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";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
}
|