anchor.diff:  
     buildInputs = [ fftw freeglut qt5.base qt5.multimedia ]
       ++ stdenv.lib.optional alsaSupport [ alsaLib ]
  -    ++ stdenv.lib.optional jackSupport [ libjack2 ];
  +    ++ stdenv.lib.optional jackSupport [ libjack2 ]
  +    ++ stdenv.lib.optional portaudioSupport [ portaudio ];
   
     configurePhase = ''
       mkdir build
  
positive.code:     qmake \
        CONFIG+=${stdenv.lib.optionalString alsaSupport "acs_alsa"} \
        CONFIG+=${stdenv.lib.optionalString jackSupport "acs_jack"} \
        PREFIX="$out" PREFIXSHORTCUT="$out" \
        ../fmit.pro
    '';
  
negative.code: { stdenv, fetchFromGitHub, fftw, freeglut, qt5
  , alsaSupport ? true, alsaLib ? null
  , jackSupport ? false, libjack2 ? null
  , portaudioSupport ? false, portaudio ? null }:
  
  assert alsaSupport -> alsaLib != null;
  assert jackSupport -> libjack2 != null;
  assert portaudioSupport -> portaudio != null;
  
  let version = "1.0.8"; in
  stdenv.mkDerivation {
  