about summary refs log tree commit diff
path: root/pkgs/desktops
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/desktops')
-rw-r--r--pkgs/desktops/gnome-3/3.22/apps/evolution/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/3.22/apps/polari/default.nix9
-rw-r--r--pkgs/desktops/gnome-3/3.22/apps/seahorse/default.nix12
-rw-r--r--pkgs/desktops/gnome-3/3.22/core/evolution-data-server/default.nix10
-rw-r--r--pkgs/desktops/gnome-3/3.22/core/gnome-contacts/default.nix16
-rw-r--r--pkgs/desktops/gnome-3/3.22/core/gnome-control-center/default.nix3
-rw-r--r--pkgs/desktops/gnome-3/3.22/core/gnome-font-viewer/default.nix10
-rw-r--r--pkgs/desktops/gnome-3/3.22/core/gnome-screenshot/default.nix10
-rw-r--r--pkgs/desktops/gnome-3/3.22/core/gnome-shell/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/3.22/core/gnome-system-log/default.nix10
-rw-r--r--pkgs/desktops/gnome-3/3.22/core/gnome-system-monitor/default.nix10
-rw-r--r--pkgs/desktops/gnome-3/3.22/core/tracker/default.nix14
-rw-r--r--pkgs/desktops/gnome-3/3.22/misc/pomodoro/default.nix4
-rw-r--r--pkgs/desktops/mate/caja/default.nix4
-rw-r--r--pkgs/desktops/mate/default.nix2
-rw-r--r--pkgs/desktops/mate/eom/default.nix42
-rw-r--r--pkgs/desktops/mate/mate-icon-theme-faenza/default.nix4
-rw-r--r--pkgs/desktops/mate/mate-icon-theme/default.nix4
-rw-r--r--pkgs/desktops/mate/mate-terminal/default.nix4
-rw-r--r--pkgs/desktops/mate/mate-themes/default.nix8
-rw-r--r--pkgs/desktops/mate/pluma/default.nix39
-rw-r--r--pkgs/desktops/xfce/applications/mousepad.nix2
-rw-r--r--pkgs/desktops/xfce/core/xfce4-light-locker.patch16
-rw-r--r--pkgs/desktops/xfce/core/xfce4-session.nix5
24 files changed, 176 insertions, 70 deletions
diff --git a/pkgs/desktops/gnome-3/3.22/apps/evolution/default.nix b/pkgs/desktops/gnome-3/3.22/apps/evolution/default.nix
index c802f9636eb1..8da7fab90371 100644
--- a/pkgs/desktops/gnome-3/3.22/apps/evolution/default.nix
+++ b/pkgs/desktops/gnome-3/3.22/apps/evolution/default.nix
@@ -2,7 +2,7 @@
 , pkgconfig, gtk3, glib, libnotify, gtkspell3
 , wrapGAppsHook, itstool, shared_mime_info, libical, db, gcr, sqlite
 , gnome3, librsvg, gdk_pixbuf, libsecret, nss, nspr, icu, libtool
-, libcanberra_gtk3, bogofilter, gst_all_1, procps, p11_kit, dconf, openldap}:
+, libcanberra_gtk3, bogofilter, gst_all_1, procps, p11_kit, openldap}:
 
 let
   majVer = gnome3.version;
@@ -23,7 +23,7 @@ in stdenv.mkDerivation rec {
                   libcanberra_gtk3 bogofilter gnome3.libgdata sqlite
                   gst_all_1.gstreamer gst_all_1.gst-plugins-base p11_kit
                   nss nspr libnotify procps highlight gnome3.libgweather
-                  gnome3.gsettings_desktop_schemas dconf
+                  gnome3.gsettings_desktop_schemas
                   gnome3.libgnome_keyring gnome3.glib_networking openldap ];
 
   nativeBuildInputs = [ pkgconfig wrapGAppsHook ];
diff --git a/pkgs/desktops/gnome-3/3.22/apps/polari/default.nix b/pkgs/desktops/gnome-3/3.22/apps/polari/default.nix
index a827831c801c..f14a1ef3c47d 100644
--- a/pkgs/desktops/gnome-3/3.22/apps/polari/default.nix
+++ b/pkgs/desktops/gnome-3/3.22/apps/polari/default.nix
@@ -1,15 +1,15 @@
 { stdenv, intltool, fetchurl, gdk_pixbuf, adwaita-icon-theme
 , telepathy_glib, gjs, itstool, telepathy_idle, libxml2
 , pkgconfig, gtk3, glib, librsvg, libsecret, libsoup
-, gnome3, wrapGAppsHook }:
+, gnome3, wrapGAppsHook, telepathy_logger }:
 
 stdenv.mkDerivation rec {
   inherit (import ./src.nix fetchurl) name src;
 
-  propagatedUserEnvPkgs = [ telepathy_idle ];
+  propagatedUserEnvPkgs = [ telepathy_idle telepathy_logger ];
 
-  buildInputs = [ pkgconfig gtk3 glib intltool itstool adwaita-icon-theme wrapGAppsHook
-                  telepathy_glib gjs gdk_pixbuf librsvg libxml2 libsecret libsoup ];
+  buildInputs = [ pkgconfig gtk3 glib intltool itstool adwaita-icon-theme wrapGAppsHook gnome3.gsettings_desktop_schemas
+                  telepathy_glib telepathy_logger gjs gdk_pixbuf librsvg libxml2 libsecret libsoup ];
 
   enableParallelBuilding = true;
 
@@ -19,6 +19,5 @@ stdenv.mkDerivation rec {
     maintainers = gnome3.maintainers;
     license = licenses.gpl2;
     platforms = platforms.linux;
-    broken = true;
   };
 }
diff --git a/pkgs/desktops/gnome-3/3.22/apps/seahorse/default.nix b/pkgs/desktops/gnome-3/3.22/apps/seahorse/default.nix
index e59df06f8a05..58d5a5b8cdc5 100644
--- a/pkgs/desktops/gnome-3/3.22/apps/seahorse/default.nix
+++ b/pkgs/desktops/gnome-3/3.22/apps/seahorse/default.nix
@@ -1,6 +1,6 @@
 { stdenv, intltool, fetchurl, vala_0_32
 , pkgconfig, gtk3, glib
-, makeWrapper, itstool, gnupg, libsoup
+, wrapGAppsHook, itstool, gnupg, libsoup
 , gnome3, librsvg, gdk_pixbuf, gpgme
 , libsecret, avahi, p11_kit, openssh }:
 
@@ -14,15 +14,15 @@ stdenv.mkDerivation rec {
   NIX_CFLAGS_COMPILE = "-I${gnome3.glib.dev}/include/gio-unix-2.0";
 
   buildInputs = [ pkgconfig gtk3 glib intltool itstool gnome3.gcr
-                  gnome3.gsettings_desktop_schemas makeWrapper gnupg
+                  gnome3.gsettings_desktop_schemas wrapGAppsHook gnupg
                   gdk_pixbuf gnome3.defaultIconTheme librsvg gpgme
-                  libsecret avahi libsoup p11_kit vala_0_32 gnome3.gcr
+                  libsecret avahi libsoup p11_kit vala_0_32
                   openssh ];
 
   preFixup = ''
-    wrapProgram "$out/bin/seahorse" \
-      --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
-      --prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
+    gappsWrapperArgs+=(
+      --prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share"
+    )
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/3.22/core/evolution-data-server/default.nix b/pkgs/desktops/gnome-3/3.22/core/evolution-data-server/default.nix
index b67795ea59c1..c2038ecdce60 100644
--- a/pkgs/desktops/gnome-3/3.22/core/evolution-data-server/default.nix
+++ b/pkgs/desktops/gnome-3/3.22/core/evolution-data-server/default.nix
@@ -1,4 +1,4 @@
-{ fetchurl, stdenv, pkgconfig, gnome3, python
+{ fetchurl, stdenv, pkgconfig, gnome3, python, dconf
 , intltool, libsoup, libxml2, libsecret, icu, sqlite
 , p11_kit, db, nspr, nss, libical, gperf, makeWrapper, valaSupport ? true, vala_0_32 }:
 
@@ -6,7 +6,7 @@ stdenv.mkDerivation rec {
   inherit (import ./src.nix fetchurl) name src;
 
   buildInputs = with gnome3;
-    [ pkgconfig glib python intltool libsoup libxml2 gtk gnome_online_accounts
+    [ pkgconfig glib python intltool libsoup libxml2 gtk gnome_online_accounts (stdenv.lib.getLib dconf)
       gcr p11_kit libgweather libgdata gperf makeWrapper icu sqlite gsettings_desktop_schemas ]
     ++ stdenv.lib.optional valaSupport vala_0_32;
 
@@ -19,8 +19,10 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   preFixup = ''
-    for f in "$out/libexec/"*; do
-      wrapProgram "$f" --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
+    for f in $(find $out/libexec/ -type f -executable); do
+      wrapProgram "$f" \
+        --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH" \
+        --prefix GIO_EXTRA_MODULES : "${stdenv.lib.getLib dconf}/lib/gio/modules"
     done
   '';
 
diff --git a/pkgs/desktops/gnome-3/3.22/core/gnome-contacts/default.nix b/pkgs/desktops/gnome-3/3.22/core/gnome-contacts/default.nix
index 8097cf32ba6e..66cc2cb24c73 100644
--- a/pkgs/desktops/gnome-3/3.22/core/gnome-contacts/default.nix
+++ b/pkgs/desktops/gnome-3/3.22/core/gnome-contacts/default.nix
@@ -1,9 +1,9 @@
 { stdenv, intltool, fetchurl, evolution_data_server, db
 , pkgconfig, gtk3, glib, libsecret
 , libchamplain, clutter_gtk, geocode_glib
-, bash, makeWrapper, itstool, folks, libnotify, libxml2
+, bash, wrapGAppsHook, itstool, folks, libnotify, libxml2
 , gnome3, librsvg, gdk_pixbuf, file, telepathy_glib, nspr, nss
-, libsoup, vala_0_32, dbus_glib, automake115x, autoconf }:
+, libsoup, vala_0_32, dbus_glib, automake, autoconf }:
 
 stdenv.mkDerivation rec {
   inherit (import ./src.nix fetchurl) name src;
@@ -18,19 +18,17 @@ stdenv.mkDerivation rec {
   '';
 
   buildInputs = [ pkgconfig gtk3 glib intltool itstool evolution_data_server
-                  gnome3.gsettings_desktop_schemas makeWrapper file libnotify
+                  gnome3.gsettings_desktop_schemas wrapGAppsHook file libnotify
                   folks gnome3.gnome_desktop telepathy_glib libsecret dbus_glib
                   libxml2 libsoup gnome3.gnome_online_accounts nspr nss
                   gdk_pixbuf gnome3.defaultIconTheme librsvg
                   libchamplain clutter_gtk geocode_glib
-                  vala_0_32 automake115x autoconf db ];
+                  vala_0_32 automake autoconf db ];
 
   preFixup = ''
-    for f in "$out/bin/gnome-contacts" "$out/libexec/gnome-contacts-search-provider"; do
-      wrapProgram $f \
-        --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
-        --prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
-    done
+    gappsWrapperArgs+=(
+      --prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share"
+    )
   '';
 
   patches = [ ./gio_unix.patch ];
diff --git a/pkgs/desktops/gnome-3/3.22/core/gnome-control-center/default.nix b/pkgs/desktops/gnome-3/3.22/core/gnome-control-center/default.nix
index 23d32cdbac30..b116c2902da3 100644
--- a/pkgs/desktops/gnome-3/3.22/core/gnome-control-center/default.nix
+++ b/pkgs/desktops/gnome-3/3.22/core/gnome-control-center/default.nix
@@ -39,6 +39,9 @@ stdenv.mkDerivation rec {
   '';
 
   preFixup = with gnome3; ''
+    gappsWrapperArgs+=(
+      --prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:${sound-theme-freedesktop}/share"
+    )
     for i in $out/share/applications/*; do
       substituteInPlace $i --replace "gnome-control-center" "$out/bin/gnome-control-center"
     done
diff --git a/pkgs/desktops/gnome-3/3.22/core/gnome-font-viewer/default.nix b/pkgs/desktops/gnome-3/3.22/core/gnome-font-viewer/default.nix
index d0ec2307a852..16d7151ea096 100644
--- a/pkgs/desktops/gnome-3/3.22/core/gnome-font-viewer/default.nix
+++ b/pkgs/desktops/gnome-3/3.22/core/gnome-font-viewer/default.nix
@@ -1,6 +1,6 @@
 { stdenv, intltool, fetchurl
 , pkgconfig, gtk3, glib
-, bash, makeWrapper, itstool
+, bash, wrapGAppsHook, itstool
 , gnome3, librsvg, gdk_pixbuf }:
 
 stdenv.mkDerivation rec {
@@ -14,12 +14,12 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ pkgconfig gtk3 glib intltool itstool gnome3.gnome_desktop
                   gdk_pixbuf gnome3.defaultIconTheme librsvg
-                  gnome3.gsettings_desktop_schemas makeWrapper ];
+                  gnome3.gsettings_desktop_schemas wrapGAppsHook ];
 
   preFixup = ''
-    wrapProgram "$out/bin/gnome-font-viewer" \
-      --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
-      --prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
+    gappsWrapperArgs+=(
+      --prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share"
+    )
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/3.22/core/gnome-screenshot/default.nix b/pkgs/desktops/gnome-3/3.22/core/gnome-screenshot/default.nix
index 8d3e15d00354..34f8cee625aa 100644
--- a/pkgs/desktops/gnome-3/3.22/core/gnome-screenshot/default.nix
+++ b/pkgs/desktops/gnome-3/3.22/core/gnome-screenshot/default.nix
@@ -1,5 +1,5 @@
 { stdenv, intltool, fetchurl, pkgconfig, libcanberra_gtk3
-, bash, gtk3, glib, makeWrapper
+, bash, gtk3, glib, wrapGAppsHook
 , itstool, gnome3, librsvg, gdk_pixbuf }:
 
 stdenv.mkDerivation rec {
@@ -13,12 +13,12 @@ stdenv.mkDerivation rec {
   propagatedBuildInputs = [ gdk_pixbuf gnome3.defaultIconTheme librsvg ];
 
   buildInputs = [ bash pkgconfig gtk3 glib intltool itstool libcanberra_gtk3
-                  gnome3.gsettings_desktop_schemas makeWrapper ];
+                  gnome3.gsettings_desktop_schemas wrapGAppsHook ];
 
   preFixup = ''
-    wrapProgram "$out/bin/gnome-screenshot" \
-      --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
-      --prefix XDG_DATA_DIRS : "${gtk3.out}/share:${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
+    gappsWrapperArgs+=(
+      --prefix XDG_DATA_DIRS : "${gtk3.out}/share:${gnome3.gnome_themes_standard}/share"
+    )
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/3.22/core/gnome-shell/default.nix b/pkgs/desktops/gnome-3/3.22/core/gnome-shell/default.nix
index 8f77b7e5e3b1..2ce3f9e39271 100644
--- a/pkgs/desktops/gnome-3/3.22/core/gnome-shell/default.nix
+++ b/pkgs/desktops/gnome-3/3.22/core/gnome-shell/default.nix
@@ -26,7 +26,7 @@ in stdenv.mkDerivation rec {
       libgweather # not declared at build time, but typelib is needed at runtime
       gnome3.gnome-clocks # schemas needed
       at_spi2_core upower ibus gnome_desktop telepathy_logger gnome3.gnome_settings_daemon
-      pythonEnv gobjectIntrospection ];
+      pythonEnv gobjectIntrospection (stdenv.lib.getLib dconf) ];
 
   installFlags = [ "keysdir=$(out)/share/gnome-control-center/keybindings" ];
 
@@ -39,11 +39,13 @@ in stdenv.mkDerivation rec {
     wrapProgram "$out/bin/gnome-shell" \
       --prefix PATH : "${unzip}/bin" \
       --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
+      --prefix GIO_EXTRA_MODULES : "${stdenv.lib.getLib dconf}/lib/gio/modules" \
       --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
       --prefix XDG_DATA_DIRS : "${gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS" \
       --suffix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
 
     wrapProgram "$out/libexec/gnome-shell-calendar-server" \
+      --prefix GIO_EXTRA_MODULES : "${stdenv.lib.getLib dconf}/lib/gio/modules" \
       --prefix XDG_DATA_DIRS : "${evolution_data_server}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
 
     echo "${unzip}/bin" > $out/${passthru.mozillaPlugin}/extra-bin-path
diff --git a/pkgs/desktops/gnome-3/3.22/core/gnome-system-log/default.nix b/pkgs/desktops/gnome-3/3.22/core/gnome-system-log/default.nix
index 50ee229cfa49..aa6f48ac420b 100644
--- a/pkgs/desktops/gnome-3/3.22/core/gnome-system-log/default.nix
+++ b/pkgs/desktops/gnome-3/3.22/core/gnome-system-log/default.nix
@@ -1,5 +1,5 @@
 { stdenv, intltool, fetchurl, pkgconfig
-, bash, gtk3, glib, makeWrapper
+, bash, gtk3, glib, wrapGAppsHook
 , itstool, gnome3, librsvg, gdk_pixbuf, libxml2 }:
 
 stdenv.mkDerivation rec {
@@ -18,12 +18,12 @@ stdenv.mkDerivation rec {
   propagatedBuildInputs = [ gdk_pixbuf gnome3.defaultIconTheme librsvg ];
 
   buildInputs = [ bash pkgconfig gtk3 glib intltool itstool
-                  gnome3.gsettings_desktop_schemas makeWrapper libxml2 ];
+                  gnome3.gsettings_desktop_schemas wrapGAppsHook libxml2 ];
 
   preFixup = ''
-    wrapProgram "$out/bin/gnome-system-log" \
-      --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
-      --prefix XDG_DATA_DIRS : "${gtk3.out}/share:${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
+    gappsWrapperArgs+=(
+      --prefix XDG_DATA_DIRS : "${gtk3.out}/share:${gnome3.gnome_themes_standard}/share"
+    )
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/3.22/core/gnome-system-monitor/default.nix b/pkgs/desktops/gnome-3/3.22/core/gnome-system-monitor/default.nix
index bdbdefecf229..8c3bf86edcfe 100644
--- a/pkgs/desktops/gnome-3/3.22/core/gnome-system-monitor/default.nix
+++ b/pkgs/desktops/gnome-3/3.22/core/gnome-system-monitor/default.nix
@@ -1,5 +1,5 @@
 { stdenv, intltool, fetchurl, pkgconfig, gtkmm3, libxml2
-, bash, gtk3, glib, makeWrapper
+, bash, gtk3, glib, wrapGAppsHook
 , itstool, gnome3, librsvg, gdk_pixbuf, libgtop }:
 
 stdenv.mkDerivation rec {
@@ -10,14 +10,14 @@ stdenv.mkDerivation rec {
   propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
 
   buildInputs = [ bash pkgconfig gtk3 glib intltool itstool libxml2
-                  gtkmm3 libgtop makeWrapper
+                  gtkmm3 libgtop wrapGAppsHook
                   gdk_pixbuf gnome3.defaultIconTheme librsvg
                   gnome3.gsettings_desktop_schemas ];
 
   preFixup = ''
-    wrapProgram "$out/bin/gnome-system-monitor" \
-      --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
-      --prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
+    gappsWrapperArgs+=(
+      --prefix XDG_DATA_DIRS : "${gtk3.out}/share:${gnome3.gnome_themes_standard}/share"
+    )
   '';
 
   enableParallelBuilding = true;
diff --git a/pkgs/desktops/gnome-3/3.22/core/tracker/default.nix b/pkgs/desktops/gnome-3/3.22/core/tracker/default.nix
index 72ebd543e902..b086e3860597 100644
--- a/pkgs/desktops/gnome-3/3.22/core/tracker/default.nix
+++ b/pkgs/desktops/gnome-3/3.22/core/tracker/default.nix
@@ -1,6 +1,6 @@
 { stdenv, intltool, fetchurl, libxml2, upower
 , pkgconfig, gtk3, glib
-, bash, makeWrapper, itstool, vala_0_32, sqlite, libxslt
+, bash, wrapGAppsHook, itstool, vala_0_32, sqlite, libxslt
 , gnome3, librsvg, gdk_pixbuf, file, libnotify
 , evolution_data_server, gst_all_1, poppler
 , icu, taglib, libjpeg, libtiff, giflib, libcue
@@ -19,8 +19,8 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ vala_0_32 pkgconfig gtk3 glib intltool itstool libxml2
                   bzip2 gnome3.totem-pl-parser libxslt
-                  gnome3.gsettings_desktop_schemas makeWrapper file
-                  gdk_pixbuf gnome3.defaultIconTheme librsvg sqlite
+                  gnome3.gsettings_desktop_schemas wrapGAppsHook
+                  file gdk_pixbuf gnome3.defaultIconTheme librsvg sqlite
                   upower libnotify evolution_data_server gnome3.libgee
                   gst_all_1.gstreamer gst_all_1.gst-plugins-base flac
                   poppler icu taglib libjpeg libtiff giflib libvorbis
@@ -31,11 +31,9 @@ stdenv.mkDerivation rec {
   '';
 
   preFixup = ''
-    for f in $out/bin/* $out/libexec/*; do
-      wrapProgram $f \
-        --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
-        --prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
-    done
+    gappsWrapperArgs+=(
+      --prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share"
+    )
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/3.22/misc/pomodoro/default.nix b/pkgs/desktops/gnome-3/3.22/misc/pomodoro/default.nix
index 3ceabe70ad80..37cdfc730ab8 100644
--- a/pkgs/desktops/gnome-3/3.22/misc/pomodoro/default.nix
+++ b/pkgs/desktops/gnome-3/3.22/misc/pomodoro/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, which, automake113x, intltool, pkgconfig, libtool, makeWrapper,
+{ stdenv, fetchFromGitHub, which, intltool, pkgconfig, libtool, makeWrapper,
   dbus_glib, libcanberra_gtk2, gst_all_1, vala_0_32, gnome3, gtk3, gst-plugins-base,
   glib, gobjectIntrospection, telepathy_glib
 }:
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   configureScript = ''./autogen.sh'';
 
   buildInputs = [
-    which automake113x intltool glib gobjectIntrospection pkgconfig libtool
+    which intltool glib gobjectIntrospection pkgconfig libtool
     makeWrapper dbus_glib libcanberra_gtk2 vala_0_32 gst_all_1.gstreamer
     gst_all_1.gst-plugins-base gst_all_1.gst-plugins-good
     gnome3.gsettings_desktop_schemas gnome3.gnome_desktop
diff --git a/pkgs/desktops/mate/caja/default.nix b/pkgs/desktops/mate/caja/default.nix
index d068f432ee95..07c7d0662a97 100644
--- a/pkgs/desktops/mate/caja/default.nix
+++ b/pkgs/desktops/mate/caja/default.nix
@@ -4,11 +4,11 @@ stdenv.mkDerivation rec {
   name = "caja-${version}";
   version = "${major-ver}.${minor-ver}";
   major-ver = "1.18";
-  minor-ver = "0";
+  minor-ver = "3";
 
   src = fetchurl {
     url = "http://pub.mate-desktop.org/releases/${major-ver}/${name}.tar.xz";
-    sha256 = "1fc7dxj9hw8fffrcnwxbj8pq7gl08il68rkpk92rv3qm7siv1606";
+    sha256 = "0mljqcx7k8p27854zm7qzzn8ca6hs7hva9p43hp4p507z52caqmm";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/mate/default.nix b/pkgs/desktops/mate/default.nix
index 528f792a600d..81839930664a 100644
--- a/pkgs/desktops/mate/default.nix
+++ b/pkgs/desktops/mate/default.nix
@@ -2,6 +2,8 @@
 rec {
   atril = callPackage ./atril { };
   caja = callPackage ./caja { };
+  eom = callPackage ./eom { };
+  pluma = callPackage ./pluma { };
   mate-common = callPackage ./mate-common { };
   mate-desktop = callPackage ./mate-desktop { };
   mate-icon-theme = callPackage ./mate-icon-theme { };
diff --git a/pkgs/desktops/mate/eom/default.nix b/pkgs/desktops/mate/eom/default.nix
new file mode 100644
index 000000000000..1c27958b0c97
--- /dev/null
+++ b/pkgs/desktops/mate/eom/default.nix
@@ -0,0 +1,42 @@
+{ stdenv, fetchurl, pkgconfig, intltool, itstool, dbus_glib, exempi, lcms2, libexif, libjpeg, librsvg, libxml2, shared_mime_info, gnome3, mate, wrapGAppsHook }:
+
+stdenv.mkDerivation rec {
+  name = "eom-${version}";
+  version = "${major-ver}.${minor-ver}";
+  major-ver = "1.18";
+  minor-ver = "2";
+
+  src = fetchurl {
+    url = "http://pub.mate-desktop.org/releases/${major-ver}/${name}.tar.xz";
+    sha256 = "00ns7g7qykakc89lijrw2vwy9x9ijqiyvmnd4sw0j6py90zs8m87";
+  };
+
+  nativeBuildInputs = [
+    pkgconfig
+    intltool
+    itstool
+    wrapGAppsHook
+  ];
+
+  buildInputs = [
+    dbus_glib
+    exempi
+    lcms2
+    libexif
+    libjpeg
+    librsvg
+    libxml2
+    shared_mime_info
+    gnome3.gtk
+    gnome3.libpeas
+    mate.mate-desktop
+  ];
+
+  meta = {
+    description = "An image viewing and cataloging program for the MATE desktop";
+    homepage = http://mate-desktop.org;
+    license = stdenv.lib.licenses.gpl2;
+    platforms = stdenv.lib.platforms.unix;
+    maintainers = [ stdenv.lib.maintainers.romildo ];
+  };
+}
diff --git a/pkgs/desktops/mate/mate-icon-theme-faenza/default.nix b/pkgs/desktops/mate/mate-icon-theme-faenza/default.nix
index ddc6d81499da..05edfc1dd6d4 100644
--- a/pkgs/desktops/mate/mate-icon-theme-faenza/default.nix
+++ b/pkgs/desktops/mate/mate-icon-theme-faenza/default.nix
@@ -4,11 +4,11 @@ stdenv.mkDerivation rec {
   name = "mate-icon-theme-faenza-${version}";
   version = "${major-ver}.${minor-ver}";
   major-ver = "1.18";
-  minor-ver = "0";
+  minor-ver = "1";
 
   src = fetchurl {
     url = "http://pub.mate-desktop.org/releases/${major-ver}/${name}.tar.xz";
-    sha256 = "1crfv6s3ljbc7a7m229bvs3qbjzlp8cgvyhqmdaa9npd5lxmk88v";
+    sha256 = "0vc3wg9l5yrxm0xmligz4lw2g3nqj1dz8fwv90xvym8pbjds2849";
   };
 
   nativeBuildInputs = [ autoreconfHook ];
diff --git a/pkgs/desktops/mate/mate-icon-theme/default.nix b/pkgs/desktops/mate/mate-icon-theme/default.nix
index 3a2de515ba9a..239a01c759af 100644
--- a/pkgs/desktops/mate/mate-icon-theme/default.nix
+++ b/pkgs/desktops/mate/mate-icon-theme/default.nix
@@ -4,11 +4,11 @@ stdenv.mkDerivation rec {
   name = "mate-icon-theme-${version}";
   version = "${major-ver}.${minor-ver}";
   major-ver = "1.18";
-  minor-ver = "1";
+  minor-ver = "2";
 
   src = fetchurl {
     url = "http://pub.mate-desktop.org/releases/${major-ver}/${name}.tar.xz";
-    sha256 = "1217nza3ilmy6x3b9i1b75lpq7lpvhs18s0c2n3j6zhxdqy61nlm";
+    sha256 = "0si3li3kza7s45zhasjvqn5f85zpkn0x8i4kq1dlnqvjjqzkg4ch";
   };
 
   nativeBuildInputs = [ pkgconfig intltool iconnamingutils ];
diff --git a/pkgs/desktops/mate/mate-terminal/default.nix b/pkgs/desktops/mate/mate-terminal/default.nix
index 532e50c45495..9d620b283018 100644
--- a/pkgs/desktops/mate/mate-terminal/default.nix
+++ b/pkgs/desktops/mate/mate-terminal/default.nix
@@ -4,11 +4,11 @@ stdenv.mkDerivation rec {
   name = "mate-terminal-${version}";
   version = "${major-ver}.${minor-ver}";
   major-ver = "1.18";
-  minor-ver = "0";
+  minor-ver = "1";
 
   src = fetchurl {
     url = "http://pub.mate-desktop.org/releases/${major-ver}/${name}.tar.xz";
-    sha256 = "07z8g8zkc8k6d7xqdlg18cjnwg7zzv5hbgwma5y9mh8zx9xsqz92";
+    sha256 = "1zihm609d2d9cw53ry385whshjl1dnkifpk41g1ddm9f58hv4da1";
   };
 
   buildInputs = [
diff --git a/pkgs/desktops/mate/mate-themes/default.nix b/pkgs/desktops/mate/mate-themes/default.nix
index 793c68e688a5..45be1d8710d7 100644
--- a/pkgs/desktops/mate/mate-themes/default.nix
+++ b/pkgs/desktops/mate/mate-themes/default.nix
@@ -6,15 +6,15 @@ stdenv.mkDerivation rec {
   version = "${major-ver}.${minor-ver}";
   major-ver = gnome3.version;
   minor-ver = {
-    "3.20" = "19";
-    "3.22" = "10";
+    "3.20" = "22";
+    "3.22" = "13";
   }."${major-ver}";
 
   src = fetchurl {
     url = "http://pub.mate-desktop.org/releases/themes/${major-ver}/${name}.tar.xz";
     sha256 = {
-      "3.20" = "11b8g374dkjhbs7x7khpriabvkip4dmfkma5myzfv6m54qlj3b8g";
-      "3.22" = "03ficjfxa4qpx4vcshhk2zxryivckxpw7wcjgbn8xqnjk3lgzjcb";
+      "3.20" = "1yjj5w7zvyjyg0k21nwk438jjsnj0qklsf0z5pmmp1jff1vxyck4";
+      "3.22" = "1p7w63an8qs15hkj79nppy7471glv0rm1b0himn3c4w69q8qdc9i";
     }."${major-ver}";
   };
 
diff --git a/pkgs/desktops/mate/pluma/default.nix b/pkgs/desktops/mate/pluma/default.nix
new file mode 100644
index 000000000000..a290c404469c
--- /dev/null
+++ b/pkgs/desktops/mate/pluma/default.nix
@@ -0,0 +1,39 @@
+{ stdenv, fetchurl, pkgconfig, intltool, itstool, isocodes, enchant, libxml2, python, gnome3, mate, wrapGAppsHook }:
+
+stdenv.mkDerivation rec {
+  name = "pluma-${version}";
+  version = "${major-ver}.${minor-ver}";
+  major-ver = "1.18";
+  minor-ver = "2";
+
+  src = fetchurl {
+    url = "http://pub.mate-desktop.org/releases/${major-ver}/${name}.tar.xz";
+    sha256 = "1z0938yiygxipj2a77n9dv8v4253snrc5gbbnarcnim9xba2j3zz";
+  };
+
+  nativeBuildInputs = [
+    pkgconfig
+    intltool
+    itstool
+    isocodes
+    wrapGAppsHook
+  ];
+
+  buildInputs = [
+    enchant
+    libxml2
+    python
+    gnome3.gtksourceview
+    gnome3.libpeas
+    gnome3.defaultIconTheme
+    mate.mate-desktop
+  ];
+
+  meta = {
+    description = "Powerful text editor for the MATE desktop";
+    homepage = http://mate-desktop.org;
+    license = stdenv.lib.licenses.gpl2;
+    platforms = stdenv.lib.platforms.unix;
+    maintainers = [ stdenv.lib.maintainers.romildo ];
+  };
+}
diff --git a/pkgs/desktops/xfce/applications/mousepad.nix b/pkgs/desktops/xfce/applications/mousepad.nix
index 475b48343a57..c15ab310f47b 100644
--- a/pkgs/desktops/xfce/applications/mousepad.nix
+++ b/pkgs/desktops/xfce/applications/mousepad.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
   preFixup = ''
     wrapProgram "$out/bin/mousepad" \
       --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH:${gtksourceview}/share" \
-      --prefix GIO_EXTRA_MODULES : "${dconf}/lib/gio/modules"
+      --prefix GIO_EXTRA_MODULES : "${stdenv.lib.getLib dconf}/lib/gio/modules"
   '';
 
   meta = {
diff --git a/pkgs/desktops/xfce/core/xfce4-light-locker.patch b/pkgs/desktops/xfce/core/xfce4-light-locker.patch
new file mode 100644
index 000000000000..4e1dcc1efa71
--- /dev/null
+++ b/pkgs/desktops/xfce/core/xfce4-light-locker.patch
@@ -0,0 +1,16 @@
+--- ./scripts/xflock4.orig	2017-08-06 23:05:53.807688995 +0100
++++ ./scripts/xflock4	2017-08-06 23:09:06.171789989 +0100
+@@ -24,10 +24,11 @@
+ PATH=/bin:/usr/bin
+ export PATH
+
+-# Lock by xscreensaver or gnome-screensaver, if a respective daemon is running
++# Lock by xscreensaver, gnome-screensaver or light-locker, if a respective daemon is running
+ for lock_cmd in \
+     "xscreensaver-command -lock" \
+-    "gnome-screensaver-command --lock"
++    "gnome-screensaver-command --lock" \
++    "light-locker-command -l"
+ do
+     $lock_cmd >/dev/null 2>&1 && exit
+ done
diff --git a/pkgs/desktops/xfce/core/xfce4-session.nix b/pkgs/desktops/xfce/core/xfce4-session.nix
index a0568b0dd395..edc810d38972 100644
--- a/pkgs/desktops/xfce/core/xfce4-session.nix
+++ b/pkgs/desktops/xfce/core/xfce4-session.nix
@@ -16,6 +16,11 @@ stdenv.mkDerivation rec {
     sha256 = "97d7f2a2d0af7f3623b68d1f04091e02913b28f9555dab8b0d26c8a1299d08fd";
   };
 
+  patches = [
+    # Fix "lock screen" not working for light-locker
+    ./xfce4-light-locker.patch
+  ];
+
   buildInputs =
     [ pkgconfig intltool gtk libxfce4util libxfce4ui libwnck dbus_glib
       xfconf xfce4panel libglade xorg.iceauth xorg.libSM