Skip to content

Commit

Permalink
pythonnet: 2.4.0 -> 2.5.2
Browse files Browse the repository at this point in the history
 -  No longer broken.
 -  Updated mono dependency to mono5.
 -  Fix / improve packaging.
  • Loading branch information
jraygauthier committed May 18, 2021
1 parent 3f32ab2 commit 9311ac5
Show file tree
Hide file tree
Showing 2 changed files with 36 additions and 30 deletions.
62 changes: 34 additions & 28 deletions pkgs/development/python-modules/pythonnet/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,7 @@
, fetchPypi
, fetchNuGet
, buildPythonPackage
, python
, pytest
, pytestCheckHook
, pycparser
, psutil
, pkg-config
Expand All @@ -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 = ''
Expand All @@ -50,7 +56,6 @@ buildPythonPackage rec {
'';

nativeBuildInputs = [
pytest
pycparser

pkg-config
Expand All @@ -59,36 +64,37 @@ buildPythonPackage rec {

mono

NUnit371
UnmanagedExports127
];
] ++ dotnetPkgs;

buildInputs = [
glib
mono
];

checkInputs = [
pytestCheckHook
psutil # needed for memory leak tests
];

preBuild = ''
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;
};
}
4 changes: 2 additions & 2 deletions pkgs/top-level/python-packages.nix
Original file line number Diff line number Diff line change
Expand Up @@ -6642,8 +6642,8 @@ in {

pythonnet = callPackage
../development/python-modules/pythonnet {
# `mono >= 4.6` required to prevent crashes encountered with earlier versions.
mono = pkgs.mono4;
# Using `mono > 5`, tests are failing..
mono = pkgs.mono5;
};

python-nmap = callPackage ../development/python-modules/python-nmap { };
Expand Down

0 comments on commit 9311ac5

Please sign in to comment.