diff options
Diffstat (limited to 'nixpkgs/pkgs/applications/audio/freewheeling/default.nix')
-rw-r--r-- | nixpkgs/pkgs/applications/audio/freewheeling/default.nix | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/applications/audio/freewheeling/default.nix b/nixpkgs/pkgs/applications/audio/freewheeling/default.nix new file mode 100644 index 000000000000..75e44d8c4fad --- /dev/null +++ b/nixpkgs/pkgs/applications/audio/freewheeling/default.nix @@ -0,0 +1,52 @@ +{ lib, stdenv, fetchFromGitHub, pkg-config, autoreconfHook, gnutls, freetype +, SDL, SDL_gfx, SDL_ttf, liblo, libxml2, alsa-lib, libjack2, libvorbis +, libSM, libsndfile, libogg, libtool +}: +let + makeSDLFlags = map (p: "-I${lib.getDev p}/include/SDL"); +in + +stdenv.mkDerivation rec { + pname = "freewheeling"; + version = "0.6.6"; + + src = fetchFromGitHub { + owner = "free-wheeling"; + repo = "freewheeling"; + rev = "v${version}"; + sha256 = "1xff5whr02cixihgd257dc70hnyf22j3zamvhsvg4lp7zq9l2in4"; + }; + + nativeBuildInputs = [ pkg-config autoreconfHook libtool ]; + buildInputs = [ + freetype SDL SDL_gfx SDL_ttf + liblo libxml2 libjack2 alsa-lib libvorbis libsndfile libogg libSM + (gnutls.overrideAttrs (oldAttrs: { + configureFlags = oldAttrs.configureFlags ++ [ "--enable-openssl-compatibility" ]; + })) + ]; + NIX_CFLAGS_COMPILE = toString + (makeSDLFlags [ SDL SDL_ttf SDL_gfx ] ++ [ "-I${libxml2.dev}/include/libxml2" ]); + + hardeningDisable = [ "format" ]; + + meta = { + description = "A live looping instrument with JACK and MIDI support"; + longDescription = '' + Freewheeling allows us to build repetitive grooves + by sampling and directing loops from within spirited improvisation. + + It works because, down to the core, it's built around + improv. We leave mice and menus, and dive into our own process + of making sound. + + Freewheeling runs under macOS and Linux, and is open source + software, released under the GNU GPL license. + '' ; + + homepage = "http://freewheeling.sourceforge.net"; + license = lib.licenses.gpl2; + maintainers = [ lib.maintainers.sepi ]; + platforms = lib.platforms.linux; + }; +} |