1{ lib
2, buildPythonPackage
3, fetchPypi
4, celery
5, humanize
6, mock
7, pytz
8, tornado
9, prometheus_client
10}:
11
12buildPythonPackage rec {
13 pname = "flower";
14 version = "0.9.7";
15
16 src = fetchPypi {
17 inherit pname version;
18 sha256 = "cf27a254268bb06fd4972408d0518237fcd847f7da4b4cd8055e228150ace8f3";
19 };
20
21 postPatch = ''
22 # rely on using example programs (flowers/examples/tasks.py) which
23 # are not part of the distribution
24 rm tests/load.py
25 substituteInPlace requirements/default.txt --replace "prometheus_client==0.8.0" "prometheus_client>=0.8.0"
26 '';
27
28 propagatedBuildInputs = [
29 celery
30 pytz
31 tornado
32 humanize
33 prometheus_client
34 ];
35
36 checkInputs = [ mock ];
37
38 pythonImportsCheck = [ "flower" ];
39
40 meta = with lib; {
41 description = "Celery Flower";
42 homepage = "https://github.com/mher/flower";
43 license = licenses.bsdOriginal;
44 maintainers = [ maintainers.arnoldfarkas ];
45 broken = (celery.version >= "5.0.2"); # currently broken with celery>=5.0 by https://github.com/mher/flower/pull/1021
46 };
47}