{ faust, baseName ? "faust2sc", supercollider, makeWrapper, python3, stdenv, }@args: let faustDefaults = faust.faust2ApplBase ( args // { baseName = "${baseName}.py"; } ); in stdenv.mkDerivation ( faustDefaults // { nativeBuildInputs = [ makeWrapper ]; propagatedBuildInputs = [ python3 faust supercollider ]; postInstall = '' mv "$out/bin/${baseName}.py" "$out"/bin/${baseName} ''; postFixup = '' wrapProgram "$out"/bin/${baseName} \ --append-flags "--import-dir ${faust}/share/faust" \ --append-flags "--architecture-dir ${faust}/share/faust" \ --append-flags "--architecture-dir ${faust}/include" \ --append-flags "-p ${supercollider}" \ --prefix PATH : "$PATH" ''; } )