From 1ce2ab2da900edba6ba555cb985883da52dc7780 Mon Sep 17 00:00:00 2001 From: Jermeiah S Date: Wed, 25 Jun 2025 16:41:26 -0400 Subject: [PATCH] feature: added arma example --- .../nixos/arma-reforger-tofu/default.nix | 57 +++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 configurations/nixos/arma-reforger-tofu/default.nix diff --git a/configurations/nixos/arma-reforger-tofu/default.nix b/configurations/nixos/arma-reforger-tofu/default.nix new file mode 100644 index 0000000..4665437 --- /dev/null +++ b/configurations/nixos/arma-reforger-tofu/default.nix @@ -0,0 +1,57 @@ +{ + flake, + modulesPath, + config, + ... +}: + +let + inherit (flake) inputs; + inherit (inputs) self; +in +{ + imports = [ + self.nixosModules.default + "${modulesPath}/virtualisation/lxc-container.nix" + ]; + # sample way to make a directory + # systemd.tmpfiles.rules = [ + # "d /var/lib/myapp 0755 myuser mygroup -" + # ]; + # read more options here + # https://search.nixos.org/options?channel=25.05&show=virtualisation.oci-containers.containers.%3Cname%3E.workdir&from=0&size=50&sort=relevance&type=packages&query=oci+containers + # https://wiki.nixos.org/wiki/NixOS_Containers + services.yggdrasil.persistentKeys = false; + virtualisation.podman.enable = true; + virtualisation.oci-containers.containers = { + arma = { + image = "ghcr.io/acemod/arma-reforger:latest"; + ports = [ + "2001:2001/udp" + "17777:17777/udp" + "19999:19999/udp" + ]; + volumes = [ + # make sure this is a path that exists + # my recomendation is to use /var/lib/reforger + # be sure to have that directory created + "./reforger/configs:/reforger/Configs" + "./reforger/profile:/home/profile" + "./reforger/workshop:/reforger/workshop" + ]; + environment = { + SERVER_PUBLIC_ADDRESS = "public-ip"; + GAME_NAME = "My Docker Reforger Server"; + }; + }; + }; + deploy = { + enable = false; + }; + networking = { + hostName = "arma-reforger-tofu"; + }; + environment.systemPackages = [ + ]; + system.stateVersion = "25.05"; +}