Add all of iogamaster modules

This commit is contained in:
2024-06-15 09:59:52 +02:00
parent c97f22254a
commit fa99b32cad
120 changed files with 3587 additions and 254 deletions

View File

@@ -0,0 +1,48 @@
{
options,
config,
lib,
...
}:
with lib;
with lib.frajul; let
cfg = config.services.arion.terraria.vanilla;
in {
options.services.arion.terraria.vanilla = with types; {
enable = mkBoolOpt false "";
};
config = mkIf cfg.enable {
virtualisation.arion.enable = true;
virtualisation.arion.projects.terraria-vanilla.settings = {
project.name = "vanilla";
services.terraria.service = {
image = "ryshe/terraria:latest";
environment = {
WORLD_FILENAME = "world.wld";
CONFIGPATH = "config.json";
};
ports = [
"7777:7777"
];
volumes = [
"/home/${config.user.name}/.local/share/terraria/vanilla/worlds:/root/.local/share/Terraria/Worlds"
];
# For the first run you will need to generate a new world with a size where: 1 = Small, 2=Medium, 3=Large
command = [
"-autocreate"
"2"
];
};
services.ngrok.service = {
image = "ngrok/ngrok";
env_file = ["${config.sops.secrets."ngrok/terraria".path}"];
command = ["tcp" "terraria:7777"];
};
};
home.persist.directories = [
".local/share/terraria/vanilla/worlds"
];
};
}