anvil-editor: init at 0.4
[NixPkgs.git] / pkgs / applications / audio / fmit / default.nix
blobc22fe3ab0977ae914e9217cbfaaad1c98abcb22d
1 { lib, mkDerivation, fetchFromGitHub, fftw, qtbase, qtmultimedia, qmake, itstool, wrapQtAppsHook
2 , alsaSupport ? true, alsa-lib ? null
3 , jackSupport ? false, libjack2 ? null
4 , portaudioSupport ? false, portaudio ? null }:
6 assert alsaSupport -> alsa-lib != null;
7 assert jackSupport -> libjack2 != null;
8 assert portaudioSupport -> portaudio != null;
10 mkDerivation rec {
11   pname = "fmit";
12   version = "1.2.14";
14   src = fetchFromGitHub {
15     owner = "gillesdegottex";
16     repo = "fmit";
17     rev = "v${version}";
18     sha256 = "1q062pfwz2vr9hbfn29fv54ip3jqfd9r99nhpr8w7mn1csy38azx";
19   };
21   nativeBuildInputs = [ qmake itstool wrapQtAppsHook ];
22   buildInputs = [ fftw qtbase qtmultimedia ]
23     ++ lib.optionals alsaSupport [ alsa-lib ]
24     ++ lib.optionals jackSupport [ libjack2 ]
25     ++ lib.optionals portaudioSupport [ portaudio ];
27   postPatch = ''
28     substituteInPlace fmit.pro --replace '$$FMITVERSIONGITPRO' '${version}'
29   '';
31   preConfigure = ''
32     qmakeFlags="$qmakeFlags \
33       CONFIG+=${lib.optionalString alsaSupport "acs_alsa"} \
34       CONFIG+=${lib.optionalString jackSupport "acs_jack"} \
35       CONFIG+=${lib.optionalString portaudioSupport "acs_portaudio"} \
36       PREFIXSHORTCUT=$out"
37   '';
39   meta = with lib; {
40     description = "Free Musical Instrument Tuner";
41     longDescription = ''
42       FMIT is a graphical utility for tuning musical instruments, with error
43       and volume history, and advanced features.
44     '';
45     homepage = "http://gillesdegottex.github.io/fmit/";
46     license = licenses.gpl3Plus;
47     maintainers = with maintainers; [ orivej ];
48     platforms = platforms.linux;
49   };