about summary refs log tree commit diff
path: root/nixpkgs/pkgs/desktops/deepin
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/desktops/deepin')
-rw-r--r--nixpkgs/pkgs/desktops/deepin/dde-api/default.nix30
-rw-r--r--nixpkgs/pkgs/desktops/deepin/dde-api/deps.nix16
-rw-r--r--nixpkgs/pkgs/desktops/deepin/dde-daemon/default.nix22
-rw-r--r--nixpkgs/pkgs/desktops/deepin/dde-daemon/deps.nix34
-rw-r--r--nixpkgs/pkgs/desktops/deepin/dde-dock/dde-dock.plugins-dir.patch39
-rw-r--r--nixpkgs/pkgs/desktops/deepin/dde-dock/default.nix87
-rw-r--r--nixpkgs/pkgs/desktops/deepin/dde-dock/wrapper.nix21
-rw-r--r--nixpkgs/pkgs/desktops/deepin/dde-network-utils/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/deepin/dde-polkit-agent/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/deepin/dde-session-ui/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/deepin/deepin-anything/default.nix64
-rw-r--r--nixpkgs/pkgs/desktops/deepin/deepin-desktop-base/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/deepin/deepin-icon-theme/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/deepin/deepin-image-viewer/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/deepin/deepin-menu/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/deepin/deepin-movie-reborn/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/deepin/deepin-mutter/deepin-mutter.plugins-dir.patch41
-rw-r--r--nixpkgs/pkgs/desktops/deepin/deepin-mutter/default.nix11
-rw-r--r--nixpkgs/pkgs/desktops/deepin/deepin-screenshot/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/deepin/deepin-terminal/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/deepin/deepin-turbo/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/deepin/deepin-wm/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/deepin/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/deepin/dtkcore/default.nix14
-rw-r--r--nixpkgs/pkgs/desktops/deepin/dtkwidget/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/deepin/dtkwm/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/deepin/go-dbus-factory/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/deepin/go-gir-generator/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/deepin/go-lib/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/deepin/qcef/default.nix5
-rw-r--r--nixpkgs/pkgs/desktops/deepin/qt5dxcb-plugin/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/deepin/qt5integration/default.nix4
-rwxr-xr-xnixpkgs/pkgs/desktops/deepin/setup-hook.sh27
33 files changed, 394 insertions, 97 deletions
diff --git a/nixpkgs/pkgs/desktops/deepin/dde-api/default.nix b/nixpkgs/pkgs/desktops/deepin/dde-api/default.nix
index 8db376e01fd7..76c0861cb3a7 100644
--- a/nixpkgs/pkgs/desktops/deepin/dde-api/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/dde-api/default.nix
@@ -26,7 +26,7 @@
 buildGoPackage rec {
   name = "${pname}-${version}";
   pname = "dde-api";
-  version = "3.18.1";
+  version = "3.18.3";
 
   goPackagePath = "pkg.deepin.io/dde/api";
 
@@ -34,7 +34,7 @@ buildGoPackage rec {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "0y8v18f6l3ycysdn4qi7c93z805q7alji8wix4j4qh9x9r35d728";
+    sha256 = "0sbzjpjy2d7j22v5sw3mf472lcnsy81n2rgly87k79r5gk9x89ar";
   };
 
   goDeps = ./deps.nix;
@@ -68,15 +68,10 @@ buildGoPackage rec {
     rfkill      # run
     xcur2png    # run
     #locales     # run (locale-helper needs locale-gen, which is unavailable on NixOS?)
- ];
+  ];
 
   postPatch = ''
-    searchHardCodedPaths # debugging
-
-    sed -i -e "s|/var|$out/var|" Makefile
-
-    # TODO: confirm where to install grub themes
-    sed -i -e "s|/boot/grub|$out/boot/grub|" Makefile
+    searchHardCodedPaths  # debugging
 
     fixPath $out /usr/lib/deepin-api \
       lunar-calendar/main.go \
@@ -90,6 +85,19 @@ buildGoPackage rec {
       misc/systemd/system/deepin-shutdown-sound.service \
       theme_thumb/gtk/gtk.go \
       thumbnails/gtk/gtk.go
+    fixPath $out /boot/grub Makefile     # TODO: confirm where to install grub themes
+    fixPath $out /var Makefile
+
+    # This package wants to install polkit local authority files into
+    # /var/lib. Nix does not allow a package to install files into /var/lib
+    # because it is outside of the Nix store and should contain applications
+    # state information (persistent data modified by programs as they
+    # run). Polkit looks for them in both /etc/polkit-1 and
+    # /var/lib/polkit-1 (with /etc having priority over /var/lib). An
+    # work around is to install them to $out/etc and simlnk them to
+    # /etc in the deepin module.
+
+    sed -i -e "s,/var/lib/polkit-1,/etc/polkit-1," Makefile
   '';
 
   buildPhase = ''
@@ -103,6 +111,10 @@ buildGoPackage rec {
     remove-references-to -t ${go} $out/bin/* $out/lib/deepin-api/*
   '';
 
+  postFixup = ''
+    searchHardCodedPaths $out  # debugging
+  '';
+
   passthru.updateScript = deepin.updateScript { inherit name; };
 
   meta = with stdenv.lib; {
diff --git a/nixpkgs/pkgs/desktops/deepin/dde-api/deps.nix b/nixpkgs/pkgs/desktops/deepin/dde-api/deps.nix
index 03758f0d43e1..380f07d3d194 100644
--- a/nixpkgs/pkgs/desktops/deepin/dde-api/deps.nix
+++ b/nixpkgs/pkgs/desktops/deepin/dde-api/deps.nix
@@ -41,8 +41,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/fogleman/gg";
-      rev = "0403632d5b905943a1c2a5b2763aaecd568467ec";
-      sha256 = "1nkldjghbqnzj2djfaxhiv35kk341xhcrj9m2dwq65v684iqkk8n";
+      rev = "72436a171bf31757dc87fb8fa9f7485307350307";
+      sha256 = "116ysxj7nv9zw5ff75p2mriwf6fx4qzdik9za8cy0l0vih78qvjq";
     };
   }
   {
@@ -59,8 +59,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/linuxdeepin/go-x11-client";
-      rev = "48c75d615ef634d9b1c24f8e8a30f56201b4f561";
-      sha256 = "1x2i9wg6lyskls5qi3d2r84bdhyhgi8v1d8scxx9ysjaw9di9ldl";
+      rev = "b5b01565d224d5ccd5a4143d9099acceb23e182a";
+      sha256 = "1lnffjp8bqy6f8caw6drg1js6hny5w7432riqchcrcd4q85d94rs";
     };
   }
   {
@@ -77,8 +77,8 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/image";
-      rev = "3fc05d484e9f77dd51816890e05f2602e4ca4d65";
-      sha256 = "0mcip8jpz2061j1z658rfskphc92wv6sapy81p95bnjdymi562k3";
+      rev = "6d32002ffd7577f23673706728e1c510698cecb1";
+      sha256 = "03jzn07kfgdzzm4785xngcksv9ix6q1lf12b8j91flc0v7swsd1b";
     };
   }
   {
@@ -86,8 +86,8 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/net";
-      rev = "74de082e2cca95839e88aa0aeee5aadf6ce7710f";
-      sha256 = "0a4y3y0q5bkif7wvdkyjkvgnzlbh2n4zk7wsy5j95raf0i3zlw4s";
+      rev = "f4e77d36d62c17c2336347bb2670ddbd02d092b7";
+      sha256 = "0avjnglqqg9ya0cbhp23m4namykii219kxjywxn4cd7pfcc5arha";
     };
   }
   {
diff --git a/nixpkgs/pkgs/desktops/deepin/dde-daemon/default.nix b/nixpkgs/pkgs/desktops/deepin/dde-daemon/default.nix
index 954d0971c250..c709c2894c48 100644
--- a/nixpkgs/pkgs/desktops/deepin/dde-daemon/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/dde-daemon/default.nix
@@ -9,7 +9,7 @@
 buildGoPackage rec {
   name = "${pname}-${version}";
   pname = "dde-daemon";
-  version = "3.24.1";
+  version = "3.27.1";
 
   goPackagePath = "pkg.deepin.io/dde/daemon";
 
@@ -17,7 +17,7 @@ buildGoPackage rec {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "1qxj0mqnl10qj8qidpc1sv8gm4gj5965i07d003yxlxcw9cqwx7y";
+    sha256 = "1rbv7fals2bwhalw1hh3swmrdzclqbhny782shnrwqv53235xda3";
   };
 
   patches = [
@@ -66,7 +66,7 @@ buildGoPackage rec {
   ];
 
   postPatch = ''
-    searchHardCodedPaths
+    searchHardCodedPaths  # debugging
     patchShebangs network/nm_generator/gen_nm_consts.py
 
     fixPath $out /usr/share/dde/data launcher/manager.go dock/dock_manager_init.go
@@ -78,15 +78,25 @@ buildGoPackage rec {
     fixPath ${deepin-wallpapers} /usr/share/wallpapers appearance/background/list.go accounts/user.go
 
     sed -i -e "s|{DESTDIR}/etc|{DESTDIR}$out/etc|" Makefile
-    sed -i -e "s|{DESTDIR}/var|{DESTDIR}$out/var|" Makefile
     sed -i -e "s|{DESTDIR}/lib|{DESTDIR}$out/lib|" Makefile
+    sed -i -e "s|{DESTDIR}/var|{DESTDIR}$out/var|" Makefile
 
     find -type f -exec sed -i -e "s,/usr/lib/deepin-daemon,$out/lib/deepin-daemon," {} +
 
-    searchHardCodedPaths
+    # This package wants to install polkit local authority files into
+    # /var/lib. Nix does not allow a package to install files into /var/lib
+    # because it is outside of the Nix store and should contain applications
+    # state information (persistent data modified by programs as they
+    # run). Polkit looks for them in both /etc/polkit-1 and
+    # /var/lib/polkit-1 (with /etc having priority over /var/lib). An
+    # work around is to install them to $out/etc and simlnk them to
+    # /etc in the deepin module.
+
+    sed -i -e "s,/var/lib/polkit-1,/etc/polkit-1," Makefile
   '';
 
   buildPhase = ''
+    export PAM_MODULE_DIR="$out/lib/security"
     # compilation of the nm module is failing
     #make -C go/src/${goPackagePath}/network/nm_generator gen-nm-code
     make -C go/src/${goPackagePath}
@@ -103,6 +113,8 @@ buildGoPackage rec {
     for binary in $out/lib/deepin-daemon/*; do
       wrapProgram $binary "''${gappsWrapperArgs[@]}"
     done
+
+    searchHardCodedPaths $out  # debugging
   '';
 
   passthru.updateScript = deepin.updateScript { inherit name; };
diff --git a/nixpkgs/pkgs/desktops/deepin/dde-daemon/deps.nix b/nixpkgs/pkgs/desktops/deepin/dde-daemon/deps.nix
index fab2f9f93b20..352a6c0e5193 100644
--- a/nixpkgs/pkgs/desktops/deepin/dde-daemon/deps.nix
+++ b/nixpkgs/pkgs/desktops/deepin/dde-daemon/deps.nix
@@ -37,12 +37,21 @@
     };
   }
   {
+    goPackagePath = "github.com/gosexy/gettext";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gosexy/gettext";
+      rev = "74466a0a0c4a62fea38f44aa161d4bbfbe79dd6b";
+      sha256 = "0asphx8nd7zmp88wk6aakk5292np7yw73akvfdvlvs9q5r5ahkgi";
+    };
+  }
+  {
     goPackagePath = "github.com/linuxdeepin/go-x11-client";
     fetch = {
       type = "git";
       url = "https://github.com/linuxdeepin/go-x11-client";
-      rev = "48c75d615ef634d9b1c24f8e8a30f56201b4f561";
-      sha256 = "1x2i9wg6lyskls5qi3d2r84bdhyhgi8v1d8scxx9ysjaw9di9ldl";
+      rev = "b5b01565d224d5ccd5a4143d9099acceb23e182a";
+      sha256 = "1lnffjp8bqy6f8caw6drg1js6hny5w7432riqchcrcd4q85d94rs";
     };
   }
   {
@@ -68,8 +77,8 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/image";
-      rev = "3fc05d484e9f77dd51816890e05f2602e4ca4d65";
-      sha256 = "0mcip8jpz2061j1z658rfskphc92wv6sapy81p95bnjdymi562k3";
+      rev = "6d32002ffd7577f23673706728e1c510698cecb1";
+      sha256 = "03jzn07kfgdzzm4785xngcksv9ix6q1lf12b8j91flc0v7swsd1b";
     };
   }
   {
@@ -77,8 +86,8 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/net";
-      rev = "74de082e2cca95839e88aa0aeee5aadf6ce7710f";
-      sha256 = "0a4y3y0q5bkif7wvdkyjkvgnzlbh2n4zk7wsy5j95raf0i3zlw4s";
+      rev = "f4e77d36d62c17c2336347bb2670ddbd02d092b7";
+      sha256 = "0avjnglqqg9ya0cbhp23m4namykii219kxjywxn4cd7pfcc5arha";
     };
   }
   {
@@ -86,8 +95,8 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/text";
-      rev = "e3703dcdd614d2d7488fff034c75c551ea25da95";
-      sha256 = "1xh106aslp04vbzb4hc7cc5fyg2ljwny8fwfwsp5mpbqr9ixkikv";
+      rev = "342b2e1fbaa52c93f31447ad2c6abc048c63e475";
+      sha256 = "0flv9idw0jm5nm8lx25xqanbkqgfiym6619w575p7nrdh0riqwqh";
     };
   }
   {
@@ -99,13 +108,4 @@
       sha256 = "0mndnv3hdngr3bxp7yxfd47cas4prv98sqw534mx7vp38gd88n5r";
     };
   }
-  {
-    goPackagePath = "pkg.deepin.io/lib";
-    fetch = {
-      type = "git";
-      url = "https://github.com/linuxdeepin/go-lib.git";
-      rev = "3558b2348565e983c7d4a57a0a21bbe716a55b83";
-      sha256 = "0p9yrxa3x71n3jxffh03ahjgimdzvxzhny632k363lkha6glvbnc";
-    };
-  }
 ]
diff --git a/nixpkgs/pkgs/desktops/deepin/dde-dock/dde-dock.plugins-dir.patch b/nixpkgs/pkgs/desktops/deepin/dde-dock/dde-dock.plugins-dir.patch
new file mode 100644
index 000000000000..87b76045b43d
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/deepin/dde-dock/dde-dock.plugins-dir.patch
@@ -0,0 +1,39 @@
+From c48867b73485b34b95f14e9b9bbb54507fc77648 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= <malaquias@gmail.com>
+Date: Fri, 19 Apr 2019 18:21:49 -0300
+Subject: [PATCH] Use an environment variable for the plugins directory
+
+---
+ frame/controller/dockpluginscontroller.cpp          | 2 +-
+ plugins/tray/system-trays/systemtrayscontroller.cpp | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/frame/controller/dockpluginscontroller.cpp b/frame/controller/dockpluginscontroller.cpp
+index 32a5885..efd53c8 100644
+--- a/frame/controller/dockpluginscontroller.cpp
++++ b/frame/controller/dockpluginscontroller.cpp
+@@ -126,7 +126,7 @@ void DockPluginsController::startLoader()
+ {
+     QString pluginsDir("../plugins");
+     if (!QDir(pluginsDir).exists()) {
+-        pluginsDir = "/usr/lib/dde-dock/plugins";
++        pluginsDir = QProcessEnvironment::systemEnvironment().value("DDE_DOCK_PLUGINS_DIR", "@out@/lib/dde-dock/plugins");
+     }
+     qDebug() << "using dock plugins dir:" << pluginsDir;
+
+diff --git a/plugins/tray/system-trays/systemtrayscontroller.cpp b/plugins/tray/system-trays/systemtrayscontroller.cpp
+index 0c8ca88..7c47d25 100644
+--- a/plugins/tray/system-trays/systemtrayscontroller.cpp
++++ b/plugins/tray/system-trays/systemtrayscontroller.cpp
+@@ -159,7 +159,7 @@ void SystemTraysController::startLoader()
+ {
+     QString pluginsDir("../plugins/system-trays");
+     if (!QDir(pluginsDir).exists()) {
+-        pluginsDir = "/usr/lib/dde-dock/plugins/system-trays";
++        pluginsDir = QProcessEnvironment::systemEnvironment().value("DDE_DOCK_PLUGINS_DIR", "@out@/lib/dde-dock/plugins") + "/system-trays";
+     }
+     qDebug() << "using system tray plugins dir:" << pluginsDir;
+
+--
+2.21.0
+
diff --git a/nixpkgs/pkgs/desktops/deepin/dde-dock/default.nix b/nixpkgs/pkgs/desktops/deepin/dde-dock/default.nix
new file mode 100644
index 000000000000..30ec61f73c3a
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/deepin/dde-dock/default.nix
@@ -0,0 +1,87 @@
+{ stdenv, fetchFromGitHub, cmake, pkgconfig, qttools, qtx11extras,
+  qtsvg, libsForQt5, polkit, gsettings-qt, dtkcore, dtkwidget,
+  dde-qt-dbus-factory, dde-network-utils, dde-daemon,
+  deepin-desktop-schemas, xorg, glib, wrapGAppsHook, deepin,
+  plugins ? [], symlinkJoin, makeWrapper }:
+
+let
+unwrapped = stdenv.mkDerivation rec {
+  name = "${pname}-${version}";
+  pname = "dde-dock";
+  version = "4.9.9";
+
+  src = fetchFromGitHub {
+    owner = "linuxdeepin";
+    repo = pname;
+    rev = version;
+    sha256 = "0vscm808q63bbl84q9l3vhhd8mw86wfjdh55rvyj42qpa5q4mvlz";
+  };
+
+  nativeBuildInputs = [
+    cmake
+    pkgconfig
+    qttools
+    wrapGAppsHook
+    deepin.setupHook
+  ];
+
+  buildInputs = [
+    dde-daemon
+    dde-network-utils
+    dde-qt-dbus-factory
+    deepin-desktop-schemas
+    dtkcore
+    dtkwidget
+    glib.bin
+    gsettings-qt
+    libsForQt5.libdbusmenu
+    polkit
+    qtsvg
+    qtx11extras
+    xorg.libXdmcp
+    xorg.libXtst
+    xorg.libpthreadstubs
+  ];
+
+  patches = [
+    ./dde-dock.plugins-dir.patch
+  ];
+
+  postPatch = ''
+    searchHardCodedPaths
+    patchShebangs translate_generation.sh
+    fixPath $out                 /etc/dde-dock                plugins/keyboard-layout/CMakeLists.txt
+    fixPath $out                 /usr                         cmake/DdeDock/DdeDockConfig.cmake
+    fixPath $out                 /usr                         dde-dock.pc
+    fixPath $out                 /usr/bin/dde-dock            frame/com.deepin.dde.Dock.service
+    fixPath $out                 /usr/share/dbus-1            CMakeLists.txt
+    fixPath ${dde-daemon}        /usr/lib/deepin-daemon       frame/item/showdesktopitem.cpp
+    fixPath ${dde-network-utils} /usr/share/dde-network-utils frame/main.cpp
+    fixPath ${polkit}            /usr/bin/pkexec              plugins/overlay-warning/overlay-warning-plugin.cpp
+
+    substituteInPlace frame/controller/dockpluginscontroller.cpp --subst-var-by out $out
+    substituteInPlace plugins/tray/system-trays/systemtrayscontroller.cpp --subst-var-by out $out
+  '';
+
+  cmakeFlags = [ "-DDOCK_TRAY_USE_NATIVE_POPUP=YES" ];
+
+  postFixup = ''
+    searchHardCodedPaths $out
+  '';
+
+  passthru.updateScript = deepin.updateScript { inherit name; };
+
+  meta = with stdenv.lib; {
+    description = "Dock for Deepin Desktop Environment";
+    homepage = https://github.com/linuxdeepin/dde-dock;
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ romildo ];
+  };
+};
+
+in if plugins == [] then unwrapped
+    else import ./wrapper.nix {
+      inherit makeWrapper symlinkJoin plugins;
+      dde-dock = unwrapped;
+    }
diff --git a/nixpkgs/pkgs/desktops/deepin/dde-dock/wrapper.nix b/nixpkgs/pkgs/desktops/deepin/dde-dock/wrapper.nix
new file mode 100644
index 000000000000..8f6d8a67b1a9
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/deepin/dde-dock/wrapper.nix
@@ -0,0 +1,21 @@
+{ makeWrapper, symlinkJoin, dde-dock, plugins }:
+
+symlinkJoin {
+  name = "dde-dock-with-plugins-${dde-dock.version}";
+
+  paths = [ dde-dock ] ++ plugins;
+
+  buildInputs = [ makeWrapper ];
+
+  postBuild = ''
+    wrapProgram $out/bin/dde-dock \
+      --set DDE_DOCK_PLUGINS_DIR "$out/lib/dde-dock/plugins"
+
+    rm $out/share/dbus-1/services/com.deepin.dde.Dock.service
+
+    substitute ${dde-dock}/share/dbus-1/services/com.deepin.dde.Dock.service $out/share/dbus-1/services/com.deepin.dde.Dock.service \
+      --replace ${dde-dock} $out
+  '';
+
+  inherit (dde-dock) meta;
+}
diff --git a/nixpkgs/pkgs/desktops/deepin/dde-network-utils/default.nix b/nixpkgs/pkgs/desktops/deepin/dde-network-utils/default.nix
index f183d0e15f82..84c7c9207eca 100644
--- a/nixpkgs/pkgs/desktops/deepin/dde-network-utils/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/dde-network-utils/default.nix
@@ -4,13 +4,13 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "dde-network-utils";
-  version = "0.1.2";
+  version = "0.1.4";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "1m6njld06yphppyyhygz8mv4gvq2zw0676pbls9m3fs7b3dl56sv";
+    sha256 = "0nj9lf455lf2hyqv6xwhm4vrr825ldbl83azzrrzqs6p781x65i1";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/desktops/deepin/dde-polkit-agent/default.nix b/nixpkgs/pkgs/desktops/deepin/dde-polkit-agent/default.nix
index 17b88738c36f..2c5dfa33053b 100644
--- a/nixpkgs/pkgs/desktops/deepin/dde-polkit-agent/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/dde-polkit-agent/default.nix
@@ -4,13 +4,13 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "dde-polkit-agent";
-  version = "0.2.4";
+  version = "0.2.6";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "1x7mv63g8412w1bq7fijsdzi8832qjb6gnr1nykcv7imzlycq9m6";
+    sha256 = "1ih78sxhnn6hbx9mzhalx95dk18f217mjbvymf8dky2vkmw8vnmx";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/desktops/deepin/dde-session-ui/default.nix b/nixpkgs/pkgs/desktops/deepin/dde-session-ui/default.nix
index a61a0fdbb84e..f6d70e330ea0 100644
--- a/nixpkgs/pkgs/desktops/deepin/dde-session-ui/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/dde-session-ui/default.nix
@@ -6,13 +6,13 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "dde-session-ui";
-  version = "4.9.0";
+  version = "4.9.6";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "1bh7wbkzikcnka94nzqzl87cs2m6bslrv9r2hdsvqqr3aaad5za3";
+    sha256 = "1wk5mjv1g9my80cxpcycqkm2gjc5r5rrcpxmsl06w4g2c19k50x1";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/desktops/deepin/deepin-anything/default.nix b/nixpkgs/pkgs/desktops/deepin/deepin-anything/default.nix
new file mode 100644
index 000000000000..39e3a66af5e2
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/deepin/deepin-anything/default.nix
@@ -0,0 +1,64 @@
+{ stdenv, fetchFromGitHub, pkgconfig, qtbase, udisks2-qt5, utillinux,
+  dtkcore, deepin }:
+
+stdenv.mkDerivation rec {
+  name = "${pname}-${version}";
+  pname = "deepin-anything";
+  version = "0.0.7";
+
+  src = fetchFromGitHub {
+    owner = "linuxdeepin";
+    repo = pname;
+    rev = version;
+    sha256 = "1qggqjjqz2y51pag0v5qniv6763mgrmzjmr7248xx2paw3a923vk";
+  };
+
+  outputs = [ "out" "modsrc" ];
+
+  nativeBuildInputs = [
+    pkgconfig
+    deepin.setupHook
+  ];
+
+  buildInputs = [
+    dtkcore
+    qtbase
+    udisks2-qt5
+    utillinux
+  ];
+
+  enableParallelBuilding = true;
+
+  makeFlags = [
+    "DEB_HOST_MULTIARCH="
+    "PREFIX=${placeholder ''out''}"
+  ];
+
+  postPatch = ''
+    searchHardCodedPaths  # for debugging
+    fixPath $modsrc /usr/src Makefile
+    fixPath $out /usr Makefile
+    fixPath $out /usr server/tool/tool.pro
+    fixPath $out /etc server/tool/tool.pro
+    fixPath $out /usr/bin \
+      server/tool/deepin-anything-tool.service \
+      server/tool/com.deepin.anything.service \
+      server/monitor/deepin-anything-monitor.service
+    sed -e 's,/lib/systemd,$$PREFIX/lib/systemd,' -i server/monitor/src/src.pro server/tool/tool.pro
+  '';
+
+  postFixup = ''
+    searchHardCodedPaths $out  # for debugging
+    searchHardCodedPaths $modsrc  # for debugging
+  '';
+
+  passthru.updateScript = deepin.updateScript { inherit name; };
+
+  meta = with stdenv.lib; {
+    description = "Deepin file search tool";
+    homepage = https://github.com/linuxdeepin/deepin-anything;
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ romildo ];
+  };
+}
diff --git a/nixpkgs/pkgs/desktops/deepin/deepin-desktop-base/default.nix b/nixpkgs/pkgs/desktops/deepin/deepin-desktop-base/default.nix
index b5e75c217b1e..6e6d02f17e06 100644
--- a/nixpkgs/pkgs/desktops/deepin/deepin-desktop-base/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/deepin-desktop-base/default.nix
@@ -3,13 +3,13 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "deepin-desktop-base";
-  version = "2019.03.29";
+  version = "2019.04.24";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "1d016h95nsn5yay9f4c13hixfxj0q01hpxwj2x84i6qpx63dxdwq";
+    sha256 = "0mdfjkyjrccxlsg05mf80qcw8v5srlp80rvjkpnnbhfscq1fnpgn";
   };
 
   nativeBuildInputs = [ deepin.setupHook ];
diff --git a/nixpkgs/pkgs/desktops/deepin/deepin-icon-theme/default.nix b/nixpkgs/pkgs/desktops/deepin/deepin-icon-theme/default.nix
index 3b6b61c1ae76..5976b7cb1af1 100644
--- a/nixpkgs/pkgs/desktops/deepin/deepin-icon-theme/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/deepin-icon-theme/default.nix
@@ -3,13 +3,13 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "deepin-icon-theme";
-  version = "15.12.68";
+  version = "15.12.69";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "12jgz81s5qggmnkfg9m5f799r10p43qmh4zqxl1kjvlrqgvsc9rf";
+    sha256 = "1y6r2as3acqkq8z1d44c82jfplihscmqc9fgpq1j0anznwcdj73k";
   };
 
   nativeBuildInputs = [ gtk3 xcursorgen ];
diff --git a/nixpkgs/pkgs/desktops/deepin/deepin-image-viewer/default.nix b/nixpkgs/pkgs/desktops/deepin/deepin-image-viewer/default.nix
index 7e2840f0f3f2..54e9db4cb495 100644
--- a/nixpkgs/pkgs/desktops/deepin/deepin-image-viewer/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/deepin-image-viewer/default.nix
@@ -6,13 +6,13 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "deepin-image-viewer";
-  version = "1.3.10";
+  version = "1.3.13";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "0paanw9sd67ic9yrbzqhrwi4bf4lpvsk16jynx99n76j3jgyijkk";
+    sha256 = "1ql3li63qiw92jx5jzmx3k115vdn3cjfysja3afjhmfngq1xibmj";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/desktops/deepin/deepin-menu/default.nix b/nixpkgs/pkgs/desktops/deepin/deepin-menu/default.nix
index 5de292805b65..990c6a850ff1 100644
--- a/nixpkgs/pkgs/desktops/deepin/deepin-menu/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/deepin-menu/default.nix
@@ -4,13 +4,13 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "deepin-menu";
-  version = "3.4.1";
+  version = "3.4.6";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "0aga4d4qwd7av6aa4cynhk0sidns7m7y6x0rq1swnkpr9ksr80gi";
+    sha256 = "1gxf3slqx1s15bjrds29sas7ah6kp8c4pjvzwipncyx6qfgczj2a";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/desktops/deepin/deepin-movie-reborn/default.nix b/nixpkgs/pkgs/desktops/deepin/deepin-movie-reborn/default.nix
index 8a675ca1169e..914e77d85157 100644
--- a/nixpkgs/pkgs/desktops/deepin/deepin-movie-reborn/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/deepin-movie-reborn/default.nix
@@ -5,13 +5,13 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "deepin-movie-reborn";
-  version = "3.2.21";
+  version = "3.2.22.1";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "09a4sirbdxnrwj9ww2v7b1s9ylsincqzpqm2zisny9zxy22fm8s9";
+    sha256 = "1qh079j4c2n33z0ykv87af9vfkmdxxrv6dy54wdqdpr7vrhn89gb";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/desktops/deepin/deepin-mutter/deepin-mutter.plugins-dir.patch b/nixpkgs/pkgs/desktops/deepin/deepin-mutter/deepin-mutter.plugins-dir.patch
new file mode 100644
index 000000000000..4a57b501e01e
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/deepin/deepin-mutter/deepin-mutter.plugins-dir.patch
@@ -0,0 +1,41 @@
+From 8eeb4febcae517080d6638f8953e02335df79f01 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= <malaquias@gmail.com>
+Date: Sat, 20 Apr 2019 00:28:47 -0300
+Subject: [PATCH] Get plugins dir from environment variable
+
+---
+ src/compositor/meta-plugin-manager.c | 12 ++++++++++--
+ 1 file changed, 10 insertions(+), 2 deletions(-)
+
+diff --git a/src/compositor/meta-plugin-manager.c b/src/compositor/meta-plugin-manager.c
+index ac5716db..d000100b 100644
+--- a/src/compositor/meta-plugin-manager.c
++++ b/src/compositor/meta-plugin-manager.c
+@@ -56,14 +56,22 @@ meta_plugin_manager_set_plugin_type (GType gtype)
+ void
+ meta_plugin_manager_load (const gchar       *plugin_name)
+ {
+-  const gchar *dpath = MUTTER_PLUGIN_DIR "/";
++  const gchar *env_var;
++  const gchar *dpath;
+   gchar       *path;
+   MetaModule  *module;
+ 
++  env_var = g_getenv ("DEEPIN_MUTTER_PLUGINS_DIR");
++  g_debug ("$DEEPIN_MUTTER_PLUGINS_DIR: %s\n", env_var);
++
++  dpath = env_var == NULL || strlen (env_var) == 0 ? MUTTER_PLUGIN_DIR : env_var;
++  g_debug ("dpath: %s\n", dpath);
++
+   if (g_path_is_absolute (plugin_name))
+     path = g_strdup (plugin_name);
+   else
+-    path = g_strconcat (dpath, plugin_name, ".so", NULL);
++    path = g_strconcat (dpath, "/", plugin_name, ".so", NULL);
++  g_debug ("path: %s\n", path);
+ 
+   module = g_object_new (META_TYPE_MODULE, "path", path, NULL);
+   if (!module || !g_type_module_use (G_TYPE_MODULE (module)))
+-- 
+2.21.0
+
diff --git a/nixpkgs/pkgs/desktops/deepin/deepin-mutter/default.nix b/nixpkgs/pkgs/desktops/deepin/deepin-mutter/default.nix
index fc26440a3ef1..83afe1ee24f7 100644
--- a/nixpkgs/pkgs/desktops/deepin/deepin-mutter/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/deepin-mutter/default.nix
@@ -44,8 +44,13 @@ stdenv.mkDerivation rec {
     xorg.libxkbfile
   ];
 
+  patches = [
+    ./deepin-mutter.plugins-dir.patch
+  ];
+
   postPatch = ''
-    searchHardCodedPaths
+    searchHardCodedPaths  # debugging
+    sed -i -e "s,Exec=deepin-mutter,Exec=$out/bin/deepin-mutter," data/mutter.desktop.in
   '';
 
   configureFlags = [
@@ -57,6 +62,10 @@ stdenv.mkDerivation rec {
     NOCONFIGURE=1 ./autogen.sh
   '';
 
+  postFixup = ''
+    searchHardCodedPaths $out  # debugging
+  '';
+
   enableParallelBuilding = true;
 
   passthru.updateScript = deepin.updateScript { inherit name; };
diff --git a/nixpkgs/pkgs/desktops/deepin/deepin-screenshot/default.nix b/nixpkgs/pkgs/desktops/deepin/deepin-screenshot/default.nix
index 6585bc78c588..9313b903c62a 100644
--- a/nixpkgs/pkgs/desktops/deepin/deepin-screenshot/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/deepin-screenshot/default.nix
@@ -5,13 +5,13 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "deepin-screenshot";
-  version = "4.1.8";
+  version = "4.1.10";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "1zhjchflgws2q74b9fgdjy2wzifjhimnrrq1sxlv395793xv8lrr";
+    sha256 = "00zmmnvm5wv9fkc9fbqs23jsqs1mnr68afl4irj6y287ic0pj61i";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/desktops/deepin/deepin-terminal/default.nix b/nixpkgs/pkgs/desktops/deepin/deepin-terminal/default.nix
index 74337974acca..cbee49c0572f 100644
--- a/nixpkgs/pkgs/desktops/deepin/deepin-terminal/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/deepin-terminal/default.nix
@@ -7,13 +7,13 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "deepin-terminal";
-  version = "3.2.1.2";
+  version = "3.2.2.1";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = "deepin-terminal";
     rev = version;
-    sha256 = "0dj386csbiw0yqz9nj6ij0s4d0ak9lpq2bmsfs17bjkgdp0ayp90";
+    sha256 = "08bhdd9q4aqy5yjbpqy918j63c3b2rrdqdkxh3fk258n1fm72gmw";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/desktops/deepin/deepin-turbo/default.nix b/nixpkgs/pkgs/desktops/deepin/deepin-turbo/default.nix
index 6a343f816b94..d5702a55d903 100644
--- a/nixpkgs/pkgs/desktops/deepin/deepin-turbo/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/deepin-turbo/default.nix
@@ -3,13 +3,13 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "deepin-turbo";
-  version = "0.0.2";
+  version = "0.0.3";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "13vbj18pclv7c25pb1y5x6dd7wmcgisa40mb13qyixnzpq2ssjg5";
+    sha256 = "15l0pgszmbirlaxj04ishj43kyvigsl1yaf58kxlbdb3lkmcp5f3";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/desktops/deepin/deepin-wm/default.nix b/nixpkgs/pkgs/desktops/deepin/deepin-wm/default.nix
index d1ae0557aaa7..37e4cb2002b2 100644
--- a/nixpkgs/pkgs/desktops/deepin/deepin-wm/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/deepin-wm/default.nix
@@ -6,13 +6,13 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "deepin-wm";
-  version = "1.9.37";
+  version = "1.9.38";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "1xd2x0kyav2cxnk0bybl7lrmak1r2468slxz5a6anrdriw9l10gi";
+    sha256 = "1qhdnv4x78f0gkr94q0j8x029fk9ji4m9jdipgrdm83pnahib80g";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/desktops/deepin/default.nix b/nixpkgs/pkgs/desktops/deepin/default.nix
index 10e25cedc4b3..ccc2270a8edf 100644
--- a/nixpkgs/pkgs/desktops/deepin/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/default.nix
@@ -10,10 +10,12 @@ let
     dde-api = callPackage ./dde-api { };
     dde-calendar = callPackage ./dde-calendar { };
     dde-daemon = callPackage ./dde-daemon { };
-    dde-polkit-agent = callPackage ./dde-polkit-agent { };
+    dde-dock = callPackage ./dde-dock { };
     dde-network-utils = callPackage ./dde-network-utils { };
+    dde-polkit-agent = callPackage ./dde-polkit-agent { };
     dde-qt-dbus-factory = callPackage ./dde-qt-dbus-factory { };
     dde-session-ui = callPackage ./dde-session-ui { };
+    deepin-anything = callPackage ./deepin-anything { };
     deepin-desktop-base = callPackage ./deepin-desktop-base { };
     deepin-desktop-schemas = callPackage ./deepin-desktop-schemas { };
     deepin-gettext-tools = callPackage ./deepin-gettext-tools { };
diff --git a/nixpkgs/pkgs/desktops/deepin/dtkcore/default.nix b/nixpkgs/pkgs/desktops/deepin/dtkcore/default.nix
index 4081a40a96e2..15e2c8be799e 100644
--- a/nixpkgs/pkgs/desktops/deepin/dtkcore/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/dtkcore/default.nix
@@ -3,19 +3,20 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "dtkcore";
-  version = "2.0.10";
+  version = "2.0.12.1";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "0dwpq6c38gaa95mgjnwj3vjz57n0cz6jfk950xi6s9ww2f4g6kq7";
+    sha256 = "1akfzkdhgsndm6rlr7snhpznxj0w351v6rr8vvnr6ka2dw75xsl4";
   };
 
   nativeBuildInputs = [
     pkgconfig
     qmake
     pythonPackages.wrapPython
+    deepin.setupHook
   ];
 
   buildInputs = [
@@ -23,21 +24,18 @@ stdenv.mkDerivation rec {
   ];
 
   postPatch = ''
-    # Only define QT_HOST_DATA if it is empty
-    sed '/QT_HOST_DATA=/a }' -i src/dtk_module.prf
-    sed '/QT_HOST_DATA=/i isEmpty(QT_HOST_DATA) {' -i src/dtk_module.prf
+    searchHardCodedPaths  # debugging
 
     # Fix shebang
     sed -i tools/script/dtk-translate.py -e "s,#!env,#!/usr/bin/env,"
   '';
 
-  preConfigure = ''
-    qmakeFlags="$qmakeFlags QT_HOST_DATA=$out"
-  '';
+  qmakeFlags = [ "MKSPECS_INSTALL_DIR=${placeholder "out"}/mkspecs" ];
 
   postFixup = ''
     chmod +x $out/lib/dtk2/*.py
     wrapPythonProgramsIn "$out/lib/dtk2" "$out $pythonPath"
+    searchHardCodedPaths $out  # debugging
   '';
 
   enableParallelBuilding = true;
diff --git a/nixpkgs/pkgs/desktops/deepin/dtkwidget/default.nix b/nixpkgs/pkgs/desktops/deepin/dtkwidget/default.nix
index b55a5fbc9fe9..ff92ced6e7a0 100644
--- a/nixpkgs/pkgs/desktops/deepin/dtkwidget/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/dtkwidget/default.nix
@@ -5,13 +5,13 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "dtkwidget";
-  version = "2.0.10";
+  version = "2.0.12.3";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "11a7yirfkcj3rq7va9av4m1pr22mq1yx1j9k18xrqv36n0rlbrr6";
+    sha256 = "0z71il09gj1frkxfw3av97szh17spr6ss1k07l0prk1s1wm7yyfr";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/desktops/deepin/dtkwm/default.nix b/nixpkgs/pkgs/desktops/deepin/dtkwm/default.nix
index 7154ae3da6a9..c0834ace8f8c 100644
--- a/nixpkgs/pkgs/desktops/deepin/dtkwm/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/dtkwm/default.nix
@@ -4,13 +4,13 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "dtkwm";
-  version = "2.0.9";
+  version = "2.0.11";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "0vkx6vlz83pgawhdwqkwpq3dy8whxmjdzfpgrvm2m6jmspfk9bab";
+    sha256 = "10l89i84vsh5knq9wg2php7vfg5rj5c9hrrl9rjlcidn1rz8yx6f";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/desktops/deepin/go-dbus-factory/default.nix b/nixpkgs/pkgs/desktops/deepin/go-dbus-factory/default.nix
index ad2926fa403f..5d526017f8da 100644
--- a/nixpkgs/pkgs/desktops/deepin/go-dbus-factory/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/go-dbus-factory/default.nix
@@ -3,13 +3,13 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "go-dbus-factory";
-  version = "0.4.0";
+  version = "0.7.0";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "1i1ymi2qpcbf4d6rnfzrbq5n2vwnn8dvbq9xlw7jls3jpr3d5r00";
+    sha256 = "080bcwbq00d91iazgl59cp5ra2x6xkhnc41ipvglvrkibq9zi1a4";
   };
 
   makeFlags = [ "PREFIX=${placeholder ''out''}" ];
diff --git a/nixpkgs/pkgs/desktops/deepin/go-gir-generator/default.nix b/nixpkgs/pkgs/desktops/deepin/go-gir-generator/default.nix
index 03c906585e3d..aef87f04b123 100644
--- a/nixpkgs/pkgs/desktops/deepin/go-gir-generator/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/go-gir-generator/default.nix
@@ -4,13 +4,13 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "go-gir-generator";
-  version = "2.0.0";
+  version = "2.0.1";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "0d93qzp3dlia5d1yxw0rwca76qk3jyamj9xzmk13vzig8zw0jx16";
+    sha256 = "0jdhfnwrpp77893zxljr453w23kahqsdpd8a8i5jp6pyvkdm816j";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/desktops/deepin/go-lib/default.nix b/nixpkgs/pkgs/desktops/deepin/go-lib/default.nix
index 41315c440901..a6282b979f76 100644
--- a/nixpkgs/pkgs/desktops/deepin/go-lib/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/go-lib/default.nix
@@ -4,13 +4,13 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "go-lib";
-  version = "1.10.0";
+  version = "1.10.2";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "090l33y79gdj2xy1bhk2ksl6hvmsfhmx0bhygm4y4d0iqckf2x2m";
+    sha256 = "05z7ayl23cm8mbn4vkn3isy5kgwxljc26ifmzrhmnqm5yibd6lsf";
   };
 
   buildInputs = [
diff --git a/nixpkgs/pkgs/desktops/deepin/qcef/default.nix b/nixpkgs/pkgs/desktops/deepin/qcef/default.nix
index 18d64c5645ca..f70193398827 100644
--- a/nixpkgs/pkgs/desktops/deepin/qcef/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/qcef/default.nix
@@ -42,14 +42,14 @@ in
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "qcef";
-  version = "1.1.4.6";
+  version = "1.1.6";
 
   srcs = [
     (fetchFromGitHub {
       owner = "linuxdeepin";
       repo = pname;
       rev = version;
-      sha256 = "06909sd0gf7n4hw6p4j96apjym219zabflgpwjafm7v00bgnwxxs";
+      sha256 = "1x0vb4nkfa1lq0nh6iqpxfvsqmb6qfn305pbc92bsqpgiqd7jvb1";
       name = pname;
     })
     (fetchFromGitHub {
@@ -99,6 +99,7 @@ stdenv.mkDerivation rec {
     homepage = https://github.com/linuxdeepin/qcef;
     license = licenses.lgpl3;
     platforms = platforms.linux;
+    badPlatforms = [ "aarch64-linux" ];  # the cef-binary is not available
     maintainers = with maintainers; [ romildo ];
   };
 }
diff --git a/nixpkgs/pkgs/desktops/deepin/qt5dxcb-plugin/default.nix b/nixpkgs/pkgs/desktops/deepin/qt5dxcb-plugin/default.nix
index 7d2c89165087..ee597184381c 100644
--- a/nixpkgs/pkgs/desktops/deepin/qt5dxcb-plugin/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/qt5dxcb-plugin/default.nix
@@ -4,13 +4,13 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "qt5dxcb-plugin";
-  version = "1.1.25";
+  version = "1.1.27";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "1nadmj1hdpw4n3kpk3dlx22bmxdli66abhjl73hwrbvszmmcm9vp";
+    sha256 = "1hs7r17qsqn3hgfjd0scagpj1dqys7i1507vxadfac4h1ahyxaz7";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/desktops/deepin/qt5integration/default.nix b/nixpkgs/pkgs/desktops/deepin/qt5integration/default.nix
index 634bac5cf97d..55084ed9484a 100644
--- a/nixpkgs/pkgs/desktops/deepin/qt5integration/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/qt5integration/default.nix
@@ -5,13 +5,13 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "qt5integration";
-  version = "0.3.8";
+  version = "0.3.11";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "12d6iv2x0q2n73rscma30q31nh7h26gmhlf665gkgl2j825hlx5n";
+    sha256 = "1p3bnjy449vy5mpxassjv6sr2dp887gsss000szk5s0p1agmydxq";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/desktops/deepin/setup-hook.sh b/nixpkgs/pkgs/desktops/deepin/setup-hook.sh
index 63a43bb58407..ce1d7330a222 100755
--- a/nixpkgs/pkgs/desktops/deepin/setup-hook.sh
+++ b/nixpkgs/pkgs/desktops/deepin/setup-hook.sh
@@ -1,17 +1,28 @@
 # Helper functions for deepin packaging
 
 searchHardCodedPaths() {
-    # looks for ocurrences of hard coded paths in given (current)
-    # directory and command invocations for the purpose of debugging a
-    # derivation
+    # Usage:
+    #
+    #   searchHardCodedPaths [-a] [<path>]
+    #
+    # Looks for ocurrences of FHS hard coded paths and command
+    # invocations in the given path (default: current directory) for
+    # the purpose of debugging a derivation. The option -a enables
+    # processing binary files as if they were text.
+
+    local binary
+    if [ "$1" = "-a" ]; then
+        binary="-a"
+        shift
+    fi
 
-    local dir=$1
+    local path=$1
 
-    echo ----------- looking for command invocations
-    grep --color=always -r -E '\<(ExecStart|Exec|startDetached|execute|exec\.(Command|LookPath))\>' $dir || true
+    echo ----------- looking for command invocations in $path
+    grep --color=always -r -E '\<(ExecStart|Exec|startDetached|execute|exec\.(Command|LookPath))\>' $path || true
 
-    echo ----------- looking for hard coded paths
-    grep --color=always -a -r -E '/(usr|bin|sbin|etc|var|opt)\>' $dir || true
+    echo ----------- looking for hard coded paths in $path
+    grep --color=always $binary -r -E '/(usr|bin|sbin|etc|var|opt)\>' $path || true
 
     echo ----------- done
 }