gurobi: 12.0.0 -> 12.0.1 (#377852)
[NixPkgs.git] / pkgs / by-name / fr / freewheeling / package.nix
blob039604733b5635279c0ea0a414bbedbfcfa8e8c1
2   lib,
3   stdenv,
4   fetchFromGitHub,
5   pkg-config,
6   autoreconfHook,
7   gnutls,
8   freetype,
9   fluidsynth,
10   SDL,
11   SDL_gfx,
12   SDL_ttf,
13   liblo,
14   libxml2,
15   alsa-lib,
16   libjack2,
17   libvorbis,
18   libSM,
19   libsndfile,
20   libogg,
21   libtool,
23 let
24   makeSDLFlags = map (p: "-I${lib.getDev p}/include/SDL");
27 stdenv.mkDerivation rec {
28   pname = "freewheeling";
29   version = "0.6.6";
31   src = fetchFromGitHub {
32     owner = "free-wheeling";
33     repo = "freewheeling";
34     rev = "v${version}";
35     sha256 = "1xff5whr02cixihgd257dc70hnyf22j3zamvhsvg4lp7zq9l2in4";
36   };
38   nativeBuildInputs = [
39     pkg-config
40     autoreconfHook
41     libtool
42   ];
43   buildInputs = [
44     freetype
45     fluidsynth
46     SDL
47     SDL_gfx
48     SDL_ttf
49     liblo
50     libxml2
51     libjack2
52     alsa-lib
53     libvorbis
54     libsndfile
55     libogg
56     libSM
57     (gnutls.overrideAttrs (oldAttrs: {
58       configureFlags = oldAttrs.configureFlags ++ [ "--enable-openssl-compatibility" ];
59     }))
60   ];
61   env.NIX_CFLAGS_COMPILE = toString (
62     makeSDLFlags [
63       SDL
64       SDL_ttf
65       SDL_gfx
66     ]
67     ++ [ "-I${libxml2.dev}/include/libxml2" ]
68   );
70   hardeningDisable = [ "format" ];
72   meta = {
73     description = "Live looping instrument with JACK and MIDI support";
74     longDescription = ''
75       Freewheeling allows us to build repetitive grooves
76       by sampling and directing loops from within spirited improvisation.
78       It works because, down to the core, it's built around
79       improv. We leave mice and menus, and dive into our own process
80       of making sound.
82       Freewheeling runs under macOS and Linux, and is open source
83       software, released under the GNU GPL license.
84     '';
86     homepage = "https://freewheeling.sourceforge.net";
87     license = lib.licenses.gpl2;
88     maintainers = [ lib.maintainers.sepi ];
89     platforms = lib.platforms.linux;
90     mainProgram = "fweelin";
91   };