chore: add minecraft server

This commit is contained in:
Greg Hellings
2026-04-29 16:10:31 -05:00
parent 8efd97599a
commit 600aa885d4
4 changed files with 185 additions and 6 deletions
Generated
+73 -5
View File
@@ -128,6 +128,22 @@
} }
}, },
"flake-compat_2": { "flake-compat_2": {
"flake": false,
"locked": {
"lastModified": 1747046372,
"narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885",
"type": "github"
},
"original": {
"owner": "edolstra",
"repo": "flake-compat",
"type": "github"
}
},
"flake-compat_3": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1767039857, "lastModified": 1767039857,
@@ -306,6 +322,26 @@
"type": "github" "type": "github"
} }
}, },
"minecraft": {
"inputs": {
"flake-compat": "flake-compat_2",
"nixpkgs": "nixpkgs_2",
"systems": "systems_2"
},
"locked": {
"lastModified": 1777001712,
"narHash": "sha256-9JX9msZU1NvHzjKM24PRorP76Ge8GBy6LAkJKA21mlY=",
"owner": "Infinidoge",
"repo": "nix-minecraft",
"rev": "394d3bfd943458baf29e4798bc9b256d824a3bb9",
"type": "github"
},
"original": {
"owner": "Infinidoge",
"repo": "nix-minecraft",
"type": "github"
}
},
"nix-github-actions": { "nix-github-actions": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@@ -374,6 +410,22 @@
} }
}, },
"nixpkgs_2": { "nixpkgs_2": {
"locked": {
"lastModified": 1769461804,
"narHash": "sha256-msG8SU5WsBUfVVa/9RPLaymvi5bI8edTavbIq3vRlhI=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "bfc1b8a4574108ceef22f02bafcf6611380c100d",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_3": {
"locked": { "locked": {
"lastModified": 1776548001, "lastModified": 1776548001,
"narHash": "sha256-ZSK0NL4a1BwVbbTBoSnWgbJy9HeZFXLYQizjb2DPF24=", "narHash": "sha256-ZSK0NL4a1BwVbbTBoSnWgbJy9HeZFXLYQizjb2DPF24=",
@@ -389,7 +441,7 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs_3": { "nixpkgs_4": {
"locked": { "locked": {
"lastModified": 1766025857, "lastModified": 1766025857,
"narHash": "sha256-Lav5jJazCW4mdg1iHcROpuXqmM94BWJvabLFWaJVJp0=", "narHash": "sha256-Lav5jJazCW4mdg1iHcROpuXqmM94BWJvabLFWaJVJp0=",
@@ -427,7 +479,7 @@
"nixpkgs": [ "nixpkgs": [
"nixunstable" "nixunstable"
], ],
"systems": "systems_2" "systems": "systems_3"
}, },
"locked": { "locked": {
"lastModified": 1776830812, "lastModified": 1776830812,
@@ -447,7 +499,7 @@
"nurpkgs": { "nurpkgs": {
"inputs": { "inputs": {
"flake-parts": "flake-parts_4", "flake-parts": "flake-parts_4",
"nixpkgs": "nixpkgs_2" "nixpkgs": "nixpkgs_3"
}, },
"locked": { "locked": {
"lastModified": 1776910402, "lastModified": 1776910402,
@@ -471,6 +523,7 @@
"darwin": "darwin_2", "darwin": "darwin_2",
"flake-parts": "flake-parts_2", "flake-parts": "flake-parts_2",
"hmunstable": "hmunstable", "hmunstable": "hmunstable",
"minecraft": "minecraft",
"nix-hardware": "nix-hardware", "nix-hardware": "nix-hardware",
"nixunstable": "nixunstable", "nixunstable": "nixunstable",
"nixvimunstable": "nixvimunstable", "nixvimunstable": "nixvimunstable",
@@ -525,6 +578,21 @@
"type": "github" "type": "github"
} }
}, },
"systems_3": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"treefmt-nix": { "treefmt-nix": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@@ -548,7 +616,7 @@
}, },
"vsext": { "vsext": {
"inputs": { "inputs": {
"nixpkgs": "nixpkgs_3" "nixpkgs": "nixpkgs_4"
}, },
"locked": { "locked": {
"lastModified": 1776828494, "lastModified": 1776828494,
@@ -566,7 +634,7 @@
}, },
"wsl": { "wsl": {
"inputs": { "inputs": {
"flake-compat": "flake-compat_2", "flake-compat": "flake-compat_3",
"nixpkgs": [ "nixpkgs": [
"nixunstable" "nixunstable"
] ]
+2
View File
@@ -23,6 +23,7 @@
url = "github:nix-community/home-manager/master"; url = "github:nix-community/home-manager/master";
inputs.nixpkgs.follows = "nixunstable"; inputs.nixpkgs.follows = "nixunstable";
}; };
minecraft.url = "github:Infinidoge/nix-minecraft";
nix-hardware.url = "github:nixos/nixos-hardware"; nix-hardware.url = "github:nixos/nixos-hardware";
nixvimunstable = { nixvimunstable = {
url = "github:nix-community/nixvim/main"; url = "github:nix-community/nixvim/main";
@@ -47,6 +48,7 @@
top.nixvimunstable.overlays.default top.nixvimunstable.overlays.default
top.nurpkgs.overlays.default top.nurpkgs.overlays.default
top.vsext.overlays.default top.vsext.overlays.default
top.minecraft.overlay
]; ];
metadata = builtins.fromJSON (builtins.readFile ./network.json); metadata = builtins.fromJSON (builtins.readFile ./network.json);
systems = [ systems = [
+1
View File
@@ -24,6 +24,7 @@
minio-client minio-client
mumble mumble
pre-commit pre-commit
prismlauncher
restic restic
restic-browser restic-browser
tea tea
+109 -1
View File
@@ -2,12 +2,13 @@
# your system. Help is available in the configuration.nix(5) man page # your system. Help is available in the configuration.nix(5) man page
# and in the NixOS manual (accessible by running nixos-help). # and in the NixOS manual (accessible by running nixos-help).
{ pkgs, ... }: { top, pkgs, ... }:
{ {
imports = [ imports = [
# Include the results of the hardware scan. # Include the results of the hardware scan.
./hardware-configuration.nix ./hardware-configuration.nix
./networking.nix ./networking.nix
top.minecraft.nixosModules.minecraft-servers
]; ];
greg = { greg = {
@@ -35,4 +36,111 @@
]; ];
networking.hostName = "genesis"; # Define your hostname. networking.hostName = "genesis"; # Define your hostname.
services = {
minecraft-servers = {
enable = true;
eula = true;
openFirewall = true;
servers = {
maya = {
enable = true;
operators = {
Almec = {
bypassesPlayerLimit = true;
uuid = "7884dc5a-ae21-43d5-9506-a934d59be19a";
};
};
package = pkgs.fabricServers.fabric.override { jre_headless = pkgs.openjdk25_headless; };
serverProperties = {
allow-flight = true;
motd = "Maya's Minecraft World";
};
whitelist = { };
jvmOpts = "-Xms4092M -Xmx4092M";
symlinks = {
mods = pkgs.linkFarmFromDrvs "mods" (
builtins.attrValues {
# Health info
appleskin = pkgs.fetchurl {
url = "https://cdn.modrinth.com/data/EsAfCjCV/versions/HwaLJe3v/appleskin-fabric-mc26.1-3.0.9.jar";
hash = "sha256-iNCycR/oxqFpbPGfIcfgfWOm7PzPiIu5AmBWb8asTb4=";
};
# Needed by survivalfly
balm = pkgs.fetchurl {
url = "https://mediafilez.forgecdn.net/files/7959/843/balm-fabric-26.1.2-26.1.2.4.jar";
hash = "sha256-zDtDxkxOftpW0wUIap7l6abGCjXNczwrF2wLZDztyA0=";
};
# Adds more diverse biomes
# https://www.curseforge.com/minecraft/mc-mods/biomes-o-plenty
biomes = pkgs.fetchurl {
url = "https://mediafilez.forgecdn.net/files/7977/180/BiomesOPlenty-fabric-26.1.2-26.1.2.0.3.jar";
hash = "sha256-0aPtsRep0ftbkKqbp69PgUnNJyOBLY9vcPsB1mhOy/M=";
};
# Automation engines
# https://www.curseforge.com/minecraft/mc-mods/create
#create = pkgs.fetchurl {
# url = "https://mediafilez.forgecdn.net/files/7963/363/create-1.21.1-6.0.10.jar";
# hash = "sha256-74f+Vwnxuh9bi7IKKSW1r7RmnheP1ti/EMFndZ7v43o=";
#};
fabric_api = pkgs.fetchurl {
url = "https://cdn.modrinth.com/data/P7dR8mSH/versions/tnmuHGZA/fabric-api-0.146.1%2B26.1.2.jar";
hash = "sha256-8Jy/xmxRtw4z4GJ+38wwbXHVn4NGYp4w/mFvW9cmvKg=";
};
# Required by biomes-o-plenty
# https://www.curseforge.com/minecraft/mc-mods/glitchcore
glitchcore = pkgs.fetchurl {
url = "https://mediafilez.forgecdn.net/files/7975/608/GlitchCore-fabric-26.1.2-26.1.2.0.0.jar";
hash = "sha256-IDz+TblWvgt4UxFg3L3DhFMEESoX7y5cTOvXhyccQm8=";
};
# Tooltips
# https://www.curseforge.com/minecraft/mc-mods/jade/
jade = pkgs.fetchurl {
url = "https://mediafilez.forgecdn.net/files/7886/518/Jade-mc26.1-Fabric-26.0.8.jar";
hash = "sha256-Pc3R5eO4Jf+94mNMPtY/vvpbomp+S+qnAUAVbQk1r2Y=";
};
# Gives info on crafting recipes
# https://www.curseforge.com/minecraft/mc-mods/jei
jei = pkgs.fetchurl {
url = "https://mediafilez.forgecdn.net/files/7920/925/jei-26.1.2-fabric-29.5.0.26.jar";
hash = "sha256-7nF7fXYPIg9the/mxi6pUYEmKtosZO6yL2b0Dgf8+fI=";
};
# Machines
# https://www.curseforge.com/minecraft/mc-mods/mekanism
#mekanism = pkgs.fetchurl {
# url = "https://mediafilez.forgecdn.net/files/7904/58/Mekanism-1.21.1-10.7.19.85.jar";
# hash = "sha256-AE28nzEG9NGSrqoe4RkN0W7JyoBZ7T0JO4ADT0xXT0M=";
#};
# Shows installed mods
modmenu = pkgs.fetchurl {
url = "https://cdn.modrinth.com/data/mOgUt4GM/versions/jvjwXH6l/modmenu-18.0.0-alpha.8.jar";
hash = "sha256-u0gtCOVAnNxyHcslo+y9l/jCGsFb+U/Y8soiUilhZDA=";
};
# Better storage engines
# https://www.curseforge.com/minecraft/mc-mods/refined-storage
refined-storage = pkgs.fetchurl {
url = "https://mediafilez.forgecdn.net/files/7961/605/refinedstorage-fabric-3.0.0-beta.5.jar";
hash = "sha256-UiXNrGw/giCZAnCjFzFc9k4mrq6deTtL6Z00arSUFOU=";
};
survivalfly = pkgs.fetchurl {
url = "https://mediafilez.forgecdn.net/files/7870/312/survivalfly-1.3_fabric-mc26.1.1.jar";
hash = "sha256-Kai4wSxckpXbs1yLp8wJ4BmmjNkdDbeqerqWGIz3+Zk=";
};
# Also needed by biomes
# https://www.curseforge.com/minecraft/mc-mods/terrablender-fabric
terrablender = pkgs.fetchurl {
url = "https://mediafilez.forgecdn.net/files/7933/873/TerraBlender-fabric-26.1.2-26.1.2.0.1.jar";
hash = "sha256-lUrkmMIod54Qj78H0rzT4EYoEeiBG7w6sVOJlRvsnQ4=";
};
}
);
};
};
};
};
};
} }