diff --git a/pkgs/servers/webmetro/default.nix b/pkgs/servers/webmetro/default.nix new file mode 100644 index 000000000000..45369f5f5a06 --- /dev/null +++ b/pkgs/servers/webmetro/default.nix @@ -0,0 +1,31 @@ +{ stdenv, fetchFromGitHub, rustPlatform }: + +rustPlatform.buildRustPackage rec { + pname = "webmetro"; + name = "${pname}-${version}"; + version = "unstable-20180426"; + + src = fetchFromGitHub { + owner = "Tangent128"; + repo = pname; + rev = "4f6cc00fe647bd311d00a8a4cb53ab08f20a04f9"; + sha256 = "1n2c7ygs8qsd5zgii6fqqcwg427bsij082bg4ijnzkq5630dx651"; + }; + + cargoSha256 = "0drf331qic1gf58j7izwp0q2l4w0dyrhr19rd2y5k43cw4m1nq59"; + + meta = with stdenv.lib; { + description = "Simple relay server for broadcasting a WebM stream"; + longDescription = '' + Webmetro is a simple relay server for broadcasting a WebM stream + from one uploader to many downloaders, via HTTP. + The initialization segment is remembered, so that viewers can join + mid-stream. Cluster timestamps are rewritten to be monotonic, so multiple + (compatibly-encoded) webm files can be chained together without + clients needing to reconnect. + ''; + license = with licenses; [ mit ]; + maintainers = with maintainers; [ leenaars ]; + platforms = platforms.all; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 40c67171503f..17613fbc67da 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -13073,6 +13073,8 @@ with pkgs; wallabag = callPackage ../servers/web-apps/wallabag { }; + webmetro = callPackage ../servers/webmetro { }; + winstone = callPackage ../servers/http/winstone { }; xinetd = callPackage ../servers/xinetd { };