From bba13933612d3ebecc5942ba1ed38bcb7fae5d3f Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Sat, 3 Feb 2018 11:36:14 +0100 Subject: [PATCH] python.pkgs.cryptography: move expression --- .../python-modules/cryptography/default.nix | 65 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 45 +------------ 2 files changed, 66 insertions(+), 44 deletions(-) create mode 100644 pkgs/development/python-modules/cryptography/default.nix diff --git a/pkgs/development/python-modules/cryptography/default.nix b/pkgs/development/python-modules/cryptography/default.nix new file mode 100644 index 00000000000..4933bbd500c --- /dev/null +++ b/pkgs/development/python-modules/cryptography/default.nix @@ -0,0 +1,65 @@ +{ stdenv +, buildPythonPackage +, fetchPypi +, openssl +, cryptography_vectors +, darwin +, idna +, asn1crypto +, packaging +, six +, pythonOlder +, enum34 +, ipaddress +, isPyPy +, cffi +, pytest +, pretend +, iso8601 +, pytz +, hypothesis +}: + +buildPythonPackage rec { + # also bump cryptography_vectors + pname = "cryptography"; + version = "2.0.3"; + + src = fetchPypi { + inherit pname version; + sha256 = "d04bb2425086c3fe86f7bc48915290b13e798497839fbb18ab7f6dffcf98cc3a"; + }; + + outputs = [ "out" "dev" ]; + + buildInputs = [ openssl cryptography_vectors ] + ++ stdenv.lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.Security; + propagatedBuildInputs = [ + idna + asn1crypto + packaging + six + ] ++ stdenv.lib.optional (pythonOlder "3.4") enum34 + ++ stdenv.lib.optional (pythonOlder "3.3") ipaddress + ++ stdenv.lib.optional (!isPyPy) cffi; + + checkInputs = [ + pytest + pretend + iso8601 + pytz + hypothesis + ]; + + # The test assumes that if we're on Sierra or higher, that we use `getentropy`, but for binary + # compatibility with pre-Sierra for binary caches, we hide that symbol so the library doesn't + # use it. This boils down to them checking compatibility with `getentropy` in two different places, + # so let's neuter the second test. + postPatch = '' + substituteInPlace ./tests/hazmat/backends/test_openssl.py --replace '"16.0"' '"99.0"' + ''; + + # IOKit's dependencies are inconsistent between OSX versions, so this is the best we + # can do until nix 1.11's release + __impureHostDeps = [ "/usr/lib" ]; +} \ No newline at end of file diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index e8f4baeb953..b218b012c75 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2796,50 +2796,7 @@ in { }; }; - cryptography = buildPythonPackage rec { - # also bump cryptography_vectors - pname = "cryptography"; - name = "${pname}-${version}"; - version = "2.0.3"; - - src = fetchPypi { - inherit pname version; - sha256 = "d04bb2425086c3fe86f7bc48915290b13e798497839fbb18ab7f6dffcf98cc3a"; - }; - - outputs = [ "out" "dev" ]; - - buildInputs = [ pkgs.openssl self.cryptography_vectors ] - ++ optional stdenv.isDarwin pkgs.darwin.apple_sdk.frameworks.Security; - propagatedBuildInputs = with self; [ - idna - asn1crypto - packaging - six - ] ++ optional (pythonOlder "3.4") enum34 - ++ optional (pythonOlder "3.3") ipaddress - ++ optional (!isPyPy) cffi; - - checkInputs = with self; [ - pytest - pretend - iso8601 - pytz - hypothesis - ]; - - # The test assumes that if we're on Sierra or higher, that we use `getentropy`, but for binary - # compatibility with pre-Sierra for binary caches, we hide that symbol so the library doesn't - # use it. This boils down to them checking compatibility with `getentropy` in two different places, - # so let's neuter the second test. - postPatch = '' - substituteInPlace ./tests/hazmat/backends/test_openssl.py --replace '"16.0"' '"99.0"' - ''; - - # IOKit's dependencies are inconsistent between OSX versions, so this is the best we - # can do until nix 1.11's release - __impureHostDeps = [ "/usr/lib" ]; - }; + cryptography = callPackage ../development/python-modules/cryptography { }; cryptography_vectors = callPackage ../development/python-modules/cryptography_vectors { };