1{
2 lib,
3 stdenv,
4 fetchFromGitHub,
5 autoreconfHook,
6 pkg-config,
7 qttools,
8 which,
9 alsa-lib,
10 libjack2,
11 liblo,
12 qtbase,
13 wrapQtAppsHook,
14}:
15
16stdenv.mkDerivation rec {
17 pname = "seq66";
18 version = "0.99.20";
19
20 src = fetchFromGitHub {
21 owner = "ahlstromcj";
22 repo = "seq66";
23 rev = version;
24 hash = "sha256-YFSvwviC2f5PJD91jcmLuqf+kDqDeMhXNXD3n45kJL8=";
25 };
26
27 nativeBuildInputs = [
28 autoreconfHook
29 pkg-config
30 qttools
31 which
32 wrapQtAppsHook
33 ];
34
35 buildInputs = [
36 alsa-lib
37 libjack2
38 liblo
39 qtbase
40 ];
41
42 postPatch = ''
43 for d in libseq66/src libsessions/include libsessions/src seq_qt5/src seq_rtmidi/src; do
44 substituteInPlace "$d/Makefile.am" --replace-fail '$(git_info)' '${version}'
45 done
46 '';
47
48 enableParallelBuilding = true;
49
50 meta = with lib; {
51 homepage = "https://github.com/ahlstromcj/seq66";
52 description = "Loop based midi sequencer with Qt GUI derived from seq24 and sequencer64";
53 license = licenses.gpl2Plus;
54 maintainers = with maintainers; [ orivej ];
55 mainProgram = "qseq66";
56 platforms = platforms.linux;
57 };
58}