Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at devShellTools-shell 61 lines 1.6 kB view raw
1{ 2 lib, 3 stdenv, 4 fetchFromGitHub, 5 gtkmm2, 6 lv2, 7 lvtk, 8 pkg-config, 9}: 10stdenv.mkDerivation { 11 pname = "fmsynth-unstable"; 12 version = "2015-02-07"; 13 src = fetchFromGitHub { 14 owner = "Themaister"; 15 repo = "libfmsynth"; 16 rev = "9ffa1d2fea287f1209b210d2dbde2f0f60f37176"; 17 sha256 = "1bk0bpr069hzx2508rgfbwpxiqgr7dmdkhqdywmd2i4rmibgrm1q"; 18 }; 19 20 nativeBuildInputs = [ pkg-config ]; 21 buildInputs = [ 22 gtkmm2 23 lv2 24 lvtk 25 ]; 26 27 buildPhase = '' 28 cd lv2 29 substituteInPlace GNUmakefile --replace "/usr/lib/lv2" "$out/lib/lv2" 30 make SIMD=0 31 ''; 32 33 preInstall = "mkdir -p $out/lib/lv2"; 34 35 meta = { 36 description = "Flexible 8 operator FM synthesizer for LV2"; 37 longDescription = '' 38 The synth core supports: 39 40 - Arbitrary amounts of polyphony 41 - 8 operators 42 - No fixed "algorithms" 43 - Arbitrary modulation, every operator can modulate any other operator, even itself 44 - Arbitrary carrier selection, every operator can be a carrier 45 - Sine LFO, separate LFO per voice, modulates amplitude and frequency of operators 46 - Envelope per operator 47 - Carrier stereo panning 48 - Velocity sensitivity per operator 49 - Mod wheel sensitivity per operator 50 - Pitch bend 51 - Keyboard scaling 52 - Sustain, sustained keys can overlap each other for a very rich sound 53 - Full floating point implementation optimized for SIMD 54 - Hard real-time constraints 55 ''; 56 homepage = "https://github.com/Themaister/libfmsynth"; 57 license = lib.licenses.mit; 58 maintainers = [ lib.maintainers.magnetophon ]; 59 platforms = lib.platforms.linux; 60 }; 61}