diff --git a/lib/constants.nix b/lib/constants.nix index 8ff0070..2e34d6e 100644 --- a/lib/constants.nix +++ b/lib/constants.nix @@ -217,6 +217,10 @@ rec { port = 25568; dst = aa.kinkcraft-oci.internal.ipv4.address; } + { + port = 25569; + dst = aa.graeme-oci.internal.ipv4.address; + } # RCON... unsafe? # { @@ -261,6 +265,11 @@ rec { dst = aa.kinkcraft-oci.internal.ipv4.address; proto = "udp"; } + { + port = 25569; + dst = aa.graeme-oci.internal.ipv4.address; + proto = "udp"; + } { port = 15636; diff --git a/nixos/boxes/colony/vms/estuary/default.nix b/nixos/boxes/colony/vms/estuary/default.nix index c99090d..e6ebc52 100644 --- a/nixos/boxes/colony/vms/estuary/default.nix +++ b/nixos/boxes/colony/vms/estuary/default.nix @@ -433,6 +433,7 @@ in ip6 daddr ${aa.simpcraft-staging-oci.internal.ipv6.address} tcp dport 25565 accept ip6 daddr ${aa.kevcraft-oci.internal.ipv6.address} tcp dport 25567 accept ip6 daddr ${aa.kinkcraft-oci.internal.ipv6.address} tcp dport 25568 accept + ip6 daddr ${aa.graeme-oci.internal.ipv6.address} tcp dport 25569 accept ip6 daddr ${aa.gam.internal.ipv6.address} tcp dport 7777 accept return } @@ -443,6 +444,7 @@ in ip6 daddr ${aa.enshrouded-oci.internal.ipv6.address} udp dport { 15636-15637 } accept ip6 daddr ${aa.kevcraft-oci.internal.ipv6.address} udp dport 25567 accept ip6 daddr ${aa.kinkcraft-oci.internal.ipv6.address} udp dport 25568 accept + ip6 daddr ${aa.graeme-oci.internal.ipv6.address} udp dport 25569 accept ip6 daddr ${aa.gam.internal.ipv6.address} udp dport 7777 accept return } diff --git a/nixos/boxes/colony/vms/estuary/dns.nix b/nixos/boxes/colony/vms/estuary/dns.nix index 36659eb..e195e01 100644 --- a/nixos/boxes/colony/vms/estuary/dns.nix +++ b/nixos/boxes/colony/vms/estuary/dns.nix @@ -168,6 +168,8 @@ in kevcraft IN AAAA ${allAssignments.kevcraft-oci.internal.ipv6.address} kinkcraft IN A ${assignments.internal.ipv4.address} kinkcraft IN AAAA ${allAssignments.kinkcraft-oci.internal.ipv6.address} + graeme IN A ${assignments.internal.ipv4.address} + graeme IN AAAA ${allAssignments.graeme-oci.internal.ipv6.address} terraria IN A ${assignments.internal.ipv4.address} terraria IN AAAA ${allAssignments.gam.internal.ipv6.address} diff --git a/nixos/boxes/colony/vms/whale2/default.nix b/nixos/boxes/colony/vms/whale2/default.nix index 7715328..799bdab 100644 --- a/nixos/boxes/colony/vms/whale2/default.nix +++ b/nixos/boxes/colony/vms/whale2/default.nix @@ -55,6 +55,7 @@ in enshrouded-oci = 5; kevcraft-oci = 6; kinkcraft-oci = 7; + graeme-oci = 8; }; configuration = { lib, pkgs, modulesPath, config, assignments, allAssignments, ... }: diff --git a/nixos/boxes/colony/vms/whale2/minecraft/default.nix b/nixos/boxes/colony/vms/whale2/minecraft/default.nix index e3747d0..c53be9a 100644 --- a/nixos/boxes/colony/vms/whale2/minecraft/default.nix +++ b/nixos/boxes/colony/vms/whale2/minecraft/default.nix @@ -186,6 +186,46 @@ in ]; }; + graeme = { + # 2026.2.1-java21-alpine + image = "itzg/minecraft-server@sha256:82adaddfe0156f07c34228f1c1065cdbd298abc174de0a9961abb068b11beebb"; + + environment = { + TYPE = "VANILLA"; + SERVER_PORT = "25569"; + QUERY_PORT = "25569"; + + EULA = "true"; + ENABLE_QUERY = "true"; + ENABLE_RCON = "false"; + MOTD = "§4§k----- §9G§ar§ba§ce§dm§ee §4§k-----"; + ICON = "/ext/icon.png"; + + EXISTING_WHITELIST_FILE = "SYNCHRONIZE"; + WHITELIST = concatStringsSep "," [ + op + # ... :( + ]; + EXISTING_OPS_FILE = "SYNCHRONIZE"; + OPS = op; + DIFFICULTY = "normal"; + SPAWN_PROTECTION = "0"; + VIEW_DISTANCE = "20"; + + MAX_MEMORY = "4G"; + + TZ = "Europe/Dublin"; + }; + + volumes = [ + "graeme_data:/data" + "${./graeme.png}:/ext/icon.png:ro" + ]; + + extraOptions = [ + ''--network=colony:${dockerNetAssignment allAssignments "graeme-oci"}'' + ]; + }; }; services = { diff --git a/nixos/boxes/colony/vms/whale2/minecraft/graeme.png b/nixos/boxes/colony/vms/whale2/minecraft/graeme.png new file mode 100644 index 0000000..ea64561 Binary files /dev/null and b/nixos/boxes/colony/vms/whale2/minecraft/graeme.png differ