about summary refs log tree commit diff
path: root/pkgs/development/python-modules/cntk/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/python-modules/cntk/default.nix')
-rw-r--r--pkgs/development/python-modules/cntk/default.nix38
1 files changed, 38 insertions, 0 deletions
diff --git a/pkgs/development/python-modules/cntk/default.nix b/pkgs/development/python-modules/cntk/default.nix
new file mode 100644
index 000000000000..2bcb7165ca1c
--- /dev/null
+++ b/pkgs/development/python-modules/cntk/default.nix
@@ -0,0 +1,38 @@
+{ stdenv
+, buildPythonPackage
+, pkgs
+, numpy
+, scipy
+, enum34
+, protobuf
+, pip
+, python
+}:
+
+buildPythonPackage rec {
+  inherit (pkgs.cntk) name version src meta;
+
+  buildInputs = [ pkgs.cntk pkgs.swig pkgs.openmpi ];
+  propagatedBuildInputs = [ numpy scipy enum34 protobuf pip ];
+
+  CNTK_LIB_PATH = "${pkgs.cntk}/lib";
+  CNTK_COMPONENT_VERSION = pkgs.cntk.version;
+
+  postPatch = ''
+    cd bindings/python
+    sed -i 's,"libmpi.so.12","${pkgs.openmpi}/lib/libmpi.so",g' cntk/train/distributed.py
+  '';
+
+  postInstall = ''
+    rm -rf $out/${python.sitePackages}/cntk/libs
+    ln -s ${pkgs.cntk}/lib $out/${python.sitePackages}/cntk/libs
+    # It's not installed for some reason.
+    cp cntk/cntk_py.py $out/${python.sitePackages}/cntk
+  '';
+
+  # Actual tests are broken.
+  checkPhase = ''
+    cd $NIX_BUILD_TOP
+    ${python.interpreter} -c "import cntk"
+  '';
+}