{ stdenv, lib, buildGoPackage, fetchFromGitHub, easyjson }: buildGoPackage rec { pname = "nextcloud-spreed-signaling"; version = "0.3.0"; goPackagePath = "github.com/strukturag/nextcloud-spreed-signaling"; subPackages = [ "client" "server" "proxy" ]; src = fetchFromGitHub { owner = "strukturag"; repo = pname; rev = "v${version}"; sha256 = "sha256-oKH9rpZa+CGnqgQD6Wa1KPi26ePrGZJzz9WXOauNs+U="; }; nativeBuildInputs = [ easyjson ]; goDeps = ./deps.nix; preBuild = '' easyjson -all go/src/github.com/strukturag/nextcloud-spreed-signaling/{api_signaling,api_backend,api_proxy,natsclient,room}.go ''; meta = with lib; { description = "Standalone signaling server for Nextcloud Talk"; homepage = src.meta.homepage; license = licenses.agpl3; maintainers = with maintainers; [ aw ]; }; }