diff options
author | William A. Kennington III <william@wkennington.com> | 2015-04-25 20:53:47 -0700 |
---|---|---|
committer | William A. Kennington III <william@wkennington.com> | 2015-04-25 21:27:54 -0700 |
commit | 418963ef63f143b50b8dc322b8715b3da724f378 (patch) | |
tree | 8e0ea1f2172c18e5f588a5f0e19e5be2364c8a07 /pkgs | |
parent | 7fa5873cd8c9dff5ef38f0429b7110e3f3ba9a28 (diff) | |
download | nixlib-418963ef63f143b50b8dc322b8715b3da724f378.tar nixlib-418963ef63f143b50b8dc322b8715b3da724f378.tar.gz nixlib-418963ef63f143b50b8dc322b8715b3da724f378.tar.bz2 nixlib-418963ef63f143b50b8dc322b8715b3da724f378.tar.lz nixlib-418963ef63f143b50b8dc322b8715b3da724f378.tar.xz nixlib-418963ef63f143b50b8dc322b8715b3da724f378.tar.zst nixlib-418963ef63f143b50b8dc322b8715b3da724f378.zip |
jack2: Refactor
Diffstat (limited to 'pkgs')
-rw-r--r-- | pkgs/misc/jackaudio/default.nix | 73 | ||||
-rw-r--r-- | pkgs/top-level/all-packages.nix | 5 |
2 files changed, 57 insertions, 21 deletions
diff --git a/pkgs/misc/jackaudio/default.nix b/pkgs/misc/jackaudio/default.nix index 9152e8a72021..fde43ffd79b5 100644 --- a/pkgs/misc/jackaudio/default.nix +++ b/pkgs/misc/jackaudio/default.nix @@ -1,45 +1,78 @@ -{ stdenv, fetchurl, alsaLib, dbus, expat, libsamplerate -, libsndfile, makeWrapper, pkgconfig, python, pythonDBus -, firewireSupport ? false, ffado ? null, bash }: +{ stdenv, fetchFromGitHub, pkgconfig, python, makeWrapper +, bash, libsamplerate, readline -assert firewireSupport -> ffado != null; +# Optional Dependencies +, dbus ? null, pythonDBus ? null, libffado ? null, alsaLib ? null +, libopus ? null +# Extra options +, prefix ? "" +}: + +with stdenv.lib; +let + shouldUsePkg = pkg: if pkg != null && stdenv.lib.any (x: x == stdenv.system) pkg.meta.platforms then pkg else null; + + libOnly = prefix == "lib"; + + optDbus = shouldUsePkg dbus; + optPythonDBus = if libOnly then null else shouldUsePkg pythonDBus; + optLibffado = if libOnly then null else shouldUsePkg libffado; + optAlsaLib = if libOnly then null else shouldUsePkg alsaLib; + optLibopus = shouldUsePkg libopus; +in stdenv.mkDerivation rec { - name = "jack2-${version}"; + name = "${prefix}jack2-${version}"; version = "1.9.10"; - src = fetchurl { - urls = [ - https://github.com/jackaudio/jack2/archive/v1.9.10.tar.gz - ]; - sha256 = "03b0iiyk3ng3vh5s8gaqwn565vik7910p56mlbk512bw3dhbdwc8"; + src = fetchFromGitHub { + owner = "jackaudio"; + repo = "jack2"; + rev = "v${version}"; + sha256 = "1a2213l7x6sgqg2hq3yhnpvvvqyskhsmx8j3z0jgjsqwz9xa3wbr"; }; - buildInputs = - [ alsaLib dbus expat libsamplerate libsndfile makeWrapper - pkgconfig python pythonDBus - ] ++ (stdenv.lib.optional firewireSupport ffado); + nativeBuildInputs = [ pkgconfig python makeWrapper ]; + buildInputs = [ + python + + libsamplerate readline + + optDbus optPythonDBus optLibffado optAlsaLib optLibopus + ]; patchPhase = '' substituteInPlace svnversion_regenerate.sh --replace /bin/bash ${bash}/bin/bash ''; configurePhase = '' - python waf configure --prefix=$out --dbus --alsa ${if firewireSupport then "--firewire" else ""} + python waf configure --prefix=$out \ + ${optionalString (optDbus != null) "--dbus"} \ + --classic \ + --profile \ + ${optionalString (optLibffado != null) "--firewire"} \ + ${optionalString (optAlsaLib != null) "--alsa"} \ + --autostart=${if (optDbus != null) then "dbus" else "classic"} \ ''; - buildPhase = "python waf build"; + buildPhase = '' + python waf build + ''; installPhase = '' python waf install + '' + (if libOnly then '' + rm -rf $out/{bin,share} + rm -rf $out/lib/{jack,libjacknet*,libjackserver*} + '' else '' wrapProgram $out/bin/jack_control --set PYTHONPATH $PYTHONPATH - ''; + ''); - meta = with stdenv.lib; { + meta = { description = "JACK audio connection kit, version 2 with jackdbus"; homepage = "http://jackaudio.org"; license = licenses.gpl2Plus; - platforms = platforms.linux; - maintainers = [ maintainers.goibhniu ]; + platforms = platforms.unix; + maintainers = with maintainers; [ goibhniu wkennington ]; }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a2a92a47979a..f7b7460aeb20 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -13891,7 +13891,10 @@ let # using the new configuration style proposal which is unstable jack1 = callPackage ../misc/jackaudio/jack1.nix { }; - jack2 = callPackage ../misc/jackaudio { }; + jack2 = callPackage ../misc/jackaudio { + libopus = libopus.override { withCustomModes = true; }; + }; + libjack2 = jack2.override { prefix = "lib"; }; keynav = callPackage ../tools/X11/keynav { }; |