diff --git a/modules/bip110.nix b/modules/bip110.nix index 104a797..e229a80 100755 --- a/modules/bip110.nix +++ b/modules/bip110.nix @@ -4,20 +4,12 @@ let cfg = config.sovran_systemsOS; in { -<<<<<<< HEAD -======= - # ✅ Option definition ->>>>>>> 5bee5ad99bb7890df011d88e9928b6944c3565f8 options.sovran_systemsOS.packages.bip110 = lib.mkOption { type = lib.types.nullOr lib.types.package; default = null; description = "BIP110 Bitcoin package"; }; -<<<<<<< HEAD -======= - # ✅ Implementation ->>>>>>> 5bee5ad99bb7890df011d88e9928b6944c3565f8 config = lib.mkIf ( cfg.features.bip110 && cfg.packages.bip110 != null diff --git a/modules/coturn.nix b/modules/coturn.nix deleted file mode 100755 index fac4c86..0000000 --- a/modules/coturn.nix +++ /dev/null @@ -1,54 +0,0 @@ -{config, pkgs, lib, ...}: - -let - personalization = import ./personalization.nix; - - in -lib.mkIf config.sovran_systemsOS.features.coturn { - - systemd.services.coturn-helper = { - - script = '' - - systemctl restart coturn - - ''; - - unitConfig = { - Type = "simple"; - After = "btcpayserver.service"; - Requires = "network-online.target"; - }; - - serviceConfig = { - RemainAfterExit = "yes"; - Type = "oneshot"; - }; - - wantedBy = [ "multi-user.target" ]; - - }; - - - services.coturn = { - - enable = true; - use-auth-secret = true; - static-auth-secret = "${personalization.coturn_static_auth_secret}"; - realm = personalization.matrix_url; - cert = "/var/lib/coturn/${personalization.matrix_url}.crt.pem"; - pkey = "/var/lib/coturn/${personalization.matrix_url}.key.pem"; - min-port = 49152; - max-port = 65535; - listening-port = 5349; - no-cli = true; - extraConfig = '' - verbose - external-ip=${personalization.external_ip_secret} - stale-nonce - fingerprint - ''; - - }; - -} diff --git a/modules/element-calling.nix b/modules/element-calling.nix index 492e9d7..67859a5 100755 --- a/modules/element-calling.nix +++ b/modules/element-calling.nix @@ -1,10 +1,6 @@ { config, pkgs, lib, ... }: let -<<<<<<< HEAD -======= - personalization = import ./personalization.nix; ->>>>>>> 5bee5ad99bb7890df011d88e9928b6944c3565f8 livekitKeyFile = "/var/lib/livekit/livekit_keyFile"; in @@ -19,10 +15,6 @@ lib.mkIf config.sovran_systemsOS.features.element-calling { description = "Generate LiveKit key file if missing"; wantedBy = [ "multi-user.target" ]; before = [ "livekit.service" "lk-jwt-service.service" ]; -<<<<<<< HEAD -======= - requires = []; ->>>>>>> 5bee5ad99bb7890df011d88e9928b6944c3565f8 serviceConfig = { Type = "oneshot"; RemainAfterExit = true; @@ -47,7 +39,6 @@ lib.mkIf config.sovran_systemsOS.features.element-calling { systemd.services.lk-jwt-service.after = [ "livekit-key-setup.service" ]; systemd.services.lk-jwt-service.wants = [ "livekit-key-setup.service" ]; -<<<<<<< HEAD ####### CADDY SNIPPET — written to /run/caddy for caddy.nix to pick up ####### systemd.services.element-calling-caddy-config = { description = "Generate Element Calling Caddy config snippet"; @@ -66,51 +57,35 @@ lib.mkIf config.sovran_systemsOS.features.element-calling { mkdir -p /run/caddy cat > /run/caddy/element-calling.snippet <>>>>>> 5bee5ad99bb7890df011d88e9928b6944c3565f8 - reverse_proxy /_matrix/* http://localhost:8008 - reverse_proxy /_synapse/client/* http://localhost:8008 - header /.well-known/matrix/* Content-Type "application/json" - header /.well-known/matrix/* Access-Control-Allow-Origin "*" - header /.well-known/matrix/* Access-Control-Allow-Methods "GET, POST, PUT, DELETE, OPTIONS" - header /.well-known/matrix/* Access-Control-Allow-Headers "X-Requested-With, Content-Type, Authorization" -<<<<<<< HEAD - respond /.well-known/matrix/client \`{ "m.homeserver": {"base_url": "https://$MATRIX" }, "org.matrix.msc4143.rtc_foci": [{ "type":"livekit", "livekit_service_url":"https://$ELEMENT_CALLING/livekit/jwt" }] }\` - } +$MATRIX { + reverse_proxy /_matrix/* http://localhost:8008 + reverse_proxy /_synapse/client/* http://localhost:8008 + header /.well-known/matrix/* Content-Type "application/json" + header /.well-known/matrix/* Access-Control-Allow-Origin "*" + header /.well-known/matrix/* Access-Control-Allow-Methods "GET, POST, PUT, DELETE, OPTIONS" + header /.well-known/matrix/* Access-Control-Allow-Headers "X-Requested-With, Content-Type, Authorization" + respond /.well-known/matrix/client \`{ "m.homeserver": {"base_url": "https://$MATRIX" }, "org.matrix.msc4143.rtc_foci": [{ "type":"livekit", "livekit_service_url":"https://$ELEMENT_CALLING/livekit/jwt" }] }\` +} - $MATRIX:8448 { - reverse_proxy http://localhost:8008 - } +$MATRIX:8448 { + reverse_proxy http://localhost:8008 +} - $ELEMENT_CALLING { -======= - respond /.well-known/matrix/client `{ "m.homeserver": {"base_url": "https://${personalization.matrix_url}" }, "org.matrix.msc4143.rtc_foci": [{ "type":"livekit", "livekit_service_url":"https://${personalization.element-calling_url}/livekit/jwt" }] }` - ''; - }; - - "${personalization.element-calling_url}" = { - extraConfig = '' ->>>>>>> 5bee5ad99bb7890df011d88e9928b6944c3565f8 - handle /livekit/jwt/sfu/get { - uri strip_prefix /livekit/jwt - reverse_proxy [::1]:8073 { - header_up Host {host} - header_up X-Forwarded-Server {host} - header_up X-Real-IP {remote_host} - header_up X-Forwarded-For {remote_host} - } - } - handle { - reverse_proxy localhost:7880 - } -<<<<<<< HEAD - } - EOF +$ELEMENT_CALLING { + handle /livekit/jwt/sfu/get { + uri strip_prefix /livekit/jwt + reverse_proxy [::1]:8073 { + header_up Host {host} + header_up X-Forwarded-Server {host} + header_up X-Real-IP {remote_host} + header_up X-Forwarded-For {remote_host} + } + } + handle { + reverse_proxy localhost:7880 + } +} +EOF ''; }; @@ -132,18 +107,14 @@ lib.mkIf config.sovran_systemsOS.features.element-calling { mkdir -p /run/livekit cat > /run/livekit/runtime-config.yaml <>>>>>> 5bee5ad99bb7890df011d88e9928b6944c3565f8 }; ####### LIVEKIT SERVICE ####### @@ -157,16 +128,8 @@ lib.mkIf config.sovran_systemsOS.features.element-calling { room.auto_create = false; turn = { enabled = true; -<<<<<<< HEAD tls_port = 5349; udp_port = 3478; -======= - domain = "${personalization.matrix_url}"; - tls_port = 5349; - udp_port = 3478; - cert_file = "/var/lib/livekit/${personalization.matrix_url}.crt"; - key_file = "/var/lib/livekit/${personalization.matrix_url}.key"; ->>>>>>> 5bee5ad99bb7890df011d88e9928b6944c3565f8 }; }; }; @@ -177,7 +140,6 @@ lib.mkIf config.sovran_systemsOS.features.element-calling { ]; ####### JWT SERVICE ####### -<<<<<<< HEAD systemd.services.lk-jwt-service-runtime-config = { description = "Generate lk-jwt-service runtime config from domain files"; before = [ "lk-jwt-service.service" ]; @@ -195,8 +157,8 @@ lib.mkIf config.sovran_systemsOS.features.element-calling { mkdir -p /run/lk-jwt-service cat > /run/lk-jwt-service/env < /run/matrix-synapse/element-calling-config.yaml <>>>>>> 5bee5ad99bb7890df011d88e9928b6944c3565f8 url_preview_enabled = true; group_unread_count_by_room = false; encryption_enabled_by_default_for_room_type = "invite";