nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 stdenv,
4 fetchurl,
5 vala,
6 atk,
7 cairo,
8 dconf,
9 glib,
10 gnome-common,
11 gtk3,
12 libwnck,
13 libX11,
14 libXfixes,
15 libXi,
16 pango,
17 gettext,
18 pkg-config,
19 libxml2,
20 bamf,
21 gdk-pixbuf,
22 libdbusmenu-gtk3,
23 file,
24 gnome-menus,
25 libgee,
26 wrapGAppsHook3,
27 autoreconfHook,
28}:
29
30stdenv.mkDerivation rec {
31 pname = "plank";
32 version = "0.11.89";
33
34 src = fetchurl {
35 url = "https://launchpad.net/${pname}/1.0/${version}/+download/${pname}-${version}.tar.xz";
36 sha256 = "17cxlmy7n13jp1v8i4abxyx9hylzb39andhz3mk41ggzmrpa8qm6";
37 };
38
39 nativeBuildInputs = [
40 autoreconfHook
41 gettext
42 gnome-common
43 libxml2 # xmllint
44 pkg-config
45 vala
46 wrapGAppsHook3
47 ];
48
49 buildInputs = [
50 atk
51 bamf
52 cairo
53 gdk-pixbuf
54 glib
55 gnome-menus
56 dconf
57 gtk3
58 libX11
59 libXfixes
60 libXi
61 libdbusmenu-gtk3
62 libgee
63 libwnck
64 pango
65 ];
66
67 # fix paths
68 makeFlags = [
69 "INTROSPECTION_GIRDIR=${placeholder "out"}/share/gir-1.0/"
70 "INTROSPECTION_TYPELIBDIR=${placeholder "out"}/lib/girepository-1.0"
71 ];
72
73 # Make plank's application launcher hidden in Pantheon
74 patches = [
75 ./hide-in-pantheon.patch
76 ];
77
78 postPatch = ''
79 substituteInPlace ./configure \
80 --replace "/usr/bin/file" "${file}/bin/file"
81 '';
82
83 meta = {
84 description = "Elegant, simple, clean dock";
85 mainProgram = "plank";
86 homepage = "https://launchpad.net/plank";
87 license = lib.licenses.gpl3Plus;
88 platforms = lib.platforms.linux;
89 maintainers = with lib.maintainers; [ davidak ];
90 teams = [ lib.teams.pantheon ];
91 };
92}