forked from
lass.pds.lassul.us/superconfig
This repository has no description
1.1 kB
41 lines
1{
2 self,
3 config,
4 pkgs,
5 ...
6}:
7{
8 imports = [
9 self.inputs.rogue-talk.nixosModules.default
10 ];
11
12 # Livekit keys generator
13 clan.core.vars.generators."livekit" = {
14 files.keyfile = { };
15 files.api-key = { };
16 files.api-secret = { };
17 runtimeInputs = with pkgs; [
18 livekit
19 coreutils
20 gnugrep
21 gnused
22 ];
23 script = ''
24 mkdir -p $out
25 output=$(livekit-server generate-keys)
26 api_key=$(echo "$output" | grep 'API Key:' | sed 's/.*API Key: //')
27 api_secret=$(echo "$output" | grep 'API Secret:' | sed 's/.*API Secret: //')
28 printf "%s: %s" "$api_key" "$api_secret" > $out/keyfile
29 printf "%s" "$api_key" > $out/api-key
30 printf "%s" "$api_secret" > $out/api-secret
31 '';
32 };
33
34 # Rogue-Talk game server (includes livekit)
35 services.rogue-talk-server = {
36 enable = true;
37 livekitKeyFile = config.clan.core.vars.generators."livekit".files."keyfile".path;
38 livekitApiKeyFile = config.clan.core.vars.generators."livekit".files."api-key".path;
39 livekitApiSecretFile = config.clan.core.vars.generators."livekit".files."api-secret".path;
40 };
41}