summary refs log tree commit diff
path: root/pkgs/development/tools/misc/d-feet/default.nix
blob: d4847afc786b7d1325ad39617975bd96a4b912a6 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
{ stdenv, pkgconfig, fetchurl, itstool, intltool, libxml2, glib, gtk3
, pango, gdk_pixbuf, atk, pep8, python, makeWrapper
, pygobject3, gobjectIntrospection, libwnck3
, gnome_icon_theme }:

let
  version = "${major}.8";
  major = "0.3";
in

stdenv.mkDerivation rec {
  name = "d-feet-${version}";

  src = fetchurl {
    url = "mirror://gnome/sources/d-feet/${major}/d-feet-${version}.tar.xz";
    sha256 = "e8423feb18fdff9b1465bf8442b78994ba13c12f8fa3b08e6a2f05768b4feee5";
  };

  buildInputs = [
    pkgconfig libxml2 itstool intltool glib gtk3 pep8 python
    makeWrapper pygobject3 libwnck3
  ];

  postInstall =
    ''
      wrapProgram $out/bin/d-feet \
        --prefix PYTHONPATH : "$(toPythonPath $out):$(toPythonPath ${pygobject3})" \
        --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
        --prefix LD_LIBRARY_PATH : "${gtk3}/lib:${atk}/lib:${libwnck3}/lib" \
        --prefix XDG_DATA_DIRS : "${gnome_icon_theme}/share:$out/share"
    '';

  meta = {
    description = "D-Feet is an easy to use D-Bus debugger";

    longDescription = ''
      D-Feet can be used to inspect D-Bus interfaces of running programs
      and invoke methods on those interfaces.
    '';

    homepage = https://wiki.gnome.org/action/show/Apps/DFeet;
    platforms = stdenv.lib.platforms.all;
    maintainers = with stdenv.lib.maintainers; [ ktosiek ];
  };
}