diff options
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/rnnoise-plugin')
-rw-r--r-- | nixpkgs/pkgs/development/libraries/rnnoise-plugin/default.nix | 61 | ||||
-rw-r--r-- | nixpkgs/pkgs/development/libraries/rnnoise-plugin/disable-ubsan.patch | 14 |
2 files changed, 75 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/rnnoise-plugin/default.nix b/nixpkgs/pkgs/development/libraries/rnnoise-plugin/default.nix new file mode 100644 index 000000000000..d5f5268ac8eb --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/rnnoise-plugin/default.nix @@ -0,0 +1,61 @@ +{ lib +, stdenv +, cmake +, fetchFromGitHub +, freetype +, gtk3-x11 +, mount +, pcre +, pkg-config +, webkitgtk +, xorg +, llvmPackages +, WebKit +, MetalKit +, CoreAudioKit +, simd +}: +stdenv.mkDerivation rec { + pname = "rnnoise-plugin"; + version = "1.03"; + + src = fetchFromGitHub { + owner = "werman"; + repo = "noise-suppression-for-voice"; + rev = "v${version}"; + sha256 = "sha256-1DgrpGYF7G5Zr9vbgtKm/Yv0HSdI7LrFYPSGKYNnNDQ="; + }; + + nativeBuildInputs = [ cmake pkg-config ]; + + patches = lib.optionals stdenv.isDarwin [ + # Ubsan seems to be broken on aarch64-darwin, it produces linker errors similar to https://github.com/NixOS/nixpkgs/issues/140751 + ./disable-ubsan.patch + ]; + + buildInputs = + [ + freetype + gtk3-x11 + pcre + xorg.libX11 + xorg.libXrandr + ] ++ lib.optionals stdenv.isLinux [ + webkitgtk + ] ++ lib.optionals stdenv.isDarwin [ + WebKit + MetalKit + CoreAudioKit + simd + ]; + + cmakeFlags = [ "-DCMAKE_BUILD_TYPE=Release" ]; + + meta = with lib; { + description = "A real-time noise suppression plugin for voice based on Xiph's RNNoise"; + homepage = "https://github.com/werman/noise-suppression-for-voice"; + license = licenses.gpl3; + platforms = platforms.all; + maintainers = with maintainers; [ panaeon henrikolsson sciencentistguy ]; + }; +} diff --git a/nixpkgs/pkgs/development/libraries/rnnoise-plugin/disable-ubsan.patch b/nixpkgs/pkgs/development/libraries/rnnoise-plugin/disable-ubsan.patch new file mode 100644 index 000000000000..e2c4819d141f --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/rnnoise-plugin/disable-ubsan.patch @@ -0,0 +1,14 @@ +diff --git a/src/common/CMakeLists.txt b/src/common/CMakeLists.txt +index 4c2300e..273d76e 100644 +--- a/src/common/CMakeLists.txt ++++ b/src/common/CMakeLists.txt +@@ -33,8 +33,6 @@ if (BUILD_TESTS) + $<BUILD_INTERFACE:${CMAKE_SOURCE_DIR}/external/catch2> + $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>) + target_link_libraries(common_plugin_tests PRIVATE ${LIBRARIES}) +- target_compile_options(common_plugin_tests PRIVATE -fsanitize=undefined) +- target_link_options(common_plugin_tests PRIVATE -fsanitize=undefined) + + include(CTest) + include(Catch) + |