nixpkgs/pkgs/development/libraries/libtgvoip/default.nix
2021-07-18 18:12:20 +08:00

49 lines
1.4 KiB
Nix

{ stdenv, lib, fetchFromGitHub, fetchpatch
, pkg-config, autoreconfHook
, openssl, libopus, alsa-lib, libpulseaudio
}:
with lib;
stdenv.mkDerivation rec {
pname = "libtgvoip";
version = "unstable-2021-07-13";
src = fetchFromGitHub {
owner = "telegramdesktop";
repo = "libtgvoip";
rev = "f321e7c8cc086bac6ae06fa0934aac7d9833a310";
sha256 = "1gk5nsqhbnn1cdh83b70qr3d3v2c1bncylvgn77vvj8vnyjlmnfq";
};
# To fix the build without external webrtc:
patches = [
(fetchpatch {
# Use methods from updated webrtc.
url = "https://github.com/telegramdesktop/libtgvoip/commit/13a5fcb16b04472d808ce122abd695dbf5d206cd.patch";
sha256 = "0wapqvml3yyv5dlp2q8iih5rfvfnkngll69krhnw5xsdjy22sp7r";
revert = true;
})
(fetchpatch {
# Allow working with external webrtc.
url = "https://github.com/telegramdesktop/libtgvoip/commit/6e82b6e45664c1f80b9039256c99bebc76d34672.patch";
sha256 = "0m87ixja70vnm80a9z4gxk0yl7n64y59smczxb88lxnj6kdgih7x";
revert = true;
})
];
outputs = [ "out" "dev" ];
nativeBuildInputs = [ pkg-config autoreconfHook ];
buildInputs = [ openssl libopus alsa-lib libpulseaudio ];
enableParallelBuilding = true;
meta = {
description = "VoIP library for Telegram clients";
license = licenses.unlicense;
platforms = platforms.linux;
homepage = "https://github.com/telegramdesktop/libtgvoip";
maintainers = with maintainers; [ ilya-fedin ];
};
}