Skip to content

Commit 6eb7fc1

Browse files
authored
nixos/akkoma: remove IFD (#382944)
2 parents 4446df9 + f0d623d commit 6eb7fc1

File tree

1 file changed

+14
-14
lines changed

1 file changed

+14
-14
lines changed

nixos/modules/services/web-apps/akkoma.nix

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@ let
2626
substring
2727
versionOlder
2828

29-
fileContents
3029
readFile
3130

3231
literalExpression
@@ -129,17 +128,18 @@ let
129128
in replaceSec' { };
130129

131130
# Erlang/Elixir uses a somewhat special format for IP addresses
132-
erlAddr = addr: fileContents
133-
(pkgs.runCommand addr {
134-
nativeBuildInputs = [ cfg.package.elixirPackage ];
135-
code = ''
136-
case :inet.parse_address('${addr}') do
137-
{:ok, addr} -> IO.inspect addr
138-
{:error, _} -> System.halt(65)
139-
end
140-
'';
141-
passAsFile = [ "code" ];
142-
} ''elixir "$codePath" >"$out"'');
131+
erlAddr = addr:
132+
let
133+
isIPv4 = (lib.match "^([0-9]+\\.){3}[0-9]+$" addr) != null;
134+
in
135+
if isIPv4 then
136+
"{${lib.concatStringsSep "," (lib.splitString "." addr)}}"
137+
else
138+
let
139+
inherit (lib.network.ipv6.fromString addr) address;
140+
parsed = lib.map (x: "16#${x}") (lib.splitString ":" address);
141+
in
142+
"{${lib.concatStringsSep "," parsed}}";
143143

144144
configFile = format.generate "config.exs"
145145
(replaceSec
@@ -327,11 +327,11 @@ let
327327
AKKOMA_CONFIG_PATH="''${RUNTIME_DIRECTORY%%:*}/config.exs" \
328328
ERL_EPMD_ADDRESS="${cfg.dist.address}" \
329329
ERL_EPMD_PORT="${toString cfg.dist.epmdPort}" \
330-
ERL_FLAGS=${escapeShellArg (escapeShellArgs ([
330+
ERL_FLAGS="${escapeShellArgs ([
331331
"-kernel" "inet_dist_use_interface" (erlAddr cfg.dist.address)
332332
"-kernel" "inet_dist_listen_min" (toString cfg.dist.portMin)
333333
"-kernel" "inet_dist_listen_max" (toString cfg.dist.portMax)
334-
] ++ cfg.dist.extraFlags))} \
334+
] ++ cfg.dist.extraFlags)}" \
335335
RELEASE_COOKIE="$(<"''${RUNTIME_DIRECTORY%%:*}/cookie")" \
336336
RELEASE_NAME="akkoma" \
337337
exec "${cfg.package}/bin/$(basename "$0")" "$@"

0 commit comments

Comments
 (0)