anvil-editor: init at 0.4
[NixPkgs.git] / pkgs / applications / audio / puredata / default.nix
blobf4206cb0ea7ccdc777181c96eb9787a3424da5c8
1 { lib
2 , stdenv
3 , fetchurl
4 , autoreconfHook
5 , gettext
6 , makeWrapper
7 , alsa-lib
8 , libjack2
9 , tk
10 , fftw
11 , portaudio
14 stdenv.mkDerivation rec {
15   pname = "puredata";
16   version = "0.54-1";
18   src = fetchurl {
19     url = "http://msp.ucsd.edu/Software/pd-${version}.src.tar.gz";
20     hash = "sha256-hcPUvTYgtAHntdWEeHoFIIKylMTE7us1g9dwnZP9BMI=";
21   };
23   nativeBuildInputs = [ autoreconfHook gettext makeWrapper ];
25   buildInputs = [
26     fftw
27     libjack2
28   ] ++ lib.optionals stdenv.hostPlatform.isLinux [
29     alsa-lib
30   ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
31     portaudio
32   ];
34   configureFlags = [
35     "--enable-universal"
36     "--enable-fftw"
37     "--enable-jack"
38   ] ++ lib.optionals stdenv.hostPlatform.isLinux [
39     "--enable-alsa"
40   ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
41     "--enable-portaudio"
42     "--without-local-portaudio"
43     "--disable-jack-framework"
44     "--with-wish=${tk}/bin/wish8.6"
45   ];
47   postInstall = ''
48     wrapProgram $out/bin/pd --prefix PATH : ${lib.makeBinPath [ tk ]}
49   '';
51   meta = with lib; {
52     description = ''A real-time graphical programming environment for audio, video, and graphical processing'';
53     homepage = "http://puredata.info";
54     license = licenses.bsd3;
55     platforms = platforms.linux ++ platforms.darwin;
56     maintainers = with maintainers; [ carlthome ];
57     mainProgram = "pd";
58     changelog = "https://msp.puredata.info/Pd_documentation/x5.htm#s1";
59   };