From d989f361ac129ba8830d738cb97e212d2e96fdd7 Mon Sep 17 00:00:00 2001 From: Cillian de Roiste Date: Sun, 8 Apr 2012 00:16:59 +0000 Subject: [PATCH] Updating to 0.121.3, adding optional FireWire support and replacing composableDerivation with mkDerivation svn path=/nixpkgs/trunk/; revision=33666 --- pkgs/misc/jackaudio/jack1.nix | 48 +++++++++++------------------------ 1 file changed, 15 insertions(+), 33 deletions(-) diff --git a/pkgs/misc/jackaudio/jack1.nix b/pkgs/misc/jackaudio/jack1.nix index bb11e5d5f04..540735ab810 100644 --- a/pkgs/misc/jackaudio/jack1.nix +++ b/pkgs/misc/jackaudio/jack1.nix @@ -1,44 +1,26 @@ -# Perhaps we can get some ideas from here ? http://gentoo-wiki.com/HOWTO_Jack -# still much to test but it compiles now +{ stdenv, fetchurl, pkgconfig, alsaLib +, firewireSupport ? false, ffado ? null }: -{ composableDerivation, fetchurl, pkgconfig, alsaLib }: +assert firewireSupport -> ffado != null; -let inherit (composableDerivation) edf; in +stdenv.mkDerivation rec { + name = "jack-${version}"; + version = "0.121.3"; -composableDerivation.composableDerivation {} { - name = "jack-0.120.1"; - src = fetchurl { - url = "http://jackaudio.org/downloads/jack-audio-connection-kit-0.120.1.tar.gz"; - sha256 = "02h8536c67059gq2vsl323kvy9jak9dp0syi1h58awlkbgzlg80d"; + url = "http://jackaudio.org/downloads/jack-audio-connection-kit-${version}.tar.gz"; + sha256 = "1ypa3gjwy4vmaskin0vczmmdwybckkl42wmkfabx3v5yx8yms2dp"; }; - buildInputs = [ pkgconfig ]; - - flags = - # FIXME: tidy up - edf { name = "posix-shm"; } #use POSIX shm API - // edf { name = "timestamps"; } # allow clients to use the JACK timestamp API - // edf { name = "capabilities"; } #use libcap to gain realtime scheduling priviledges - // edf { name = "oldtrans"; } #remove old transport interfaces - // edf { name = "stripped-jackd"; } #strip jack before computing its md5 sum - // edf { name = "portaudio"; } #ignore PortAudio driver - // edf { name = "coreaudio"; } #ignore CoreAudio driver - // edf { name = "oss"; } #ignore OSS driver - // edf { name = "freebob"; } #ignore FreeBob driver - // edf { name = "alsa"; enable = { buildInputs = [ alsaLib ]; }; }; + preBuild = "echo ok"; - cfg = { - posix_shmSupport = true; - timestampsSupport = true; - alsaSupport = true; - }; - - # make sure the jackaudio is found by symlinking lib64 to lib - postInstall = '' - mkdir -p $out/lib - ln -s $out/lib{64,}/pkgconfig + configureFlags = '' + ${if firewireSupport then "--enable-firewire" else ""} ''; + + buildInputs = + [ pkgconfig alsaLib + ] ++ (stdenv.lib.optional firewireSupport ffado); meta = { description = "JACK audio connection kit";