{ config, pkgs, ... }: { imports = [ ./hardware-configuration.nix ../../configuration/common ../../configuration/proxmox-vm (import (fetchGit { url = https://bitbucket.fem.tu-ilmenau.de/scm/~clerie/workadventure-nix-modules.git; ref = "main"; rev = "96c7a69f52154b8bb88dfaee8926a13da0759503"; })) ]; nixpkgs.overlays = [ (import (fetchGit { url = https://bitbucket.fem.tu-ilmenau.de/scm/~clerie/workadventure-nix.git; ref = "one-for-all"; rev = "9c08f674a62e29c33fa566df02df0cea37fb71ba"; } + "/overlay.nix")) ]; boot.loader.grub.enable = true; boot.loader.grub.version = 2; boot.loader.grub.device = "/dev/vda"; networking.hostName = "world-dev"; networking.useDHCP = false; networking.interfaces.ens18.ipv6.addresses = [ { address = "2001:638:904:ffcb::b"; prefixLength = 64; } ]; networking.interfaces.ens19.ipv4.addresses = [ { address = "192.168.10.34"; prefixLength = 24; } ]; networking.defaultGateway = { address = "192.168.10.1"; interface = "ens19"; }; networking.defaultGateway6 = { address = "2001:638:904:ffcb::1"; interface = "ens18"; }; networking.nameservers = [ "2001:638:904:ffcc::3" "2001:638:904:ffcc::4" "141.24.40.3" "141.24.40.4" ]; services.nginx.enable = true; services.nginx.virtualHosts."world.clerie.de" = { enableACME = true; forceSSL = true; root = (pkgs.workadventure-xce.front.override { environment = { API_URL = "world.clerie.de/pusher"; JITSI_URL = "jitsi.fem.tu-ilmenau.de"; TURN_SERVER="turn:turn.fem-net.de:3478,turns:turn.fem-net.de:5349"; TURN_USER="workadventure"; TURN_PASSWORD="workadventure"; }; }) + "/dist"; locations."/_/" = { tryFiles = "/index.html =404"; }; locations."/pusher/" = { proxyPass = "http://localhost:8080/"; }; }; networking.firewall.allowedTCPPorts = [ 80 443 ]; services.workadventure-core.back."world.clerie.de" = { enable = true; httpPort = 8081; grpcPort = 50051; package = pkgs.workadventure-xce.back; }; services.workadventure-core.pusher."world.clerie.de" = { enable = true; apiUrl = "localhost:50051"; httpPort = 8080; package = pkgs.workadventure-xce.pusher; }; system.stateVersion = "21.03"; }