Skip to content

Instantly share code, notes, and snippets.

@jaythomas
Created January 13, 2026 02:47
Show Gist options
  • Select an option

  • Save jaythomas/4591d7cfdfc0a7bb22828197f1a23909 to your computer and use it in GitHub Desktop.

Select an option

Save jaythomas/4591d7cfdfc0a7bb22828197f1a23909 to your computer and use it in GitHub Desktop.
Minecraft server via nix-minecraft - https://github.com/Infinidoge/nix-minecraft
### Import this into configuration.nix like so:
### import = [
### (import ./minecraft.nix)
### ];
###
{ inputs, pkgs, ... }:
{
imports = [
inputs.nix-minecraft.nixosModules.minecraft-servers
{
nixpkgs.overlays = [ inputs.nix-minecraft.overlay ];
}
];
services.minecraft-servers = {
enable = true;
eula = true;
openFirewall = true;
servers.paper1 = {
autoStart = true;
enable = true;
files = {
"plugins/SkinsRestorer.jar" = builtins.toString (pkgs.fetchurl {
url = "https://cdn.modrinth.com/data/TsLS8Py5/versions/4RLZs1em/SkinsRestorer.jar";
sha256 = "sha256-eNLHgi/b2/RMqs+S4ekg3MCPUcvHhzZgqL/9mPFNeF4=";
});
};
jvmOpts = "-Xmx6G -Xms2G";
operators = {
username1 = {
uuid = "yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy";
level = 3;
bypassesPlayerLimit = true;
};
};
package = pkgs.minecraftServers.paper-1_21_11;
serverProperties = {
enable-rcon = false;
enforce-whitelist = true;
gamemode = "survival";
max-players = 32;
motd = "hey boy boy";
online-mode = false;
server-port = 25001;
simulation-distance = 4;
view-distance = 12;
white-list = true;
};
whitelist = {
username1 = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";
username2 = "yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy";
};
};
servers.fabric1 = {
autoStart = true;
enable = true;
files = {
"plugins/SkinsRestorer.jar" = builtins.toString (pkgs.fetchurl {
url = "https://cdn.modrinth.com/data/TsLS8Py5/versions/AJMjmCv6/SkinsRestorer-Mod-15.7.3-fabric.jar";
sha256 = "sha256-W6+z2vPI1koqq3vWghpw531yA4mz/l7Ys4jRjigMHk0=";
});
};
operators = {
username1 = {
uuid = "yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy";
level = 3;
bypassesPlayerLimit = true;
};
};
package = pkgs.minecraftServers.fabric-1_21_1;
serverProperties = {
enable-rcon = false;
enforce-whitelist = true;
gamemode = "survival";
max-players = 32;
motd = "Regions Unexplored";
online-mode = false;
server-port = 25002;
simulation-distance = 4;
view-distance = 12;
white-list = true;
};
symlinks.mods = pkgs.linkFarmFromDrvs "mods" (builtins.attrValues {
FabricApi = pkgs.fetchurl {
url = "https://cdn.modrinth.com/data/P7dR8mSH/versions/m6zu1K31/fabric-api-0.116.7%2B1.21.1.jar";
sha256 = "sha256-CAGMxIyXQVo4AWoA29Wix6Rgumt6BRaQqMs9u16EgqQ=";
};
ForgeConfigApiPort = pkgs.fetchurl {
url = "https://cdn.modrinth.com/data/ohNO6lps/versions/N5qzq0XV/ForgeConfigAPIPort-v21.1.6-1.21.1-Fabric.jar";
sha256 = "sha256-LjqPDjvahafXInIOfOh5y9nQKNk5XG/CJNMps8mC2bE=";
};
Krypton = pkgs.fetchurl {
url = "https://cdn.modrinth.com/data/fQEb0iXm/versions/Acz3ttTp/krypton-0.2.8.jar";
sha256 = "sha256-lPGVgZsk5dpk7/3J2hXN2Eg2zHXo/w/QmLq2vC9J4/4=";
};
Lithium = pkgs.fetchurl {
url = "https://cdn.modrinth.com/data/gvQqBUqZ/versions/E5eJVp4O/lithium-fabric-0.15.1%2Bmc1.21.1.jar";
sha256 = "sha256-qqFblNBkhlR6NsnHy03gpKt13EDg2e/DP1iSUcqCYOA=";
};
RegionsUnexplored = pkgs.fetchurl {
url = "https://cdn.modrinth.com/data/Tkikq67H/versions/fdZGrfYW/regions_unexplored-fabric-1.21.1-0.5.7.jar";
sha256 = "sha256-YUzXSbWYn9Irbqpg7voesZvn6xWUUwbX0vam0XVFJ9o=";
};
TerraBlender = pkgs.fetchurl {
url = "https://cdn.modrinth.com/data/kkmrDlKT/versions/XNtIBXyQ/TerraBlender-fabric-1.21.1-4.1.0.8.jar";
sha256 = "sha256-+H6Up/oSJ3EcP4rqn/rHoU4Me+IS/lDd7pXSxrpyPKw=";
};
});
whitelist = {
username1 = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";
username2 = "yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy";
};
};
};
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment