1{
2 lib,
3 mkDerivation,
4 fetchFromGitHub,
5 pkg-config,
6 cmake,
7 alsa-lib,
8 libjack2,
9 dbus,
10 qtbase,
11 qttools,
12 qtx11extras,
13 # Enable jack session support
14 jackSession ? false,
15}:
16
17mkDerivation rec {
18 version = "0.9.91";
19 pname = "qjackctl";
20
21 # some dependencies such as killall have to be installed additionally
22
23 src = fetchFromGitHub {
24 owner = "rncbc";
25 repo = "qjackctl";
26 rev = "${pname}_${lib.replaceStrings [ "." ] [ "_" ] version}";
27 sha256 = "sha256-YfdRyylU/ktFvsh18FjpnG9MkV1HxHJBhRnHWQ7I+hY=";
28 };
29
30 buildInputs = [
31 qtbase
32 qtx11extras
33 qttools
34 alsa-lib
35 libjack2
36 dbus
37 ];
38
39 nativeBuildInputs = [
40 cmake
41 pkg-config
42 ];
43
44 cmakeFlags = [
45 "-DCONFIG_JACK_VERSION=1"
46 "-DCONFIG_JACK_SESSION=${toString jackSession}"
47 ];
48
49 meta = with lib; {
50 description = "Qt application to control the JACK sound server daemon";
51 mainProgram = "qjackctl";
52 homepage = "https://github.com/rncbc/qjackctl";
53 license = licenses.gpl2Plus;
54 maintainers = [ ];
55 platforms = platforms.linux;
56 };
57}