Skip to content

Commit

Permalink
Fix permissions
Browse files Browse the repository at this point in the history
  • Loading branch information
xgroleau committed Jul 6, 2024
1 parent 4936037 commit a80b708
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 26 deletions.
3 changes: 1 addition & 2 deletions hosts/sheogorath/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -46,8 +46,7 @@ in
arkSurvivalAscended = {
enable = true;
port = 7777;
serverDataDir = "/data/arkSurvivalAscended/server1";
clusterDataDir = "/data/arkSurvivalAscended/cluster1";
dataDir = "/data/arkSurvivalAscended";
};

authentik = {
Expand Down
46 changes: 22 additions & 24 deletions modules/ark-survival-ascended/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -26,15 +26,11 @@ in
description = "The port to use";
};

serverDataDir = lib.mkOption {
dataDir = lib.mkOption {
type = types.str;
description = "Path to where the server data will be stored";
};

clusterDataDir = lib.mkOption {
type = types.str;
description = "Path to where the cluster data will be stored";
};
};

config = lib.mkIf cfg.enable {
Expand All @@ -47,12 +43,11 @@ in
user = "gameserver";
volumes = [
"/etc/localtime:/etc/localtime:ro"
"asa-steam:/home/gameserver/Steam:rw"
"asa-steamcmd:/home/gameserver/steamcmd:rw"
"${cfg.serverDataDir}:/home/gameserver/server-files:rw"
"${cfg.clusterDataDir}:/home/gameserver/cluster-shared:rw"
"${cfg.dataDir}/steam:/home/gameserver/Steam:rw"
"${cfg.dataDir}/steamcmd:/home/gameserver/steamcmd:rw"
"${cfg.dataDir}/server:/home/gameserver/server-files:rw"
"${cfg.dataDir}/cluster:/home/gameserver/cluster-shared:rw"
];
dependsOn = ["asa-1-set-permissions"];

environment = {
PUID = "25000";
Expand All @@ -64,39 +59,42 @@ in

ports = [ "${toString cfg.port}:7777/udp" ];
};

asa-1-set-permissions = {
entrypoint = "/bin/bash -c 'chown -R 25000:25000 /steam ; chown -R 25000:25000 /steamcmd ; chown -R 25000:25000 /server-files ; chown -R 25000:25000 /cluster-shared'";
user = "root";
image = "opensuse/leap";
volumes = [
"asa-steam:/steam:rw"
"asa-steamcmd:/steamcmd:rw"
"${cfg.serverDataDir}:/server-files:rw"
"${cfg.clusterDataDir}:/cluster-shared:rw"
];
};
};

networking.firewall = {
allowedUDPPorts = lib.mkIf cfg.openFirewall [ cfg.port ];
};

systemd.tmpfiles.settings.arkSurvivalAscended = {
"${cfg.serverDataDir}" = {
"${cfg.dataDir}/steam" = {
d = {
mode = "0777";
user = "25000";
group = "25000";
};
};
"${cfg.dataDir}/steamcmd" = {
d = {
mode = "0777";
user = "25000";
group = "25000";
};
};
"${cfg.dataDir}/server" = {
d = {
mode = "0777";
user = "25000";
group = "25000";
};
};
"${cfg.clusterDataDir}" = {
"${cfg.dataDir}/cluster" = {
d = {
mode = "0777";
user = "25000";
group = "25000";
};
};

};
};
}

0 comments on commit a80b708

Please sign in to comment.