summary refs log tree commit diff
path: root/pkgs/development/python-modules/pythonnet/default.nix
diff options
context:
space:
mode:
author(cdep)illabout <cdep.illabout@gmail.com>2021-05-20 10:08:26 +0900
committer(cdep)illabout <cdep.illabout@gmail.com>2021-05-20 10:08:26 +0900
commit408d7aabb477f3f9d3ed0441a00833e2c1b72ca8 (patch)
tree46c04d61df249c86927fdede4ec1a26f01f5bffb /pkgs/development/python-modules/pythonnet/default.nix
parent0eb2dc5d7b987499e75cdea61693bb91358c63e6 (diff)
parent7fe78d4f9efc88e5c6a4b9591bd8b41fee656df6 (diff)
downloadnixpkgs-408d7aabb477f3f9d3ed0441a00833e2c1b72ca8.tar
nixpkgs-408d7aabb477f3f9d3ed0441a00833e2c1b72ca8.tar.gz
nixpkgs-408d7aabb477f3f9d3ed0441a00833e2c1b72ca8.tar.bz2
nixpkgs-408d7aabb477f3f9d3ed0441a00833e2c1b72ca8.tar.lz
nixpkgs-408d7aabb477f3f9d3ed0441a00833e2c1b72ca8.tar.xz
nixpkgs-408d7aabb477f3f9d3ed0441a00833e2c1b72ca8.tar.zst
nixpkgs-408d7aabb477f3f9d3ed0441a00833e2c1b72ca8.zip
Merge remote-tracking branch 'origin/master' into haskell-updates
Diffstat (limited to 'pkgs/development/python-modules/pythonnet/default.nix')
-rw-r--r--pkgs/development/python-modules/pythonnet/default.nix62
1 files changed, 34 insertions, 28 deletions
diff --git a/pkgs/development/python-modules/pythonnet/default.nix b/pkgs/development/python-modules/pythonnet/default.nix
index d0054f7076a..7387d387dbe 100644
--- a/pkgs/development/python-modules/pythonnet/default.nix
+++ b/pkgs/development/python-modules/pythonnet/default.nix
@@ -2,8 +2,7 @@
 , fetchPypi
 , fetchNuGet
 , buildPythonPackage
-, python
-, pytest
+, pytestCheckHook
 , pycparser
 , psutil
 , pkg-config
@@ -15,29 +14,36 @@
 
 let
 
-  UnmanagedExports127 = fetchNuGet {
-    baseName = "UnmanagedExports";
-    version = "1.2.7";
-    sha256 = "0bfrhpmq556p0swd9ssapw4f2aafmgp930jgf00sy89hzg2bfijf";
-    outputFiles = [ "*" ];
-  };
-
-  NUnit371 = fetchNuGet {
-    baseName = "NUnit";
-    version = "3.7.1";
-    sha256 = "1yc6dwaam4w2ss1193v735nnl79id78yswmpvmjr1w4bgcbdza4l";
-    outputFiles = [ "*" ];
-  };
+  dotnetPkgs = [
+    (fetchNuGet {
+      baseName = "UnmanagedExports";
+      version = "1.2.7";
+      sha256 = "0bfrhpmq556p0swd9ssapw4f2aafmgp930jgf00sy89hzg2bfijf";
+      outputFiles = [ "*" ];
+    })
+    (fetchNuGet {
+      baseName = "NUnit";
+      version = "3.12.0";
+      sha256 = "1880j2xwavi8f28vxan3hyvdnph4nlh5sbmh285s4lc9l0b7bdk2";
+      outputFiles = [ "*" ];
+    })
+    (fetchNuGet {
+      baseName = "System.ValueTuple";
+      version = "4.5.0";
+      sha256 = "00k8ja51d0f9wrq4vv5z2jhq8hy31kac2rg0rv06prylcybzl8cy";
+      outputFiles = [ "*" ];
+    })
+  ];
 
 in
 
 buildPythonPackage rec {
   pname = "pythonnet";
-  version = "2.4.0";
+  version = "2.5.2";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1ach9jic7a9rd3vmc4bphkr9fq01a0qk81f8a7gr9npwzmkqx8x3";
+    sha256 = "1qzdc6jd7i9j7p6bcihnr98y005gv1358xqdr1plpbpnl6078a5p";
   };
 
   postPatch = ''
@@ -50,7 +56,6 @@ buildPythonPackage rec {
   '';
 
   nativeBuildInputs = [
-    pytest
     pycparser
 
     pkg-config
@@ -59,13 +64,15 @@ buildPythonPackage rec {
 
     mono
 
-    NUnit371
-    UnmanagedExports127
-  ];
+  ] ++ dotnetPkgs;
 
   buildInputs = [
     glib
     mono
+  ];
+
+  checkInputs = [
+    pytestCheckHook
     psutil # needed for memory leak tests
   ];
 
@@ -73,22 +80,21 @@ buildPythonPackage rec {
     rm -rf packages
     mkdir packages
 
-    ln -s ${NUnit371}/lib/dotnet/NUnit/ packages/NUnit.3.7.1
-    ln -s ${UnmanagedExports127}/lib/dotnet/NUnit/ packages/UnmanagedExports.1.2.7
+    ${builtins.concatStringsSep "\n" (
+        builtins.map (
+            x: ''ln -s ${x}/lib/dotnet/${x.baseName} ./packages/${x.baseName}.${x.version}''
+          ) dotnetPkgs)}
 
     # Setting TERM=xterm fixes an issue with terminfo in mono: System.Exception: Magic number is wrong: 542
     export TERM=xterm
   '';
 
-  checkPhase = ''
-    ${python.interpreter} -m pytest
-  '';
-
   meta = with lib; {
     description = ".Net and Mono integration for Python";
     homepage = "https://pythonnet.github.io";
     license = licenses.mit;
+    # <https://github.com/pythonnet/pythonnet/issues/898>
+    badPlatforms = [ "aarch64-linux" ];
     maintainers = with maintainers; [ jraygauthier ];
-    broken = true;
   };
 }