summary refs log tree commit diff
path: root/pkgs/development/libraries/libwnck/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/libraries/libwnck/default.nix')
-rw-r--r--pkgs/development/libraries/libwnck/default.nix80
1 files changed, 63 insertions, 17 deletions
diff --git a/pkgs/development/libraries/libwnck/default.nix b/pkgs/development/libraries/libwnck/default.nix
index fd7d80574a7..39a1d505b65 100644
--- a/pkgs/development/libraries/libwnck/default.nix
+++ b/pkgs/development/libraries/libwnck/default.nix
@@ -1,30 +1,76 @@
-{ lib, stdenv, fetchurl, pkg-config, gtk2, intltool, xorg }:
+{ lib, stdenv
+, fetchurl
+, fetchpatch
+, meson
+, ninja
+, pkg-config
+, gtk-doc
+, docbook_xsl
+, docbook_xml_dtd_412
+, libX11
+, glib
+, gtk3
+, pango
+, cairo
+, libXres
+, libstartup_notification
+, gettext
+, gobject-introspection
+, gnome
+}:
 
 stdenv.mkDerivation rec {
   pname = "libwnck";
-  version = "2.31.0";
+  version = "3.36.0";
+
+  outputs = [ "out" "dev" "devdoc" ];
+  outputBin = "dev";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "17isfjvrzgj5znld2a7zsk9vd39q9wnsysnw5jr8iz410z935xw3";
+    sha256 = "0pwjdhca9lz2n1gf9b60xf0m6ipf9snp8rqf9csj4pgdnd882l5w";
   };
 
-  outputs = [ "out" "dev" "devdoc" ];
-  outputBin = "dev";
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+    gettext
+    gobject-introspection
+    gtk-doc
+    docbook_xsl
+    docbook_xml_dtd_412
+  ];
+
+  buildInputs = [
+    libX11
+    libstartup_notification
+    pango
+    cairo
+    libXres
+  ];
 
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ gtk2 intltool xorg.libX11 xorg.libXres ];
-  # ?another optional: startup-notification
+  propagatedBuildInputs = [
+    glib
+    gtk3
+  ];
 
-  configureFlags = [ "--disable-introspection" ]; # not needed anywhere AFAIK
+  mesonFlags = [
+    "-Dgtk_doc=true"
+  ];
+
+  passthru = {
+    updateScript = gnome.updateScript {
+      packageName = pname;
+      attrPath = "${pname}${lib.versions.major version}";
+      versionPolicy = "odd-unstable";
+    };
+  };
 
-  meta = {
-    description = "A library for creating task lists and pagers";
-    homepage = "https://gitlab.gnome.org/GNOME/libwnck";
-    license = lib.licenses.lgpl21;
-    maintainers = with lib.maintainers; [ johnazoidberg ];
-    # ./xutils.h:31:10: fatal error: 'gdk/gdkx.h' file not found
-    # #include <gdk/gdkx.h>
-    broken = stdenv.isDarwin;
+  meta = with lib; {
+    description = "Library to manage X windows and workspaces (via pagers, tasklists, etc.)";
+    license = licenses.lgpl21Plus;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ liff ];
   };
 }