depot/third_party/nixpkgs/pkgs/by-name/op/opusfile/package.nix

51 lines
1.3 KiB
Nix

{
lib,
stdenv,
fetchurl,
pkg-config,
openssl,
libogg,
libopus,
fetchpatch,
}:
stdenv.mkDerivation rec {
pname = "opusfile";
version = "0.12";
src = fetchurl {
url = "http://downloads.xiph.org/releases/opus/opusfile-${version}.tar.gz";
sha256 = "02smwc5ah8nb3a67mnkjzqmrzk43j356hgj2a97s9midq40qd38i";
};
nativeBuildInputs = [ pkg-config ];
buildInputs = [
openssl
libogg
];
propagatedBuildInputs = [ libopus ];
outputs = [
"out"
"dev"
];
patches =
[
./include-multistream.patch
(fetchpatch {
name = "CVE-2022-47021.patch";
url = "https://github.com/xiph/opusfile/commit/0a4cd796df5b030cb866f3f4a5e41a4b92caddf5.patch";
sha256 = "sha256-XThI/ys5caB+OncFVfxm5IsvQPy1MbLQKwIlYjPvTJQ=";
})
]
# fixes problem with openssl 1.1 dependency
# see https://github.com/xiph/opusfile/issues/13
++ lib.optionals stdenv.hostPlatform.isWindows [ ./disable-cert-store.patch ];
configureFlags = [ "--disable-examples" ];
meta = with lib; {
description = "High-level API for decoding and seeking in .opus files";
homepage = "https://www.opus-codec.org/";
license = licenses.bsd3;
platforms = platforms.all;
maintainers = with maintainers; [ taeer ];
};
}