Add dawncraft server
This commit is contained in:
parent
b138325f45
commit
7c588680e3
2 changed files with 65 additions and 5 deletions
|
@ -98,8 +98,16 @@ sudo nix run nixpkgs#ipmitool -- raw 0x30 0x30 0x02 0xff 0x00
|
||||||
path = "/var/lib/jland/jland.env";
|
path = "/var/lib/jland/jland.env";
|
||||||
# TODO: would be cool to assert that it's correctly-formatted JSON? probably should be done in a pre-commit hook?
|
# TODO: would be cool to assert that it's correctly-formatted JSON? probably should be done in a pre-commit hook?
|
||||||
mode = "0440";
|
mode = "0440";
|
||||||
owner = config.users.users.jland.name;
|
owner = config.users.users.daniel.name;
|
||||||
group = config.users.groups.jland.name;
|
group = config.users.groups.daniel.name;
|
||||||
|
};
|
||||||
|
|
||||||
|
"dawncraft.env" = {
|
||||||
|
path = "/var/lib/dawncraft/dawncraft.env";
|
||||||
|
# TODO: would be cool to assert that it's correctly-formatted JSON? probably should be done in a pre-commit hook?
|
||||||
|
mode = "0440";
|
||||||
|
owner = config.users.users.daniel.name;
|
||||||
|
group = config.users.groups.daniel.name;
|
||||||
};
|
};
|
||||||
|
|
||||||
plausible-admin-password = {
|
plausible-admin-password = {
|
||||||
|
@ -478,7 +486,6 @@ sudo nix run nixpkgs#ipmitool -- raw 0x30 0x30 0x02 0xff 0x00
|
||||||
"caddy" # write access to /storage/files.lyte.dev
|
"caddy" # write access to /storage/files.lyte.dev
|
||||||
"users" # general users group
|
"users" # general users group
|
||||||
"jellyfin" # write access to /storage/jellyfin
|
"jellyfin" # write access to /storage/jellyfin
|
||||||
"jland"
|
|
||||||
"flanilla"
|
"flanilla"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
@ -890,6 +897,58 @@ sudo nix run nixpkgs#ipmitool -- raw 0x30 0x30 0x02 0xff 0x00
|
||||||
26965
|
26965
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
{
|
||||||
|
# dawncraft minecraft server
|
||||||
|
systemd.tmpfiles.rules = [
|
||||||
|
"d /storage/dawncraft/ 0770 1000 1000 -"
|
||||||
|
"d /storage/dawncraft/data/ 0770 1000 1000 -"
|
||||||
|
"d /storage/dawncraft/worlds/ 0770 1000 1000 -"
|
||||||
|
"d /storage/dawncraft/downloads/ 0770 1000 1000 -"
|
||||||
|
];
|
||||||
|
virtualisation.oci-containers.containers.minecraft-dawncraft = {
|
||||||
|
autoStart = true;
|
||||||
|
|
||||||
|
# sending commands: https://docker-minecraft-server.readthedocs.io/en/latest/commands/
|
||||||
|
image = "docker.io/itzg/minecraft-server";
|
||||||
|
extraOptions = [
|
||||||
|
"--tty"
|
||||||
|
"--interactive"
|
||||||
|
];
|
||||||
|
environment = {
|
||||||
|
EULA = "true";
|
||||||
|
|
||||||
|
STOP_SERVER_ANNOUNCE_DELAY = "20";
|
||||||
|
TZ = "America/Chicago";
|
||||||
|
VERSION = "1.18.2";
|
||||||
|
MEMORY = "8G";
|
||||||
|
MAX_MEMORY = "16G";
|
||||||
|
|
||||||
|
ALLOW_FLIGHT = "true";
|
||||||
|
ENABLE_QUERY = "true";
|
||||||
|
SERVER_PORT = "26968";
|
||||||
|
QUERY_PORT = "26968";
|
||||||
|
|
||||||
|
TYPE = "AUTO_CURSEFORGE";
|
||||||
|
CF_SLUG = "dawn-craft";
|
||||||
|
|
||||||
|
CF_EXCLUDE_MODS = "368398";
|
||||||
|
CF_FORCE_SYNCHRONIZE = "true";
|
||||||
|
# CF_FILE_ID = "5247696"; # 2.0.7 server
|
||||||
|
};
|
||||||
|
environmentFiles = [
|
||||||
|
config.sops.secrets."dawncraft.env".path
|
||||||
|
];
|
||||||
|
ports = ["26968:26968/tcp" "26968:26968/udp"];
|
||||||
|
volumes = [
|
||||||
|
"/storage/dawncraft/data:/data"
|
||||||
|
"/storage/dawncraft/worlds:/worlds"
|
||||||
|
"/storage/dawncraft/downloads:/downloads"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
networking.firewall.allowedTCPPorts = [
|
||||||
|
26968
|
||||||
|
];
|
||||||
|
}
|
||||||
{
|
{
|
||||||
virtualisation.oci-containers.containers.minecraft-flanilla = {
|
virtualisation.oci-containers.containers.minecraft-flanilla = {
|
||||||
autoStart = true;
|
autoStart = true;
|
||||||
|
|
|
@ -13,6 +13,7 @@ plausible-erlang-cookie: ENC[AES256_GCM,data:zhmC+D6EjIE8Rw91lIrMqY0QIazTX1e1jBz
|
||||||
plausible-secret-key-base: ENC[AES256_GCM,data:ylakPGzY4S9640krl0fxYgm0Getf0+I7zthyTqTD/IpVhz5xgYBYx3Y2lSNa9Oi9yQ7+f9OdOBC6nc7n6MuUBg==,iv:YLPax/cRjMdIFti26gJd8COKr+3jXNZ7HCA5VvQVyAo=,tag:LHqYi590oEIp1IihLcFTtw==,type:str]
|
plausible-secret-key-base: ENC[AES256_GCM,data:ylakPGzY4S9640krl0fxYgm0Getf0+I7zthyTqTD/IpVhz5xgYBYx3Y2lSNa9Oi9yQ7+f9OdOBC6nc7n6MuUBg==,iv:YLPax/cRjMdIFti26gJd8COKr+3jXNZ7HCA5VvQVyAo=,tag:LHqYi590oEIp1IihLcFTtw==,type:str]
|
||||||
nextcloud-admin-password: ENC[AES256_GCM,data:QaoSZyommeGED3nWNru92UVO2tjk24HE9fWX7ExYT101o4ZL411TmV1TXHSyfwjmE7yLIm1K/j4xpEbIY3zvFg==,iv:xC5EZVPHumVPOob5jiiXMFAmdFQcFSUPtZgioAgGDDs=,tag:Q/kY38XWkGsqcmCkd2lodg==,type:str]
|
nextcloud-admin-password: ENC[AES256_GCM,data:QaoSZyommeGED3nWNru92UVO2tjk24HE9fWX7ExYT101o4ZL411TmV1TXHSyfwjmE7yLIm1K/j4xpEbIY3zvFg==,iv:xC5EZVPHumVPOob5jiiXMFAmdFQcFSUPtZgioAgGDDs=,tag:Q/kY38XWkGsqcmCkd2lodg==,type:str]
|
||||||
jland.env: ENC[AES256_GCM,data:u+QKwKWG9NFduuofhe3aatof3KoC0N4ZpNOD8E/7l0BTSoTe5Tqmz5/33EOcBUw99+YLFR4kTJwdUmLWHk4UD87aGsJ4liPCtXnBsToAzBGg0I3mhGQ/QM8iKXMW9oKb3ciapitQBuJa1WIp5/bHNtCXWQ==,iv:iZDET5EWM4DnAoQqLP9+Ll4S+mFHt2wZ3ENtN79Dbqw=,tag:qVpocN3FxlHfte2hAmtGPA==,type:str]
|
jland.env: ENC[AES256_GCM,data:u+QKwKWG9NFduuofhe3aatof3KoC0N4ZpNOD8E/7l0BTSoTe5Tqmz5/33EOcBUw99+YLFR4kTJwdUmLWHk4UD87aGsJ4liPCtXnBsToAzBGg0I3mhGQ/QM8iKXMW9oKb3ciapitQBuJa1WIp5/bHNtCXWQ==,iv:iZDET5EWM4DnAoQqLP9+Ll4S+mFHt2wZ3ENtN79Dbqw=,tag:qVpocN3FxlHfte2hAmtGPA==,type:str]
|
||||||
|
dawncraft.env: ENC[AES256_GCM,data:8n1ymQZpMeVwTyoHhccV+W5diMLcsZw5zZQy4Z4eaMcLFk8ey3SeXkCf9+GnqpIU5xIZfCP1ZqeSxR03kJx3TPbQeBLZeN/QAYBxHOg/tjXIE6jdIGv0INkVLkExKPlvGN8F+ijwYkwgfqlhKPBf+Q==,iv:EMGlqUxcfvxqn1G1NohrAtJP/fLdolP++zcvaxIvVR4=,tag:1+ueIDCJTxmM586Z7i0aUA==,type:str]
|
||||||
api.lyte.dev: ENC[AES256_GCM,data:14C5GQ41m/g7qHPzxlYoWjKWDOcm7MEDkuSofiuLfRNc/nji61t1eDbKX3d+SQL1UBchJFoBrWrUxnf0mUERhED1196z8vUq2jKEkcqKCAUS3soECInlb8zcxTcxaTFjYSjp1vUBdAn05AqLsF+hh9Bsm4fMQYjnHEZke9EmPZhuTlUdZa4eLv3+L3xAPHk2QIHQhdsjcTjGAZRMZOgTEcCvtGlb5pQuo11XmR2JzwzOXMC51WFDeOIWMAdO80yQBAdILso7rp1Nts/lwF0Bc9t7bNdHyoVTOA==,iv:jWGqUpXOTb/O972qXOqeX0EMFQLDKwaNHBqlpuGrZOk=,tag:uwB/jlAgESkLZ+vJ/OeV0A==,type:str]
|
api.lyte.dev: ENC[AES256_GCM,data:14C5GQ41m/g7qHPzxlYoWjKWDOcm7MEDkuSofiuLfRNc/nji61t1eDbKX3d+SQL1UBchJFoBrWrUxnf0mUERhED1196z8vUq2jKEkcqKCAUS3soECInlb8zcxTcxaTFjYSjp1vUBdAn05AqLsF+hh9Bsm4fMQYjnHEZke9EmPZhuTlUdZa4eLv3+L3xAPHk2QIHQhdsjcTjGAZRMZOgTEcCvtGlb5pQuo11XmR2JzwzOXMC51WFDeOIWMAdO80yQBAdILso7rp1Nts/lwF0Bc9t7bNdHyoVTOA==,iv:jWGqUpXOTb/O972qXOqeX0EMFQLDKwaNHBqlpuGrZOk=,tag:uwB/jlAgESkLZ+vJ/OeV0A==,type:str]
|
||||||
sops:
|
sops:
|
||||||
kms: []
|
kms: []
|
||||||
|
@ -38,8 +39,8 @@ sops:
|
||||||
b0lTRjVCMU9ELzdvbFBJZ0tHbGtsYkEKLEcXCEikC3T3hfVOYKtWcNSGmfg28y+f
|
b0lTRjVCMU9ELzdvbFBJZ0tHbGtsYkEKLEcXCEikC3T3hfVOYKtWcNSGmfg28y+f
|
||||||
nGC4dQh9EciEbk1ZBbN3i6YSNULDoMSH172KBmRyt1ogr1ZPyCNqtg==
|
nGC4dQh9EciEbk1ZBbN3i6YSNULDoMSH172KBmRyt1ogr1ZPyCNqtg==
|
||||||
-----END AGE ENCRYPTED FILE-----
|
-----END AGE ENCRYPTED FILE-----
|
||||||
lastmodified: "2023-11-02T19:02:54Z"
|
lastmodified: "2024-05-07T04:00:34Z"
|
||||||
mac: ENC[AES256_GCM,data:NcJuWZUho49dKGoDgIUkbuTVv34xLsl/JLYxLVkr1CndckPqsKpcYgjbgvmkB1zfy9x3KLbpLKpJ7DtsmjgY1UhL44TDLQg3CoItmWlna+kQgcgyrmmGE/8S/er+zWruPdnY8233ikLRzVBrcwwXm6V5sYMJO4S33LFW/G28HQ8=,iv:kudZwEq8rroOxRiH+Qhao/rhJI49HrMgdElkgSPmjXE=,tag:my5PQ4OZO7KnqtPAWZ3vMQ==,type:str]
|
mac: ENC[AES256_GCM,data:e7v7J2QM6p4ljrdEX6uM7PHWb0/DKt1aWIro+YkQct1ym772WKtWFzzm+mV2wqBLLXCAKy7MJ7Y89iTysFO3pdGX1zdw3wMbNfmTCCXCKAUcIih4O0hLHqrfwcoVOuQ0SALESshDmUew/Gqu6NSrL6Wo+jNo7LEAHZ7kFtkP8rQ=,iv:0fmHOKlBzIhKQ4G6DDwlIW2WpLjIS/OAWLexND+/HAQ=,tag:FSqO8/14JwhobpIKaHk77w==,type:str]
|
||||||
pgp: []
|
pgp: []
|
||||||
unencrypted_suffix: _unencrypted
|
unencrypted_suffix: _unencrypted
|
||||||
version: 3.8.1
|
version: 3.8.1
|
||||||
|
|
Loading…
Reference in a new issue