From ad815f42067d7924717f145ec7e98d0969ec3565 Mon Sep 17 00:00:00 2001 From: Joachim Fasting Date: Sat, 3 Sep 2016 21:40:16 +0200 Subject: [PATCH 1/4] xapianBindings: 1.2.23 -> 1.4.0 The xapianBindings version is now directly tied to the input xapian version, to ensure that they're in synch. Also, as of this version, sphinx is required to build documentation for the python bindings. --- .../libraries/xapian/bindings/default.nix | 13 ++++++++----- pkgs/top-level/all-packages.nix | 1 + 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/pkgs/development/libraries/xapian/bindings/default.nix b/pkgs/development/libraries/xapian/bindings/default.nix index eeb480e6847..4db6e57546a 100644 --- a/pkgs/development/libraries/xapian/bindings/default.nix +++ b/pkgs/development/libraries/xapian/bindings/default.nix @@ -1,15 +1,18 @@ { stdenv, composableDerivation, fetchurl, xapian, pkgconfig, zlib -, python ? null, php ? null, ruby ? null }: +, python ? null, sphinx ? null, php ? null, ruby ? null }: + +assert (python != null) -> (sphinx != null); let inherit (composableDerivation) wwf; in composableDerivation.composableDerivation {} rec { - name = "xapian-bindings-1.2.23"; + name = "xapian-bindings-${version}"; + version = (builtins.parseDrvName xapian.name).version; src = fetchurl { - url = "http://oligarchy.co.uk/xapian/1.2.23/${name}.tar.xz"; - sha256 = "05929d9bq9df25kh2i6gk2w09w7p5qknf9cc7mrm2g46finbbd0r"; + url = "http://oligarchy.co.uk/xapian/${version}/${name}.tar.xz"; + sha256 = "0lv2zblayfax4v7z3sj067b0av0phf3gc2s2d1cvkw0bkl07mv1s"; }; buildInputs = [ xapian pkgconfig zlib ]; @@ -19,7 +22,7 @@ composableDerivation.composableDerivation {} rec { wwf { name = "python"; enable = { - buildInputs = [ python ]; + buildInputs = [ python sphinx ]; # export same env vars as in pythonNew preConfigure = '' export PYTHON_LIB=$out/lib/${python.libPrefix}/site-packages diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f723fedd2da..284b7e8148f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -9800,6 +9800,7 @@ in xapianBindings = callPackage ../development/libraries/xapian/bindings { # TODO perl php Java, tcl, C#, python php = php56; + sphinx = pythonPackages.sphinx; }; xapian-omega = callPackage ../tools/misc/xapian-omega { From 3ca74495d211408286564b140badd3631089d4ab Mon Sep 17 00:00:00 2001 From: Jan Malakhovski Date: Sun, 4 Sep 2016 14:11:15 +0000 Subject: [PATCH 2/4] xapianBindings: fix calls to sphinx-bulid in python bindings Makefile --- .../development/libraries/xapian/bindings/default.nix | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/pkgs/development/libraries/xapian/bindings/default.nix b/pkgs/development/libraries/xapian/bindings/default.nix index 4db6e57546a..7187f9b575f 100644 --- a/pkgs/development/libraries/xapian/bindings/default.nix +++ b/pkgs/development/libraries/xapian/bindings/default.nix @@ -23,6 +23,17 @@ composableDerivation.composableDerivation {} rec { name = "python"; enable = { buildInputs = [ python sphinx ]; + + # Our `sphinx-build` binary is a shell wrapper around + # `sphinx-build` python code. Makefile tries to execute it + # using python2 and fails. Fixing that here. + patchPhase = '' + for a in python/Makefile* ; do + substituteInPlace $a \ + --replace '$(PYTHON2) $(SPHINX_BUILD)' '$(SPHINX_BUILD)' + done + ''; + # export same env vars as in pythonNew preConfigure = '' export PYTHON_LIB=$out/lib/${python.libPrefix}/site-packages From 8f6664b74434f449e831496acd167ac33f233191 Mon Sep 17 00:00:00 2001 From: Jan Malakhovski Date: Sun, 4 Sep 2016 14:18:00 +0000 Subject: [PATCH 3/4] xapian-omega: pin to xapian library version --- pkgs/tools/misc/xapian-omega/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/tools/misc/xapian-omega/default.nix b/pkgs/tools/misc/xapian-omega/default.nix index c3798878f1b..7c64c2e90d4 100644 --- a/pkgs/tools/misc/xapian-omega/default.nix +++ b/pkgs/tools/misc/xapian-omega/default.nix @@ -2,7 +2,7 @@ stdenv.mkDerivation rec { name = "xapian-omega-${version}"; - version = "1.4.0"; + version = (builtins.parseDrvName xapian.name).version; src = fetchurl { url = "http://oligarchy.co.uk/xapian/${version}/xapian-omega-${version}.tar.xz"; From 8acd3960cf2b4b263079bf7c180fd93c3d8489f9 Mon Sep 17 00:00:00 2001 From: Jan Malakhovski Date: Sun, 4 Sep 2016 14:15:26 +0000 Subject: [PATCH 4/4] xapian-omega: move into xapian directory --- .../libraries/xapian/tools/omega}/default.nix | 0 pkgs/top-level/all-packages.nix | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) rename pkgs/{tools/misc/xapian-omega => development/libraries/xapian/tools/omega}/default.nix (100%) diff --git a/pkgs/tools/misc/xapian-omega/default.nix b/pkgs/development/libraries/xapian/tools/omega/default.nix similarity index 100% rename from pkgs/tools/misc/xapian-omega/default.nix rename to pkgs/development/libraries/xapian/tools/omega/default.nix diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 284b7e8148f..724fe166263 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -9803,7 +9803,7 @@ in sphinx = pythonPackages.sphinx; }; - xapian-omega = callPackage ../tools/misc/xapian-omega { + xapian-omega = callPackage ../development/libraries/xapian/tools/omega { libmagic = file; };