1{ stdenv, buildPythonPackage, isPy3k, fetchPypi, substituteAll, graphviz
2, pkgconfig, doctest-ignore-unicode, mock, nose }:
3
4buildPythonPackage rec {
5 pname = "pygraphviz";
6 version = "1.6";
7
8 disabled = !isPy3k;
9
10 src = fetchPypi {
11 inherit pname version;
12 sha256 = "411ae84a5bc313e3e1523a1cace59159f512336318a510573b47f824edef8860";
13 extension = "zip";
14 };
15
16 nativeBuildInputs = [ pkgconfig ];
17 buildInputs = [ graphviz ];
18 checkInputs = [ doctest-ignore-unicode mock nose ];
19
20 patches = [
21 # pygraphviz depends on graphviz being in PATH. This patch always prepends
22 # graphviz to PATH.
23 (substituteAll {
24 src = ./graphviz-path.patch;
25 inherit graphviz;
26 })
27 ];
28
29 # The tests are currently failing because of a bug in graphviz 2.40.1.
30 # Upstream does not want to skip the relevant tests:
31 # https://github.com/pygraphviz/pygraphviz/pull/129
32 doCheck = false;
33
34 meta = with stdenv.lib; {
35 description = "Python interface to Graphviz graph drawing package";
36 homepage = "https://github.com/pygraphviz/pygraphviz";
37 license = licenses.bsd3;
38 maintainers = with maintainers; [ matthiasbeyer ];
39 };
40}