Update references and folder names
This commit is contained in:
parent
4cafc51f01
commit
d402b1c806
82 changed files with 88 additions and 88 deletions
68
system/server/minecraft/common.nix
Normal file
68
system/server/minecraft/common.nix
Normal file
|
@ -0,0 +1,68 @@
|
|||
{pkgs, ...}: {
|
||||
# Common properties
|
||||
serverProperties = {
|
||||
enforce-secure-profile = false;
|
||||
max-players = 20;
|
||||
online-mode = false;
|
||||
spawn-protection = 0;
|
||||
view-distance = 10;
|
||||
simulation-distance = 10;
|
||||
white-list = true;
|
||||
};
|
||||
|
||||
# Common whitelist
|
||||
whitelist = {
|
||||
K5G = "8656dc10-6050-4a17-b29e-88c4babbc54c";
|
||||
JimmJam = "2f7affee-e10b-450f-a5e2-44c79a14a109";
|
||||
Foxzilla04 = "f583f591-ad9b-4a30-8d91-514881b31394";
|
||||
DewDemolisher = "9205524f-3886-483d-b471-82bb9905671a";
|
||||
Freecorn1854 = "8299cd8d-3cd4-4779-8180-0d9db6dc12a9";
|
||||
Tinyattack09 = "aaa8e9e2-4e51-4925-b9df-8a9504aec5d5";
|
||||
Ankha3000 = "dd65a277-f618-411e-812c-900c9c7e82d9";
|
||||
catoiico = "01f10cdf-c146-437e-99b1-2278b5dbe420";
|
||||
Sp0ok7 = "016c3daa-3dd5-4631-ae79-3a6f48d7cbe6";
|
||||
PooxterMooxter = "c973f4b5-ab50-45e3-b3eb-36286a6f66aa";
|
||||
};
|
||||
|
||||
# Common plugins
|
||||
paperSymlinks = {
|
||||
"plugins/Backuper.jar" = builtins.fetchurl {
|
||||
url = "https://cdn.modrinth.com/data/7cMAqMND/versions/nkcNIvUw/Backuper-3.0.1.jar";
|
||||
sha256 = "081hvs7khd9s8598i59ai8n0idp85rgc89m9hpfajwym9rmy7il4";
|
||||
};
|
||||
"plugins/BungeeGuard.jar" = builtins.fetchurl {
|
||||
url = "https://github.com/lucko/BungeeGuard/releases/download/v1.3.3/BungeeGuard.jar";
|
||||
sha256 = "0cackavwk7kl71hn1i78hcvkdp7q81srq35nranpvysbmm8v34vk";
|
||||
};
|
||||
"plugins/EssentialsX.jar" = builtins.fetchurl {
|
||||
url = "https://ci.ender.zone/job/EssentialsX/lastSuccessfulBuild/artifact/jars/EssentialsX-2.21.0-dev+111-b54c8c1.jar";
|
||||
sha256 = "0kcsgz5kcfbjc3nbdlgp549y497m4v90dnjqkv30sd1bfyzs9i5z";
|
||||
};
|
||||
"plugins/EssentialsXChat.jar" = builtins.fetchurl {
|
||||
url = "https://ci.ender.zone/job/EssentialsX/lastSuccessfulBuild/artifact/jars/EssentialsXChat-2.21.0-dev+111-b54c8c1.jar";
|
||||
sha256 = "0nraiclvnpl69gigs7h6vq55iksfd47clbzp7n3rsjmgvrbl1wil";
|
||||
};
|
||||
"plugins/LuckPerms.jar" = builtins.fetchurl {
|
||||
url = "https://download.luckperms.net/1556/bukkit/loader/LuckPerms-Bukkit-5.4.141.jar";
|
||||
sha256 = "02ad0dl34vdk6b1wyflqa6wq440xrh5w7yf3z3w1x1g089myddw4";
|
||||
};
|
||||
"plugins/ProtocolLib.jar" = builtins.fetchurl {
|
||||
url = "https://ci.dmulloy2.net/job/ProtocolLib/lastSuccessfulBuild/artifact/build/libs/ProtocolLib.jar";
|
||||
sha256 = "16krc7pyav4khnaxkyg27i5yxsgcdkildrn4nm5bhzh1f0ngqv2s";
|
||||
};
|
||||
"plugins/Vault.jar" = builtins.fetchurl {
|
||||
url = "https://github.com/MilkBowl/Vault/releases/download/1.7.3/Vault.jar";
|
||||
sha256 = "07fhfz7ycdlbmxsri11z02ywkby54g6wi9q0myxzap1syjbyvdd6";
|
||||
};
|
||||
"plugins/VoiceChat.jar" = builtins.fetchurl {
|
||||
url = "https://cdn.modrinth.com/data/9eGKb6K1/versions/nS19YToN/voicechat-bukkit-2.5.20.jar";
|
||||
sha256 = "023wjx0zxf9rc2x9vsqg398wapz0nlwfs5g6c8pci3qx75i5s4jx";
|
||||
};
|
||||
};
|
||||
|
||||
# Config files
|
||||
configSymlinks = {
|
||||
"plugins/Essentials/config.yml" = ./essentialsconfig.yml;
|
||||
"plugins/voicechat/voicechat-server.properties" = ./vcserver.properties;
|
||||
};
|
||||
}
|
17
system/server/minecraft/default.nix
Normal file
17
system/server/minecraft/default.nix
Normal file
|
@ -0,0 +1,17 @@
|
|||
{inputs, ...}: {
|
||||
imports = [
|
||||
inputs.nix-minecraft.nixosModules.minecraft-servers
|
||||
./servers/velocity.nix
|
||||
./servers/dewdemolisher.nix
|
||||
./servers/johnside.nix
|
||||
./servers/blockworld.nix
|
||||
./servers/uberbeta.nix
|
||||
#./servers/freaktards.nix
|
||||
];
|
||||
nixpkgs.overlays = [ inputs.nix-minecraft.overlay ];
|
||||
|
||||
services.minecraft-servers = {
|
||||
enable = true;
|
||||
eula = true;
|
||||
};
|
||||
}
|
1173
system/server/minecraft/essentialsconfig.yml
Normal file
1173
system/server/minecraft/essentialsconfig.yml
Normal file
File diff suppressed because it is too large
Load diff
17
system/server/minecraft/servers/blockworld.nix
Normal file
17
system/server/minecraft/servers/blockworld.nix
Normal file
|
@ -0,0 +1,17 @@
|
|||
{pkgs, ...}: let
|
||||
common = import ../common.nix { inherit pkgs; };
|
||||
in {
|
||||
services.minecraft-servers.servers.blockworld = {
|
||||
enable = true;
|
||||
autoStart = false;
|
||||
package = pkgs.paperServers.paper-1_21_1;
|
||||
jvmOpts = "-Xmx3072M";
|
||||
serverProperties = common.serverProperties // {
|
||||
difficulty = 2;
|
||||
server-port = 30012;
|
||||
motd = "§fArchival §l§n§cBloxelcom §r§fMinecraft server.";
|
||||
};
|
||||
whitelist = common.whitelist;
|
||||
symlinks = common.paperSymlinks // common.configSymlinks;
|
||||
};
|
||||
}
|
16
system/server/minecraft/servers/dewdemolisher.nix
Normal file
16
system/server/minecraft/servers/dewdemolisher.nix
Normal file
|
@ -0,0 +1,16 @@
|
|||
{pkgs, ...}: let
|
||||
common = import ../common.nix { inherit pkgs; };
|
||||
in {
|
||||
services.minecraft-servers.servers.dewdemolisher = {
|
||||
enable = true;
|
||||
package = pkgs.paperServers.paper-1_21_1;
|
||||
jvmOpts = "-Xmx3072M";
|
||||
serverProperties = common.serverProperties // {
|
||||
difficulty = 2;
|
||||
server-port = 30010;
|
||||
motd = "§l§aDew Demolisher is here.";
|
||||
};
|
||||
whitelist = common.whitelist;
|
||||
symlinks = common.paperSymlinks // common.configSymlinks;
|
||||
};
|
||||
}
|
65
system/server/minecraft/servers/johnside.nix
Normal file
65
system/server/minecraft/servers/johnside.nix
Normal file
|
@ -0,0 +1,65 @@
|
|||
{pkgs, outputs, ...}: let
|
||||
common = import ../common.nix { inherit pkgs; };
|
||||
in {
|
||||
services = {
|
||||
minecraft-servers.servers.johnside = {
|
||||
enable = true;
|
||||
package = pkgs.paperServers.paper-1_20_6;
|
||||
jvmOpts = "-Xmx3072M";
|
||||
serverProperties = common.serverProperties // {
|
||||
difficulty = 2;
|
||||
server-port = 30009;
|
||||
motd = "§l§9Johnside SMP§r §l§fworld for §4John lovers only.";
|
||||
};
|
||||
whitelist = common.whitelist;
|
||||
symlinks = common.paperSymlinks // common.configSymlinks // {
|
||||
"plugins/BlueMap.jar" = builtins.fetchurl {
|
||||
url = "https://cdn.modrinth.com/data/swbUV1cr/versions/TL5ElRWX/BlueMap-5.3-spigot.jar";
|
||||
sha256 = "08ls3wk0333vjg49kcmri884pcgm2xk9xdhwcxyffbh4ra0xrlbw";
|
||||
};
|
||||
"plugins/BlueMapOfflinePlayers.jar" = builtins.fetchurl {
|
||||
url = "https://github.com/TechnicJelle/BlueMapOfflinePlayerMarkers/releases/download/v3.0/BlueMapOfflinePlayerMarkers-3.0.jar";
|
||||
sha256 = "1f07w53q7yr4mvph7013d7ajxmp4lnsv6b1ab14y2x0bmqv39nwr";
|
||||
};
|
||||
"plugins/BlueMapMarkerManager.jar" = builtins.fetchurl {
|
||||
url = "https://cdn.modrinth.com/data/a8UoyV2h/versions/E0XoPfJV/BMM-2.1.5.jar";
|
||||
sha256 = "1vpnqglybysxnqyzkjnwbwg000dqkbk516apzvhmg39wlfaysl9d";
|
||||
};
|
||||
"plugins/CustomDiscs.jar" = builtins.fetchurl {
|
||||
url = "https://github.com/Navoei/CustomDiscs/releases/download/v3.0/custom-discs-3.0.jar";
|
||||
sha256 = "0xv0zrkdmjx0d7l34nqag8j004pm9zqivc12d3zy9pdrkv7pz87d";
|
||||
};
|
||||
"plugins/NotTooExpensive.jar" = builtins.fetchurl {
|
||||
url = "https://github.com/Mrredstone5230/Not-Too-Expensive/releases/download/1.1/not-too-expensive-1.1.jar";
|
||||
sha256 = "0da4v5l7iwry3wc21292lkmjprgmign4vdshzmhp7qc9hx26pj2d";
|
||||
};
|
||||
"plugins/SilkTouchHands.jar" = builtins.fetchurl {
|
||||
url = "https://github.com/5U55/SilkTouchSpigot/releases/download/v1.1/SilkTouchv1.1.jar";
|
||||
sha256 = "0mbp73xclr7f5m2lbdfz6is1j8vvyv1qwpl28sm089zrpm73qn6w";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
# BlueMap webhost
|
||||
nginx.virtualHosts."john.${outputs.secrets.jimDomain}" = {
|
||||
enableACME = true;
|
||||
forceSSL = true;
|
||||
locations."/" = {
|
||||
proxyPass = "http://127.0.0.1:31010";
|
||||
proxyWebsockets = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
# Allow Nginx to read and write to paths
|
||||
systemd.services.nginx.serviceConfig = {
|
||||
ReadWritePaths = [ "/var/www/Jimbo-Landing-Page/streams/hls/" ];
|
||||
};
|
||||
|
||||
# Open HTTP and HTTPs ports
|
||||
networking.firewall = {
|
||||
allowedTCPPorts = [
|
||||
80 443 # Nginx
|
||||
];
|
||||
};
|
||||
}
|
21
system/server/minecraft/servers/uberbeta.nix
Normal file
21
system/server/minecraft/servers/uberbeta.nix
Normal file
|
@ -0,0 +1,21 @@
|
|||
{pkgs, ...}: let
|
||||
common = import ../common.nix { inherit pkgs; };
|
||||
uberBukkitZip = pkgs.fetchzip {
|
||||
url = "https://github.com/Moresteck/Project-Poseidon-Uberbukkit/releases/download/2.0.0/uberbukkit-2.0.0-java17.zip";
|
||||
sha256 = "m4hgcqXJ43SnBGn6qNBGeEcXFv5Q8f/VFYJmx3aJ9PE=";
|
||||
stripRoot = false;
|
||||
};
|
||||
uberBukkit = pkgs.vanillaServers.vanilla.overrideAttrs (oldAttrs: {
|
||||
src = "${uberBukkitZip}/uberbukkit-2.0.0.jar";
|
||||
});
|
||||
in {
|
||||
services.minecraft-servers.servers.uberbeta = {
|
||||
enable = true;
|
||||
package = uberBukkit;
|
||||
jvmOpts = "-Xmx512M";
|
||||
serverProperties = common.serverProperties // {
|
||||
difficulty = 3;
|
||||
server-port = 30005;
|
||||
};
|
||||
};
|
||||
}
|
49
system/server/minecraft/servers/velocity.nix
Normal file
49
system/server/minecraft/servers/velocity.nix
Normal file
|
@ -0,0 +1,49 @@
|
|||
{pkgs, ...}: let
|
||||
common = import ../common.nix { inherit pkgs; };
|
||||
in {
|
||||
services.minecraft-servers.servers.velocity = {
|
||||
enable = true;
|
||||
package = pkgs.velocityServers.velocity;
|
||||
jvmOpts = "-Xmx512M";
|
||||
symlinks = {
|
||||
"plugins/Geyser.jar" = builtins.fetchurl {
|
||||
url = "https://download.geysermc.org/v2/projects/geyser/versions/2.4.2/builds/660/downloads/velocity";
|
||||
sha256 = "09z938v6xrgbiba8rxgi7cdh3xxkv9fdampy15k6fmwddmj9y4a2";
|
||||
};
|
||||
"plugins/Floodgate.jar" = builtins.fetchurl {
|
||||
url = "https://download.geysermc.org/v2/projects/floodgate/versions/2.2.3/builds/109/downloads/velocity";
|
||||
sha256 = "1hxdf38qzpzdnyn2gn1152fyd54bi37i0ayc82dgcjf0qrcbmv0c";
|
||||
};
|
||||
"plugins/LuckPerms.jar" = builtins.fetchurl {
|
||||
url = "https://download.luckperms.net/1556/velocity/LuckPerms-Velocity-5.4.141.jar";
|
||||
sha256 = "0j5f7r3g8h4f8z8ppakwfk96hijp3slr0vxyj9v8x4h8w5rcl9d1";
|
||||
};
|
||||
"plugins/SkinsRestorer.jar" = builtins.fetchurl {
|
||||
url = "https://github.com/SkinsRestorer/SkinsRestorer/releases/download/15.4.2/SkinsRestorer.jar";
|
||||
sha256 = "14nl9mi958bfqwqz9182cxj7m6l15kalq3wjmjqzy50s52si35wf";
|
||||
};
|
||||
"plugins/ViaVersion.jar" = builtins.fetchurl {
|
||||
url = "https://github.com/ViaVersion/ViaVersion/releases/download/5.0.3/ViaVersion-5.0.3.jar";
|
||||
sha256 = "02gf91ysialgvbl0w8awa0dsi1yb33ac7clmz0wika1xigk9z10r";
|
||||
};
|
||||
"plugins/ViaBackwards.jar" = builtins.fetchurl {
|
||||
url = "https://github.com/ViaVersion/ViaBackwards/releases/download/5.0.3/ViaBackwards-5.0.3.jar";
|
||||
sha256 = "1wqk68pjrzl1zhajb9lxa1s6wzj85rb0c2riycv9yysr5bcxssqi";
|
||||
};
|
||||
"plugins/Voicechat.jar" = builtins.fetchurl {
|
||||
url = "https://cdn.modrinth.com/data/9eGKb6K1/versions/svvcJhgC/voicechat-velocity-2.5.20.jar";
|
||||
sha256 = "0nw85x24qa9skbhfgbhsjl2r7d9xshr9f04nnq490zbgz7716lqq";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
# Open ports for proxy
|
||||
networking.firewall = {
|
||||
allowedTCPPorts = [
|
||||
25565 19132 30013 5657 # Minecraft server info
|
||||
];
|
||||
allowedUDPPorts = [
|
||||
25565 19132 30013 # Minecraft server, VC, and Bedrock
|
||||
];
|
||||
};
|
||||
}
|
36
system/server/minecraft/vcserver.properties
Normal file
36
system/server/minecraft/vcserver.properties
Normal file
|
@ -0,0 +1,36 @@
|
|||
# Simple Voice Chat server config v2.5.16
|
||||
|
||||
# The port of the voice chat server, "-1" sets the port to the Minecraft servers port
|
||||
port=-1
|
||||
# The distance to where the voice can be heard
|
||||
max_voice_distance=48.0
|
||||
# The multiplier the voice distance will be reduced by when sneaking
|
||||
crouch_distance_multiplier=1.0
|
||||
# The multiplier the voice distance will be reduced by when whispering
|
||||
whisper_distance_multiplier=0.5
|
||||
# The opus codec
|
||||
codec=VOIP
|
||||
# The maximum size in bytes in a voice packet
|
||||
# Set this to a lower value if your voice packets don't arrive
|
||||
mtu_size=1024
|
||||
# The frequency in which keep alive packets are sent
|
||||
# Setting this to a higher value may result in timeouts
|
||||
keep_alive=1000
|
||||
# If group chats are allowed
|
||||
enable_groups=true
|
||||
# If players are allowed to record the voice chat
|
||||
allow_recording=true
|
||||
# If spectators are allowed to talk to other players
|
||||
spectator_interaction=false
|
||||
# If spectators can talk to players they are spectating
|
||||
spectator_player_possession=false
|
||||
# If players without the mod should get kicked from the server
|
||||
force_voice_chat=false
|
||||
# The amount of milliseconds, the server should wait to check if the player has the mod installed
|
||||
# Only active when force_voice_chat is set to true
|
||||
login_timeout=10000
|
||||
# The range where the voice chat should broadcast audio to
|
||||
# A value <0 means 'max_voice_distance'
|
||||
broadcast_range=-1.0
|
||||
# If the voice chat server should reply to pings
|
||||
allow_pings=true
|
Loading…
Add table
Add a link
Reference in a new issue