1{ lib
2, stdenv
3, buildPythonPackage
4, fetchPypi
5, pyopenssl
6, libuv
7, psutil
8, isPy27
9, CoreServices
10, ApplicationServices
11}:
12
13buildPythonPackage rec {
14 pname = "uvloop";
15 version = "0.13.0";
16 disabled = isPy27;
17
18 src = fetchPypi {
19 inherit pname version;
20 sha256 = "0blcnrd5vky2k1m1p1skx4516dr1jx76yyb0c6fi82si6mqd0b4l";
21 };
22
23 buildInputs = [
24 libuv
25 ] ++ lib.optionals stdenv.isDarwin [ CoreServices ApplicationServices ];
26
27 postPatch = ''
28 # Removing code linting tests, which we don't care about
29 rm tests/test_sourcecode.py
30 '';
31
32 checkInputs = [ pyopenssl psutil ];
33
34 meta = with lib; {
35 description = "Fast implementation of asyncio event loop on top of libuv";
36 homepage = http://github.com/MagicStack/uvloop;
37 license = licenses.mit;
38 maintainers = [ maintainers.costrouc ];
39 };
40}