btrbk: add mainProgram
[NixPkgs.git] / pkgs / by-name / bu / buzztrax / package.nix
blob30961d5b320aba9697da10c14d1530cf70c9b03b
1 { lib
2 , stdenv
3 , fetchFromGitHub
4 , autoreconfHook
5 , gtk-doc
6 , intltool
7 , itstool
8 , libtool
9 , pkg-config
10 , wrapGAppsHook3
11 , yelp-tools
12 , clutter-gtk
13 , gst_all_1
14 , glib
15 , gtk2
16 , libgsf
17 , libxml2
18 , fluidsynth
19 , orc
22 stdenv.mkDerivation {
23   pname = "buzztrax";
24   version = "unstable-2022-01-26";
26   src = fetchFromGitHub {
27     owner = "Buzztrax";
28     repo = "buzztrax";
29     rev = "833287c6a06bddc922cd346d6f0fcec7a882aee5";
30     hash = "sha256-iI6m+zBWDDBjmeuU9Nm4aIbEKfaPe36APPktdjznQpU=";
31   };
33   postPatch = ''
34     touch AUTHORS
35   '';
37   nativeBuildInputs = [
38     autoreconfHook
39     gtk-doc
40     intltool
41     itstool
42     libtool
43     pkg-config
44     wrapGAppsHook3
45     yelp-tools
46   ];
48   buildInputs = [
49     clutter-gtk
50     gst_all_1.gstreamer
51     gst_all_1.gst-plugins-base
52     gst_all_1.gst-plugins-good
53     glib
54     gtk2
55     libgsf
56     libxml2
57     # optional packages
58     fluidsynth
59     gst_all_1.gst-plugins-bad
60     gst_all_1.gst-plugins-ugly
61     orc
62   ];
64   # 'g_memdup' is deprecated: Use 'g_memdup2' instead
65   env.NIX_CFLAGS_COMPILE = "-Wno-error=deprecated-declarations"
66     # Suppress incompatible function pointer error in clang due to libxml2 2.12 const changes
67     + lib.optionalString stdenv.cc.isClang " -Wno-error=incompatible-function-pointer-types";
69   meta = with lib; {
70     description = "Buzztrax is a modular music composer for Linux";
71     homepage = "https://www.buzztrax.org/";
72     license = licenses.lgpl21Plus;
73     maintainers = [ maintainers.bendlas ];
74     platforms = platforms.unix;
75   };