1{ stdenv, buildPythonPackage, fetchPypi, iana-etc, libredirect,
2 pytest, case, kombu, billiard, pytz, anyjson, amqp, eventlet
3}:
4buildPythonPackage rec {
5 pname = "celery";
6 version = "4.1.0";
7
8 src = fetchPypi {
9 inherit pname version;
10 sha256 = "0dcb0s6kdcd3vc9pwvazngppkdbhwpmpjmghq6rifsld34q3gzvp";
11 };
12
13 # make /etc/protocols accessible to fix socket.getprotobyname('tcp') in sandbox
14 preCheck = ''
15 export NIX_REDIRECTS=/etc/protocols=${iana-etc}/etc/protocols \
16 LD_PRELOAD=${libredirect}/lib/libredirect.so
17 '';
18 postCheck = ''
19 unset NIX_REDIRECTS LD_PRELOAD
20 '';
21
22 buildInputs = [ pytest case ];
23 propagatedBuildInputs = [ kombu billiard pytz anyjson amqp eventlet ];
24
25 meta = with stdenv.lib; {
26 homepage = https://github.com/celery/celery/;
27 description = "Distributed task queue";
28 license = licenses.bsd3;
29 };
30}