nixpkgs/pkgs/applications/audio/fluidsynth/default.nix
2023-07-10 18:58:02 +01:00

47 lines
1.5 KiB
Nix

{ stdenv, lib, fetchFromGitHub, fetchpatch, buildPackages, pkg-config, cmake
, alsa-lib, glib, libjack2, libsndfile, libpulseaudio
, AppKit, AudioUnit, CoreAudio, CoreMIDI, CoreServices
}:
stdenv.mkDerivation rec {
pname = "fluidsynth";
version = "2.3.3";
src = fetchFromGitHub {
owner = "FluidSynth";
repo = "fluidsynth";
rev = "v${version}";
sha256 = "sha256-RqhlpvMbRSwdcY2uuFAdJnihN3aObcLVMuvCZ294dgo=";
};
patches = [
# Fixes bad CMAKE_INSTALL_PREFIX + CMAKE_INSTALL_LIBDIR concatenation for Darwin install name dir
# Remove when PR merged & in release
(fetchpatch {
name = "0001-Fix-incorrect-way-of-turning-CMAKE_INSTALL_LIBDIR-absolute.patch";
url = "https://github.com/FluidSynth/fluidsynth/pull/1261/commits/03cd38dd909fc24aa39553d869afbb4024416de8.patch";
hash = "sha256-nV+MbFttnbNBO4zWnPLpnnEuoiESkV9BGFlUS9tQQfk=";
})
];
outputs = [ "out" "dev" "man" ];
nativeBuildInputs = [ buildPackages.stdenv.cc pkg-config cmake ];
buildInputs = [ glib libsndfile libjack2 ]
++ lib.optionals stdenv.isLinux [ alsa-lib libpulseaudio ]
++ lib.optionals stdenv.isDarwin [ AppKit AudioUnit CoreAudio CoreMIDI CoreServices ];
cmakeFlags = [
"-Denable-framework=off"
];
meta = with lib; {
description = "Real-time software synthesizer based on the SoundFont 2 specifications";
homepage = "https://www.fluidsynth.org";
license = licenses.lgpl21Plus;
maintainers = with maintainers; [ goibhniu lovek323 ];
platforms = platforms.unix;
};
}