summary refs log tree commit diff
path: root/pkgs/applications/misc/plank/default.nix
blob: d5a071fcb54b46ff6ab0c00a19fb06581de88f4c (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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
{ stdenv, fetchurl, vala, atk, cairo, glib, gnome3, gtk3, libwnck3
, libX11, libXfixes, libXi, pango, intltool, pkgconfig, libxml2
, bamf, gdk-pixbuf, libdbusmenu-gtk3, file, gnome-menus, libgee
, wrapGAppsHook, autoreconfHook, pantheon }:

stdenv.mkDerivation rec {
  pname = "plank";
  version = "0.11.4";

  src = fetchurl {
    url = "https://launchpad.net/${pname}/1.0/${version}/+download/${pname}-${version}.tar.xz";
    sha256 = "1f41i45xpqhjxql9nl4a1sz30s0j46aqdhbwbvgrawz6himcvdc8";
  };

  nativeBuildInputs = [
    autoreconfHook
    gnome3.gnome-common
    intltool
    libxml2 # xmllint
    pkgconfig
    vala
    wrapGAppsHook
  ];

  buildInputs = [
    atk
    bamf
    cairo
    gdk-pixbuf
    glib
    gnome-menus
    gnome3.dconf
    gtk3
    libX11
    libXfixes
    libXi
    libdbusmenu-gtk3
    libgee
    libwnck3
    pango
  ];

  # fix paths
  makeFlags = [
    "INTROSPECTION_GIRDIR=${placeholder ''out''}/share/gir-1.0/"
    "INTROSPECTION_TYPELIBDIR=${placeholder ''out''}/lib/girepository-1.0"
  ];

  # Make plank's application launcher hidden in Pantheon
  patches = [ ./hide-in-pantheon.patch ];

  postPatch = ''
    substituteInPlace ./configure \
      --replace "/usr/bin/file" "${file}/bin/file"
  '';

  meta = with stdenv.lib; {
    description = "Elegant, simple, clean dock";
    homepage = https://launchpad.net/plank;
    license = licenses.gpl3Plus;
    platforms = platforms.linux;
    maintainers = with maintainers; [ davidak ] ++ pantheon.maintainers;
  };
}