summary refs log tree commit diff
path: root/pkgs/development/interpreters/supercollider/default.nix
blob: 59fb9268372c6056679f5721fbb05f7299bb4b3e (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
{ stdenv, fetchurl, cmake, pkgconfig
, jackaudio, libsndfile, fftw, curl
, libXt, qt, readline
, useSCEL ? false, emacs
}:
  
let optional = stdenv.lib.optional; in

stdenv.mkDerivation rec {  
  name = "supercollider-3.6.6";

  meta = {
    description = "Programming language for real time audio synthesis";
    homepage = "http://supercollider.sourceforge.net/";
    license = stdenv.lib.licenses.gpl3Plus;
    platforms = stdenv.lib.platforms.linux;
  };

  src = fetchurl {
    url = "mirror://sourceforge/supercollider/Source/3.6/SuperCollider-3.6.6-Source.tar.bz2";
    sha256 = "11khrv6jchs0vv0lv43am8lp0x1rr3h6l2xj9dmwrxcpdayfbalr";
  };

  # QGtkStyle unavailable
  patchPhase = ''
    substituteInPlace editors/sc-ide/widgets/code_editor/autocompleter.cpp \
      --replace Q_WS_X11 Q_GTK_STYLE
  '';

  cmakeFlags = ''
    -DSC_WII=OFF
    -DSC_EL=${if useSCEL then "ON" else "OFF"} 
  '';

  nativeBuildInputs = [ cmake pkgconfig ];

  buildInputs = [ 
    jackaudio libsndfile fftw curl libXt qt readline ]
    ++ optional useSCEL emacs;
}