From c46949747779b5e679774ceb23a530ed4736c52b Mon Sep 17 00:00:00 2001
From: stuebinm
Date: Fri, 5 Feb 2021 22:19:01 +0100
Subject: configurable stun server
---
front/default.nix | 22 +++++++++++++++++-----
1 file changed, 17 insertions(+), 5 deletions(-)
(limited to 'front')
diff --git a/front/default.nix b/front/default.nix
index 00db42c..26eb4b1 100644
--- a/front/default.nix
+++ b/front/default.nix
@@ -5,11 +5,20 @@
, yarn2nix-moretea
, lib
, replace
-, environment ? {}
+, settings ? {}
, ... }:
let
- envVar = (name: lib.optionalAttrs (environment ? ${name}) { ${name} = environment.${name}; });
+ # nix is nice enough that we can just convert options written in camelCase into CAMEL_CASE to make environment vars out of them, which workadventure will use during its build
+ toCamelCase =
+ (name: builtins.replaceStrings
+ (map
+ (c : "_${c}")
+ lib.strings.lowerChars)
+ lib.strings.upperChars
+ (lib.strings.toLower name));
+
+ envVar = (name: lib.optionalAttrs (settings ? ${toCamelCase name}) { ${name} = settings.${toCamelCase name}; });
envVars = envVar "DEBUG_MODE"
// envVar "API_URL"
@@ -29,7 +38,8 @@ let
// envVar "TURN_PASSWORD"
// envVar "JITSI_URL"
// envVar "JITSI_PRIVATE_MODE"
- // envVar "DEFAULT_MAP_URL";
+ // envVar "DEFAULT_MAP_URL"
+ // envVar "STUN_SERVER";
in yarn2nix-moretea.mkYarnPackage (rec {
pname = "workadventurefront";
version = "unstable";
@@ -52,8 +62,10 @@ in yarn2nix-moretea.mkYarnPackage (rec {
patchPhase = ''
# remove google tag manager
- replace-literal -efsw '' ' '
- '' + (if envVars ? DEFAULT_MAP_URL then ''replace-literal -efs -r -x .ts "/Floor0/floor0.json" "${envVars.DEFAULT_MAP_URL}"'' else "");
+ replace-literal -efsw '' ' ';
+ ''
+ + (if envVars ? DEFAULT_MAP_URL then ''replace-literal -efs -r -x .ts "/Floor0/floor0.json" "${envVars.DEFAULT_MAP_URL}";'' else "")
+ + (if envVars ? STUN_SERVER then ''replace-literal -efs -r -x .ts "stun:stun.l.google.com:19302" "${envVars.STUN_SERVER}";'' else "");
buildPhase = ''
mkdir -p $out
--
cgit v1.2.3