{ config, lib, pkgs, self, ... }: let laplace = pkgs.callPackage ./package.nix { }; in { systemd.services.laplace = { description = "laplace webrtc screen sharing"; wantedBy = [ "multi-user.target" ]; after = [ "network.target" ]; serviceConfig = { Type = "simple"; ExecStart = "${laplace}/bin/laplace -tls=false -addr=10.10.0.1:3080"; WorkingDirectory = "${laplace}/share/laplace"; }; }; services.nginx.virtualHosts."stream.vapor.systems" = self.lib.nginx.proxyDomain "vapor.systems" "http://10.10.0.1:3080"; security.acme.certs = { "vapor.systems" = { extraDomainNames = [ "*.vapor.systems" ]; }; }; }