summary refs log tree commit diff
diff options
context:
space:
mode:
authorTobias Geerinckx-Rice <tobias.geerinckx.rice@gmail.com>2015-07-15 03:12:11 +0200
committerTobias Geerinckx-Rice <tobias.geerinckx.rice@gmail.com>2015-07-15 03:31:55 +0200
commit828f9ea8ccca208eb949d0f062ecc23717739510 (patch)
tree529d4e4ecd56204da546f89dbe3335748df9cc0a
parent82cac9f9acfd5c6fefd84b20c9ad07677cb1c43a (diff)
downloadnixpkgs-828f9ea8ccca208eb949d0f062ecc23717739510.tar
nixpkgs-828f9ea8ccca208eb949d0f062ecc23717739510.tar.gz
nixpkgs-828f9ea8ccca208eb949d0f062ecc23717739510.tar.bz2
nixpkgs-828f9ea8ccca208eb949d0f062ecc23717739510.tar.lz
nixpkgs-828f9ea8ccca208eb949d0f062ecc23717739510.tar.xz
nixpkgs-828f9ea8ccca208eb949d0f062ecc23717739510.tar.zst
nixpkgs-828f9ea8ccca208eb949d0f062ecc23717739510.zip
keyfinder-cli: use old libkeyfinder 0.11 "for now"
The tool doesn't compile against versions 2.x.
Also, fix the incorrect version number & use src.meta.homepage.
-rw-r--r--pkgs/applications/audio/keyfinder-cli/default.nix9
-rw-r--r--pkgs/development/libraries/libkeyfinder/0.11.nix40
-rw-r--r--pkgs/top-level/all-packages.nix1
3 files changed, 46 insertions, 4 deletions
diff --git a/pkgs/applications/audio/keyfinder-cli/default.nix b/pkgs/applications/audio/keyfinder-cli/default.nix
index 1f008e56c15..d5de42f6a6e 100644
--- a/pkgs/applications/audio/keyfinder-cli/default.nix
+++ b/pkgs/applications/audio/keyfinder-cli/default.nix
@@ -1,6 +1,6 @@
-{ stdenv, fetchFromGitHub, libav, libkeyfinder }:
+{ stdenv, fetchFromGitHub, libav, libkeyfinder_0_11 }:
 
-let version = "20150130"; in
+let version = "20150201"; in
 stdenv.mkDerivation rec {
   name = "keyfinder-cli-${version}";
 
@@ -12,19 +12,20 @@ stdenv.mkDerivation rec {
   };
 
   meta = with stdenv.lib; {
+    inherit version;
+    inherit (src.meta) homepage;
     description = "Musical key detection for digital audio (command-line tool)";
     longDescription = ''
       This small utility is the automation-oriented DJ's best friend. By making
       use of Ibrahim Sha'ath's high quality libKeyFinder library, it can be
       used to estimate the musical key of many different audio formats.
     '';
-    homepage = https://github.com/EvanPurkhiser/keyfinder-cli;
     license = licenses.gpl3Plus;
     platforms = with platforms; linux;
     maintainers = with maintainers; [ nckx ];
   };
 
-  buildInputs = [ libav libkeyfinder ];
+  buildInputs = [ libav libkeyfinder_0_11 ];
 
   makeFlagsArray = "PREFIX=$(out)";
 
diff --git a/pkgs/development/libraries/libkeyfinder/0.11.nix b/pkgs/development/libraries/libkeyfinder/0.11.nix
new file mode 100644
index 00000000000..f0e75b34059
--- /dev/null
+++ b/pkgs/development/libraries/libkeyfinder/0.11.nix
@@ -0,0 +1,40 @@
+{ stdenv, fetchFromGitHub, boost, fftw, qt5 }:
+
+let version = "0.11"; in
+stdenv.mkDerivation {
+  name = "libkeyfinder-${version}";
+
+  src = fetchFromGitHub {
+    sha256 = "0674gykdi1nffvba5rv6fsp0zw02w1gkpn9grh8w983xf13ykbz9";
+    rev = "v${version}";
+    repo = "libKeyFinder";
+    owner = "ibsh";
+  };
+
+  meta = with stdenv.lib; {
+    inherit version;
+    description = "Musical key detection for digital audio (C++ library)";
+    homepage = http://www.ibrahimshaath.co.uk/keyfinder/;
+    license = licenses.gpl3Plus;
+    platforms = with platforms; linux;
+    maintainers = with maintainers; [ nckx ];
+  };
+
+  buildInputs = [ fftw qt5.base ];
+  propagatedBuildInputs = [ boost ];
+
+  patchPhase = ''
+    substituteInPlace LibKeyFinder.pro --replace "/usr/local" "$out"
+  '';
+
+  configurePhase = ''
+    qmake
+  '';
+
+  enableParallelBuilding = true;
+
+  postInstall = ''
+    mkdir -p $out/include/keyfinder
+    cp *.h $out/include/keyfinder
+  '';
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 5b294e25929..dca528a4fdd 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -7098,6 +7098,7 @@ let
 
   libkate = callPackage ../development/libraries/libkate { };
 
+  libkeyfinder_0_11 = callPackage ../development/libraries/libkeyfinder/0.11.nix { };
   libkeyfinder = callPackage ../development/libraries/libkeyfinder { };
 
   libksba = callPackage ../development/libraries/libksba { };