1{ lib, fetchurl, buildPythonPackage, python, pkgconfig, dbus, dbus-glib, dbus_tools, isPyPy
2, ncurses, pygobject3 }:
3
4if isPyPy then throw "dbus-python not supported for interpreter ${python.executable}" else buildPythonPackage rec {
5 pname = "dbus-python";
6 version = "1.2.4";
7 name = "${pname}-${version}";
8 format = "other";
9
10 src = fetchurl {
11 url = "http://dbus.freedesktop.org/releases/dbus-python/${name}.tar.gz";
12 sha256 = "1k7rnaqrk7mdkg0k6n2jn3d1mxsl7s3i07g5a8va5yvl3y3xdwg2";
13 };
14
15 postPatch = "patchShebangs .";
16
17 nativeBuildInputs = [ pkgconfig ];
18 buildInputs = [ dbus dbus-glib ]
19 ++ lib.optionals doCheck [ dbus_tools pygobject3 ]
20 # My guess why it's sometimes trying to -lncurses.
21 # It seems not to retain the dependency anyway.
22 ++ lib.optional (! python ? modules) ncurses;
23
24 doCheck = true;
25
26 meta = {
27 description = "Python DBus bindings";
28 license = lib.licenses.mit;
29 platforms = dbus.meta.platforms;
30 };
31}