feat: Added minecraft servers

This commit is contained in:
uttarayan21
2025-07-26 20:51:50 +05:30
parent f89580fde7
commit 827ba18f6f
2 changed files with 41 additions and 3 deletions

View File

@@ -1,8 +1,17 @@
{
pkgs,
inputs,
config,
...
}: {
sops = {
secrets."minecraft/craftmine".owner = "minecraft";
templates = {
"craftmine.env".content = ''
CRAFTMINE_RCON_PASSWORD=${config.sops.placeholder."minecraft/craftmine"}
'';
};
};
services = let
whitelist = {
"AbhinavSE" = "8b6c052e-69b3-4bee-b9dc-12eb94653c9e";
@@ -12,12 +21,14 @@
};
in {
minecraft-servers = {
enable = false;
enable = true;
eula = true;
openFirewall = true;
environmentFile = config.sops.templates."craftmine.env".path;
servers.fabric = {
inherit whitelist;
enable = true;
enableRcon = true;
jvmOpts = "-Xmx4G -Xms4G";
package = pkgs.fabricServers.fabric-1_21_1;
serverProperties = {
@@ -28,6 +39,29 @@
white-list = true;
};
};
servers.craftmine = {
inherit whitelist;
enable = true;
jvmOpts = "-Xmx4G -Xms4G";
package = let
getJavaVersion = v: (builtins.getAttr "openjdk${toString v}" pkgs.javaPackages.compiler).headless;
in
pkgs.minecraft-server.override {
url = "https://piston-data.mojang.com/v1/objects/4527a9019e37e001770787e4523b505f79cac4c5/server.jar";
sha1 = "sha1-RSepAZ434AF3B4fkUjtQX3nKxMU=";
version = "25w14craftmine";
jre_headless = getJavaVersion 21;
};
serverProperties = {
enable-rcon = true;
"rcon.password" = "@CRAFTMINE_RCON_PASSWORD@";
motd = "Servius's Craftmine Server";
server-port = 25569;
white-list = true;
view-distance = 32;
};
};
};
};
}

View File

@@ -38,6 +38,10 @@ zerotier:
api_key: ENC[AES256_GCM,data:Hnihh3l4hZGSnDJcQV5eYz7TLD8AzWFAH9AgHAh6YEA=,iv:XO+nZ3pXmC+rDfgBaiapvkL6KnQTL9s6dmi3ZO18VE0=,tag:rb1gmBcMNWpSRP+wmhr86w==,type:str]
ryu:
public: ENC[AES256_GCM,data:c5De1NqMEfOHCnCjC08=,iv:y1wkjWswozxy/F/sTpKdv41yWr4Am65r1Z9EQXwt2Fc=,tag:oMLZDz96jnNm0SFDHs8prQ==,type:str]
minecraft:
craftmine: ENC[AES256_GCM,data:tzqHagpr+DTdt+/sL6xdESflydplIPFUdFRkpr5OtOU=,iv:7r5G7FrC3qExs5R14rqEt1SC+/+G+EEZ089Z2c0bj48=,tag:tkWuHkH2De4LYDcu/uuBWA==,type:str]
vanilla: ENC[AES256_GCM,data:UtVlLDAfJGuhYStqz6cPUemuxxR9S4IfkwwP8WVEzKM=,iv:2s6/7/wsB5Lgb1fqeiyBierm3WeD3f9AQRg+ZqJOUHI=,tag:9uzCBMjchpD4JnLnuHlfYQ==,type:str]
modded: ENC[AES256_GCM,data:6itrol9NObR3TczEeOa7wkykgqkpDus0VkHBRpU6VdQ=,iv:F56uYdHozJvkJ+m18aviTWzCrLfW2VcxkbOqpnRiniA=,tag:WLKA+uIJJtlDfMMOn0ak7Q==,type:str]
sops:
age:
- recipient: age1pw7kluxp7872c63ne4jecq75glj060jkmqwzkk6esatuyck9egfswufdpk
@@ -49,7 +53,7 @@ sops:
VGZKdHpVeFRpQUxtSEkyaEhLMlBJcGsKLb0DvPNZosPBUuiX6qz1s5IO5INQh8CK
ZtXTVClwMSmaUYhdSB2gKFrKVZHXTJZ4oAL5t/BpC0pOHyr+o96T3Q==
-----END AGE ENCRYPTED FILE-----
lastmodified: "2025-07-22T05:10:34Z"
mac: ENC[AES256_GCM,data:r8EFKt6lQWpR5Nmmje6ILAOdAsnL9RogOK5mmpGqHNRfDHGQFDZtcffrWAO7n0OxEJhsC2nY6DFcyLiFSPnN/A9vom1NkAShiDvt+yuCBGgHNxG6dC3VAfQHCD2Zt5ulmMc3cJ2GWX6BCXf9E3XNlS3Qh5gDURFnzBV62HyZJp0=,iv:aGQEjdQt+SWQpLHOpITNHxT8IMyLPGDpbMZrn3kOW+c=,tag:L4KLByPoDt278k3QsSkWYA==,type:str]
lastmodified: "2025-07-26T15:11:16Z"
mac: ENC[AES256_GCM,data:ebMRGGCyzv5J6nXKOU5Ztacs2KU7Z9UZYC1B2n0NqZcakKmmkAeE6yb4Q83bRd1uys3ERuX6GU1S1lK0B5sd3ArDBXi7L1v4bM4SW5l6jfQIq1Yb2vUwMSCEniMsw5qesmaFhyqm4ppT8JLbidixgTL7dnQHVsefvuAdG01EIbU=,iv:oTbuNlUfV8IOGuwlbZJPiIpodo0CMl0mHCGttIX6xBU=,tag:IWvF6O7TQBqgvuuueZsyfw==,type:str]
unencrypted_suffix: _unencrypted
version: 3.10.2