From c883cefc6fa60feba83615bb7d77090855e12733 Mon Sep 17 00:00:00 2001 From: Marti Serra Date: Sat, 18 Mar 2017 19:51:25 +0100 Subject: [PATCH 1/2] pythonPackages.libnacl: init at 1.5.0 --- lib/maintainers.nix | 1 + .../python-modules/libnacl/default.nix | 26 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 3 files changed, 29 insertions(+) create mode 100644 pkgs/development/python-modules/libnacl/default.nix diff --git a/lib/maintainers.nix b/lib/maintainers.nix index e7b8ff7bf101..88a051cb57f5 100644 --- a/lib/maintainers.nix +++ b/lib/maintainers.nix @@ -538,6 +538,7 @@ wscott = "Wayne Scott "; wyvie = "Elijah Rum "; xnwdd = "Guillermo NWDD "; + xvapx = "Marti Serra "; xwvvvvwx = "David Terry "; yarr = "Dmitry V. "; yochai = "Yochai "; diff --git a/pkgs/development/python-modules/libnacl/default.nix b/pkgs/development/python-modules/libnacl/default.nix new file mode 100644 index 000000000000..09d834c85687 --- /dev/null +++ b/pkgs/development/python-modules/libnacl/default.nix @@ -0,0 +1,26 @@ +{ stdenv, buildPythonPackage, fetchPypi, pkgs }: + +buildPythonPackage rec { + pname = "libnacl"; + version = "1.5.0"; + name = "${pname}-${version}"; + + src = fetchPypi { + inherit pname version; + sha256 = "1ph042x0cfysj16mmjif40pxn505rg5c9n94s972dgc0mfgvrwhs"; + }; + + propagatedBuildInputs = [ pkgs.libsodium ]; + + postPatch = '' + substituteInPlace "./libnacl/__init__.py" --replace "ctypes.cdll.LoadLibrary('libsodium.so')" "ctypes.cdll.LoadLibrary('${pkgs.libsodium}/lib/libsodium.so')" + ''; + + meta = { + maintainers = with stdenv.lib.maintainers; [ xvapx ]; + description = "Python bindings for libsodium based on ctypes"; + homepage = "https://pypi.python.org/pypi/libnacl"; + license = stdenv.lib.licenses.asl20; + platforms = stdenv.lib.platforms.linux; + }; +} \ No newline at end of file diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 9a3debdf48b7..a8edf1e7616c 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -13867,6 +13867,8 @@ in { clblas = pkgs.clblas-cuda; }; + libnacl = callPackage ../development/python-modules/libnacl/default.nix { }; + libplist = if isPy3k then throw "libplist not supported for interpreter ${python.executable}" else (pkgs.libplist.override{python2Packages=self; }).py; From 597865725f89c56b5a7b4fb5eaa006174e82366d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= Date: Sun, 19 Mar 2017 20:58:41 +0100 Subject: [PATCH 2/2] pythonPackages.libnacl: enable tests --- .../python-modules/libnacl/default.nix | 21 ++++++++++++------- pkgs/top-level/python-packages.nix | 4 +++- 2 files changed, 16 insertions(+), 9 deletions(-) diff --git a/pkgs/development/python-modules/libnacl/default.nix b/pkgs/development/python-modules/libnacl/default.nix index 09d834c85687..0aa3ed29f20b 100644 --- a/pkgs/development/python-modules/libnacl/default.nix +++ b/pkgs/development/python-modules/libnacl/default.nix @@ -1,4 +1,4 @@ -{ stdenv, buildPythonPackage, fetchPypi, pkgs }: +{ stdenv, buildPythonPackage, fetchPypi, pytest, libsodium }: buildPythonPackage rec { pname = "libnacl"; @@ -10,17 +10,22 @@ buildPythonPackage rec { sha256 = "1ph042x0cfysj16mmjif40pxn505rg5c9n94s972dgc0mfgvrwhs"; }; - propagatedBuildInputs = [ pkgs.libsodium ]; + buildInputs = [ pytest ]; + propagatedBuildInputs = [ libsodium ]; postPatch = '' - substituteInPlace "./libnacl/__init__.py" --replace "ctypes.cdll.LoadLibrary('libsodium.so')" "ctypes.cdll.LoadLibrary('${pkgs.libsodium}/lib/libsodium.so')" + substituteInPlace "./libnacl/__init__.py" --replace "ctypes.cdll.LoadLibrary('libsodium.so')" "ctypes.cdll.LoadLibrary('${libsodium}/lib/libsodium.so')" ''; - meta = { - maintainers = with stdenv.lib.maintainers; [ xvapx ]; + checkPhase = '' + py.test + ''; + + meta = with stdenv.lib; { + maintainers = with maintainers; [ xvapx ]; description = "Python bindings for libsodium based on ctypes"; homepage = "https://pypi.python.org/pypi/libnacl"; - license = stdenv.lib.licenses.asl20; - platforms = stdenv.lib.platforms.linux; + license = licenses.asl20; + platforms = platforms.linux; }; -} \ No newline at end of file +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index a8edf1e7616c..f59191e6be53 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -13867,7 +13867,9 @@ in { clblas = pkgs.clblas-cuda; }; - libnacl = callPackage ../development/python-modules/libnacl/default.nix { }; + libnacl = callPackage ../development/python-modules/libnacl/default.nix { + inherit (pkgs) libsodium; + }; libplist = if isPy3k then throw "libplist not supported for interpreter ${python.executable}" else (pkgs.libplist.override{python2Packages=self; }).py;