-
-
Notifications
You must be signed in to change notification settings - Fork 14.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Package request: python3Packages.pedalboard #351988
Labels
Comments
hakan-demirli
added
the
0.kind: packaging request
Request for a new package to be added
label
Oct 28, 2024
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
Works on nixos-unstable: {
pkgs,
lib,
python3,
fetchgit,
fetchFromGitHub,
stdenv,
libcxx,
darwin,
pcre,
}:
let
# Pedalboard still uses JUCE 6 as a submodule.
juce6 = pkgs.juce.overrideAttrs (attrs: {
version = "6.1.4";
patches = attrs.patches or [ ] ++ [ ./juce.patch ];
src = fetchFromGitHub {
owner = "juce-framework";
repo = "juce";
rev = "ddaa09110392a4419fecbb6d3022bede89b7e841";
hash = "sha256-XXG5BHLjYHFX4SE+GR0p+4p3lpvQZVRyUv080eRmvtA=";
};
});
in
python3.pkgs.buildPythonPackage rec {
pname = "pedalboard";
version = "0.8.3";
pyproject = true;
NIX_CFLAGS_COMPILE = lib.optionals stdenv.isDarwin [
"-I${lib.getDev libcxx}/include/c++/v1"
"-I${juce6}/share/juce/modules"
"-I${juce6}/share/juce/modules/juce_audio_processors/format_types/VST3_SDK"
];
src = fetchgit {
url = "https://github.com/spotify/pedalboard.git";
rev = "v${version}";
hash = "sha256-kp2PJ3dadfbsxtAogYnwc0dzfEbmET/tIUP0M9B0Udg=";
fetchSubmodules = true;
};
patches = [ ./juce.patch ];
patchFlags = [
"-p1"
"-d"
"JUCE"
];
nativeBuildInputs = with python3.pkgs; [
pkgs.pkg-config-unwrapped
pkgs.python3Packages.pkgconfig
setuptools
wheel
pybind11
juce6
pcre
pkgs.gnumake
pkgs.xorg.libX11.dev
pkgs.xorg.libXft
pkgs.xorg.libXinerama
pkgs.xorg.xrandr
pkgs.xorg.libXrandr
pkgs.xorg.libxshmfence
pkgs.xorg.libXext
pkgs.xorg.xcursorgen
pkgs.xorg.libXcursor
(pkgs.python3Packages.freetype-py.overridePythonAttrs (old: {
propagatedBuildInputs = old.propagatedBuildInputs ++ [
pkgs.pkg-config-unwrapped
pkgs.freetype
pkgs.libsForQt5.libopenshot-audio
juce6
pkgs.gnumake
pkgs.xorg.libX11.dev
pkgs.xorg.libXft
pkgs.xorg.libXinerama
pkgs.xorg.xrandr
pkgs.xorg.libXrandr
pkgs.xorg.libxshmfence
pkgs.xorg.libXext
pkgs.xorg.xcursorgen
pkgs.xorg.libXcursor
];
}))
];
propagatedBuildInputs =
with python3.pkgs;
[
pkgs.pkg-config-unwrapped
pkgs.python3Packages.pkgconfig
numpy
setuptools
wheel
pybind11
juce6
pkgs.freetype
juce6
pkgs.libsForQt5.libopenshot-audio
pkgs.gnumake
pkgs.xorg.libX11.dev
pkgs.xorg.libXft
pkgs.xorg.libXinerama
pkgs.xorg.xrandr
pkgs.xorg.libXrandr
pkgs.xorg.libxshmfence
pkgs.xorg.libXext
pkgs.xorg.xcursorgen
pkgs.xorg.libXcursor
]
++ lib.optionals stdenv.isDarwin (
with darwin.apple_sdk.frameworks;
[
Accelerate
AudioToolbox
AudioUnit
Carbon
Cocoa
CoreAudio
CoreAudioKit
CoreServices
DiscRecording
MetalKit
WebKit
]
);
pythonImportsCheck = [ "pedalboard" ];
meta = with lib; {
description = "A Python library for working with audio";
homepage = "https://github.com/spotify/pedalboard";
license = licenses.gpl3Only;
maintainers = with maintainers; [ carlthome ];
mainProgram = "pedalboard";
};
} diff --git a/modules/juce_dsp/frequency/juce_Windowing.cpp b/modules/juce_dsp/frequency/juce_Windowing.cpp
index 13097817e..f5fcf62a8 100644
--- a/modules/juce_dsp/frequency/juce_Windowing.cpp
+++ b/modules/juce_dsp/frequency/juce_Windowing.cpp
@@ -23,6 +23,8 @@
==============================================================================
*/
+#include <utility>
+
namespace juce
{
namespace dsp
diff --git a/modules/juce_dsp/frequency/juce_Windowing.h b/modules/juce_dsp/frequency/juce_Windowing.h
index 2aca0ad20..5ac5c0f2a 100644
--- a/modules/juce_dsp/frequency/juce_Windowing.h
+++ b/modules/juce_dsp/frequency/juce_Windowing.h
@@ -23,6 +23,8 @@
==============================================================================
*/
+#include <utility>
+
namespace juce
{
namespace dsp
diff --git a/modules/juce_gui_basics/misc/juce_DropShadower.cpp b/modules/juce_gui_basics/misc/juce_DropShadower.cpp
index cbd05cc7f..f9a26693d 100644
--- a/modules/juce_gui_basics/misc/juce_DropShadower.cpp
+++ b/modules/juce_gui_basics/misc/juce_DropShadower.cpp
@@ -22,6 +22,8 @@
==============================================================================
*/
+#include <utility>
+
namespace juce
{
diff --git a/modules/juce_gui_basics/misc/juce_DropShadower.h b/modules/juce_gui_basics/misc/juce_DropShadower.h
index 38babb5a3..4c9540fec 100644
--- a/modules/juce_gui_basics/misc/juce_DropShadower.h
+++ b/modules/juce_gui_basics/misc/juce_DropShadower.h
@@ -23,6 +23,8 @@
==============================================================================
*/
+#include <utility>
+
namespace juce
{
diff --git a/modules/juce_gui_basics/native/juce_linux_Windowing.cpp b/modules/juce_gui_basics/native/juce_linux_Windowing.cpp
index e81cc47dd..9faf76ffc 100644
--- a/modules/juce_gui_basics/native/juce_linux_Windowing.cpp
+++ b/modules/juce_gui_basics/native/juce_linux_Windowing.cpp
@@ -23,6 +23,8 @@
==============================================================================
*/
+#include <utility>
+
namespace juce
{
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
Project description
pedalboard is a Python library for working with audio: reading, writing, rendering, adding effects, and more. It supports most popular audio file formats and a number of common audio effects out of the box, and also allows the use of VST3® and Audio Unit formats for loading third-party software instruments and effects.
Metadata
Add a 👍 reaction to issues you find important.
The text was updated successfully, but these errors were encountered: