about summary refs log tree commit diff
diff options
context:
space:
mode:
authorrewine <luhongxu@deepin.org>2024-09-05 10:08:27 +0800
committerGitHub <noreply@github.com>2024-09-05 10:08:27 +0800
commit0daec7844ff6b723053039235fefb896c9a08917 (patch)
tree4116174b45676f8e3b5a7a01f7e1b89d20dd5b92
parent4bbea8e87ed038aad619a60614ccfb8e36d56d25 (diff)
parent29d62536b95d1e94531cf8a2fbc4121000355cd7 (diff)
deepin desktop environment: 2024.09 update (#338402)
-rw-r--r--nixos/modules/services/x11/desktop-managers/deepin.nix6
-rw-r--r--pkgs/desktops/deepin/apps/deepin-editor/default.nix15
-rw-r--r--pkgs/desktops/deepin/apps/deepin-system-monitor/default.nix8
-rw-r--r--pkgs/desktops/deepin/artwork/deepin-icon-theme/default.nix4
-rw-r--r--pkgs/desktops/deepin/core/dde-api-proxy/default.nix50
-rw-r--r--pkgs/desktops/deepin/core/dde-calendar/default.nix4
-rw-r--r--pkgs/desktops/deepin/core/dde-dock/default.nix91
-rw-r--r--pkgs/desktops/deepin/core/dde-file-manager/default.nix28
-rw-r--r--pkgs/desktops/deepin/core/dde-grand-search/default.nix18
-rw-r--r--pkgs/desktops/deepin/core/dde-grand-search/patch-check-v23-interface.diff13
-rw-r--r--pkgs/desktops/deepin/core/dde-gsettings-schemas/default.nix2
-rw-r--r--pkgs/desktops/deepin/core/dde-launchpad/default.nix4
-rw-r--r--pkgs/desktops/deepin/core/dde-network-core/default.nix6
-rw-r--r--pkgs/desktops/deepin/core/dde-session-ui/default.nix4
-rw-r--r--pkgs/desktops/deepin/core/dde-shell/default.nix26
-rw-r--r--pkgs/desktops/deepin/core/dde-shell/disable-plugins-use-qt5.diff18
-rw-r--r--pkgs/desktops/deepin/core/dde-shell/only-use-qt6.diff26
-rw-r--r--pkgs/desktops/deepin/core/dde-tray-loader/default.nix69
-rw-r--r--pkgs/desktops/deepin/default.nix4
-rw-r--r--pkgs/desktops/deepin/library/docparser/default.nix24
-rw-r--r--pkgs/desktops/deepin/library/dtk6gui/default.nix5
-rw-r--r--pkgs/desktops/deepin/library/dtkgui/default.nix5
-rw-r--r--pkgs/desktops/deepin/library/util-dfm/default.nix4
-rw-r--r--pkgs/desktops/deepin/misc/deepin-desktop-base/default.nix4
24 files changed, 225 insertions, 213 deletions
diff --git a/nixos/modules/services/x11/desktop-managers/deepin.nix b/nixos/modules/services/x11/desktop-managers/deepin.nix
index a202e153231b6..70149bcf4ae08 100644
--- a/nixos/modules/services/x11/desktop-managers/deepin.nix
+++ b/nixos/modules/services/x11/desktop-managers/deepin.nix
@@ -155,8 +155,6 @@ in
             deepin-desktop-base
 
             startdde
-            # TODO: should remove dde-dock, but dde-shell still need it's dconfig
-            dde-dock
             dde-shell
             dde-launchpad
             dde-session-ui
@@ -177,6 +175,8 @@ in
             dde-application-manager
             deepin-service-manager
             dde-grand-search
+            dde-api-proxy
+            dde-tray-loader
           ];
           optionalPackages = [
             onboard # dde-dock plugin
@@ -216,6 +216,7 @@ in
         dde-application-manager
         deepin-service-manager
         dde-grand-search
+        dde-api-proxy
       ];
 
       systemd.packages = with pkgs.deepin; [
@@ -230,6 +231,7 @@ in
         dde-session
         dde-application-manager
         deepin-service-manager
+        dde-api-proxy
       ];
     };
 }
diff --git a/pkgs/desktops/deepin/apps/deepin-editor/default.nix b/pkgs/desktops/deepin/apps/deepin-editor/default.nix
index a3b1a15b66970..9af8a60088d6e 100644
--- a/pkgs/desktops/deepin/apps/deepin-editor/default.nix
+++ b/pkgs/desktops/deepin/apps/deepin-editor/default.nix
@@ -17,18 +17,17 @@
   libchardet,
   libuchardet,
   libiconv,
-  gitUpdater,
 }:
 
 stdenv.mkDerivation rec {
   pname = "deepin-editor";
-  version = "6.0.16";
+  version = "6.5.0";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    hash = "sha256-55hRXHP02MJWt+JUDCDKv4Boq0IwNW1itGw9rtCZrao=";
+    hash = "sha256-f6CJlSgsKU311ziXmm7Ado8tH+3dNRpWB1e4TewVf/8=";
   };
 
   nativeBuildInputs = [
@@ -56,13 +55,11 @@ stdenv.mkDerivation rec {
 
   cmakeFlags = [ "-DVERSION=${version}" ];
 
-  passthru.updateScript = gitUpdater { };
-
-  meta = with lib; {
+  meta = {
     description = "Desktop text editor that supports common text editing features";
     homepage = "https://github.com/linuxdeepin/deepin-editor";
-    license = licenses.gpl3Plus;
-    platforms = platforms.linux;
-    maintainers = teams.deepin.members;
+    license = lib.licenses.gpl3Plus;
+    platforms = lib.platforms.linux;
+    maintainers = lib.teams.deepin.members;
   };
 }
diff --git a/pkgs/desktops/deepin/apps/deepin-system-monitor/default.nix b/pkgs/desktops/deepin/apps/deepin-system-monitor/default.nix
index f37fb2dc6c259..a0af0f6806340 100644
--- a/pkgs/desktops/deepin/apps/deepin-system-monitor/default.nix
+++ b/pkgs/desktops/deepin/apps/deepin-system-monitor/default.nix
@@ -14,7 +14,7 @@
   qtsvg,
   qtx11extras,
   dde-qt-dbus-factory,
-  dde-dock,
+  dde-tray-loader,
   gsettings-qt,
   polkit-qt,
   procps,
@@ -29,13 +29,13 @@
 
 stdenv.mkDerivation rec {
   pname = "deepin-system-monitor";
-  version = "6.0.23";
+  version = "6.5.0";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    hash = "sha256-LcXc8yI81YslVjof74TvOm6eWiN4UaHgUFU+HSCNZxQ=";
+    hash = "sha256-UOF0/RBceuRX6AtI1p5qqHhbRDAhA7i0+seOrkAFFgI=";
   };
 
   postPatch = ''
@@ -73,7 +73,7 @@ stdenv.mkDerivation rec {
     qtsvg
     qtx11extras
     dde-qt-dbus-factory
-    dde-dock
+    dde-tray-loader
     gsettings-qt
     polkit-qt
     procps
diff --git a/pkgs/desktops/deepin/artwork/deepin-icon-theme/default.nix b/pkgs/desktops/deepin/artwork/deepin-icon-theme/default.nix
index 2ff8cb984351a..2f15e0f1f195f 100644
--- a/pkgs/desktops/deepin/artwork/deepin-icon-theme/default.nix
+++ b/pkgs/desktops/deepin/artwork/deepin-icon-theme/default.nix
@@ -9,13 +9,13 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "deepin-icon-theme";
-  version = "2024.07.19";
+  version = "2024.07.31";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    hash = "sha256-eUL0V9pGYzvAdVZpnrWXDO/YeCBETCOGvcMqDTwTgoU=";
+    hash = "sha256-Vt2rYZthGelXVUp8/L57ZlDsVEjjZhCv+kSGeU6nC2s=";
   };
 
   makeFlags = [ "PREFIX=${placeholder "out"}" ];
diff --git a/pkgs/desktops/deepin/core/dde-api-proxy/default.nix b/pkgs/desktops/deepin/core/dde-api-proxy/default.nix
new file mode 100644
index 0000000000000..a46ead0f6e7c8
--- /dev/null
+++ b/pkgs/desktops/deepin/core/dde-api-proxy/default.nix
@@ -0,0 +1,50 @@
+{
+  stdenv,
+  lib,
+  fetchFromGitHub,
+  cmake,
+  pkg-config,
+  libsForQt5,
+  dtkcore,
+  coreutils,
+}:
+
+stdenv.mkDerivation rec {
+  pname = "dde-api-proxy";
+  version = "1.0.16";
+
+  src = fetchFromGitHub {
+    owner = "linuxdeepin";
+    repo = "dde-api-proxy";
+    rev = version;
+    hash = "sha256-kWodNftOPLIiQNPHAIC9p3VHFAis8FAI7vLJTqahAtU=";
+  };
+
+  postPatch = ''
+    for file in $(grep -rl "/usr/bin/false"); do
+      substituteInPlace $file --replace-fail "/usr/bin/false" "${coreutils}/bin/false"
+    done
+    for file in $(grep -rl "/usr/lib/dde-api-proxy"); do
+      substituteInPlace $file --replace-fail "/usr/lib/dde-api-proxy" "$out/lib/dde-api-proxy"
+    done
+  '';
+
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+    libsForQt5.wrapQtAppsHook
+  ];
+
+  buildInputs = [
+    dtkcore
+    libsForQt5.qtbase
+  ];
+
+  meta = {
+    description = "Proxy service for dde";
+    homepage = "https://github.com/linuxdeepin/dde-api-proxy";
+    license = lib.licenses.gpl3Plus;
+    platforms = lib.platforms.linux;
+    maintainers = lib.teams.deepin.members;
+  };
+}
diff --git a/pkgs/desktops/deepin/core/dde-calendar/default.nix b/pkgs/desktops/deepin/core/dde-calendar/default.nix
index 6eecb85c1b609..71069e96ea965 100644
--- a/pkgs/desktops/deepin/core/dde-calendar/default.nix
+++ b/pkgs/desktops/deepin/core/dde-calendar/default.nix
@@ -19,13 +19,13 @@
 
 stdenv.mkDerivation rec {
   pname = "dde-calendar";
-  version = "5.14.1";
+  version = "5.14.4";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    hash = "sha256-08xkdiP0/haHY3jdHSoA1zXRxMi2t+qxLxbcRc7EO6Q=";
+    hash = "sha256-bZxNOBtLjop0eYxpMeoomaWYvPcMyDfQfgGPK9m+ARo=";
   };
 
   patches = [ ./fix-wrapped-name-not-in-whitelist.diff ];
diff --git a/pkgs/desktops/deepin/core/dde-dock/default.nix b/pkgs/desktops/deepin/core/dde-dock/default.nix
deleted file mode 100644
index db3a4a052334c..0000000000000
--- a/pkgs/desktops/deepin/core/dde-dock/default.nix
+++ /dev/null
@@ -1,91 +0,0 @@
-{
-  stdenv,
-  lib,
-  fetchFromGitHub,
-  cmake,
-  extra-cmake-modules,
-  qttools,
-  pkg-config,
-  wrapQtAppsHook,
-  wrapGAppsHook3,
-  qtbase,
-  dtkwidget,
-  qt5integration,
-  qt5platform-plugins,
-  dwayland,
-  qtx11extras,
-  gsettings-qt,
-  libdbusmenu,
-  xorg,
-}:
-
-stdenv.mkDerivation rec {
-  pname = "dde-dock";
-  version = "6.0.37";
-
-  src = fetchFromGitHub {
-    owner = "linuxdeepin";
-    repo = pname;
-    rev = version;
-    hash = "sha256-5VowwQ0NoV6jV6DwnoxPKnRi6n28Teh/UQZwRc3URWY=";
-  };
-
-  postPatch = ''
-    substituteInPlace plugins/pluginmanager/pluginmanager.cpp frame/controller/quicksettingcontroller.cpp  \
-      --replace "/usr/lib/dde-dock" "/run/current-system/sw/lib/dde-dock"
-
-    substituteInPlace configs/com.deepin.dde.dock.json frame/util/common.h \
-    --replace "/usr" "/run/current-system/sw"
-
-    for file in $(grep -rl "/usr/lib/deepin-daemon"); do
-      substituteInPlace $file --replace "/usr/lib/deepin-daemon" "/run/current-system/sw/lib/deepin-daemon"
-    done
-  '';
-
-  nativeBuildInputs = [
-    cmake
-    extra-cmake-modules
-    qttools
-    pkg-config
-    wrapQtAppsHook
-    wrapGAppsHook3
-  ];
-  dontWrapGApps = true;
-
-  buildInputs = [
-    qtbase
-    dtkwidget
-    qt5platform-plugins
-    dwayland
-    qtx11extras
-    gsettings-qt
-    libdbusmenu
-    xorg.libXcursor
-    xorg.libXtst
-    xorg.libXdmcp
-    xorg.libXres
-  ];
-
-  outputs = [
-    "out"
-    "dev"
-  ];
-
-  cmakeFlags = [ "-DVERSION=${version}" ];
-
-  # qt5integration must be placed before qtsvg in QT_PLUGIN_PATH
-  qtWrapperArgs = [ "--prefix QT_PLUGIN_PATH : ${qt5integration}/${qtbase.qtPluginPrefix}" ];
-
-  preFixup = ''
-    qtWrapperArgs+=("''${gappsWrapperArgs[@]}")
-  '';
-
-  meta = with lib; {
-    description = "Deepin desktop-environment - dock module";
-    mainProgram = "dde-dock";
-    homepage = "https://github.com/linuxdeepin/dde-dock";
-    platforms = platforms.linux;
-    license = licenses.lgpl3Plus;
-    maintainers = teams.deepin.members;
-  };
-}
diff --git a/pkgs/desktops/deepin/core/dde-file-manager/default.nix b/pkgs/desktops/deepin/core/dde-file-manager/default.nix
index 7e77c7f083ffe..5e4c8c4f78232 100644
--- a/pkgs/desktops/deepin/core/dde-file-manager/default.nix
+++ b/pkgs/desktops/deepin/core/dde-file-manager/default.nix
@@ -2,13 +2,14 @@
   stdenv,
   lib,
   fetchFromGitHub,
+  fetchpatch,
   runtimeShell,
   dtkwidget,
   qt5integration,
   qt5platform-plugins,
   dde-qt-dbus-factory,
   docparser,
-  dde-dock,
+  dde-tray-loader,
   cmake,
   qttools,
   qtx11extras,
@@ -44,13 +45,13 @@
 
 stdenv.mkDerivation rec {
   pname = "dde-file-manager";
-  version = "6.0.51";
+  version = "6.0.57";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    hash = "sha256-MvrOhdejQPK693wFlqkERuwYM88ALtFNnbyu7H3TI4Q=";
+    hash = "sha256-laM6PgNdUNbsqbzKFGWk7DPuAWR+XHo0eXKG0CDuc9c=";
   };
 
   nativeBuildInputs = [
@@ -62,10 +63,25 @@ stdenv.mkDerivation rec {
   ];
   dontWrapGApps = true;
 
-  patches = [ ./patch_check_v23_interface.diff ];
+  patches = [
+    ./patch_check_v23_interface.diff
+    (fetchpatch {
+      name = "fix-permission-to-execute-dde-file-manager.patch";
+      url = "https://github.com/linuxdeepin/dde-file-manager/commit/b78cc4bd08dd487f67c5a332a2a2f4d20b3798c7.patch";
+      hash = "sha256-Tw3iu6sU0rrsM78WGMBpBgvA9YdRTM1ObjCxyM928F4=";
+    })
+  ];
 
   postPatch = ''
-    patchShebangs .
+    patchShebangs tests/*.sh \
+                  assets/scripts \
+                  src/*.sh \
+                  src/plugins/daemon/daemonplugin-accesscontrol/help.sh \
+                  src/apps/dde-file-manager/dde-property-dialog \
+                  src/apps/dde-desktop/data/applications/dfm-open.sh
+
+    substituteInPlace assets/scripts/file-manager.sh \
+      --replace-fail "/usr/libexec/dde-file-manager" "$out/libexec/dde-file-manager"
 
     substituteInPlace src/plugins/filemanager/dfmplugin-vault/utils/vaultdefine.h \
       --replace-fail "/usr/bin/deepin-compressor" "deepin-compressor"
@@ -99,7 +115,7 @@ stdenv.mkDerivation rec {
     dde-qt-dbus-factory
     glibmm
     docparser
-    dde-dock
+    dde-tray-loader
     qtx11extras
     qtmultimedia
     kcodecs
diff --git a/pkgs/desktops/deepin/core/dde-grand-search/default.nix b/pkgs/desktops/deepin/core/dde-grand-search/default.nix
index 2d07a478fec35..11f2d4d403f4b 100644
--- a/pkgs/desktops/deepin/core/dde-grand-search/default.nix
+++ b/pkgs/desktops/deepin/core/dde-grand-search/default.nix
@@ -8,7 +8,7 @@
   wrapQtAppsHook,
   dtkwidget,
   dde-qt-dbus-factory,
-  dde-dock,
+  dde-tray-loader,
   deepin-pdfium,
   qt5integration,
   qt5platform-plugins,
@@ -16,18 +16,20 @@
   ffmpeg,
   ffmpegthumbnailer,
   pcre,
+  lucenepp,
+  boost,
   dbus,
 }:
 
 stdenv.mkDerivation rec {
   pname = "dde-grand-search";
-  version = "5.4.9";
+  version = "5.5.2";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    hash = "sha256-WybwV1QIuV7O1SSgQU1ABsMf5QW9KJ95YyIa8Tz8pJ0=";
+    hash = "sha256-6s6M0cL8gjq1B5tuIRGPi8D69p4T8hPJv5QvBIvsO1w=";
   };
 
   nativeBuildInputs = [
@@ -39,7 +41,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     dtkwidget
-    dde-dock
+    dde-tray-loader
     dde-qt-dbus-factory
     deepin-pdfium
     qt5integration
@@ -48,13 +50,14 @@ stdenv.mkDerivation rec {
     ffmpeg
     ffmpegthumbnailer
     pcre
+    lucenepp
+    boost
   ];
 
   patches = [
     # This patch revert the commit e6735e7
     # FIXME: why StartManager can't work, is dde-api-proxy still required?
     ./fix-dbus-path-for-daemon.diff
-    ./patch-check-v23-interface.diff
   ];
 
   postPatch = ''
@@ -69,10 +72,7 @@ stdenv.mkDerivation rec {
     substituteAllInPlace src/grand-search-daemon/data/com.deepin.dde.daemon.GrandSearch.service
   '';
 
-  cmakeFlags = [
-    "-DVERSION=${version}"
-    "-DNIX_DEEPIN_VERSION=23"
-  ];
+  cmakeFlags = [ "-DVERSION=${version}" ];
 
   meta = {
     description = "System-wide desktop search for DDE";
diff --git a/pkgs/desktops/deepin/core/dde-grand-search/patch-check-v23-interface.diff b/pkgs/desktops/deepin/core/dde-grand-search/patch-check-v23-interface.diff
deleted file mode 100644
index bcb9f2b6c0c2f..0000000000000
--- a/pkgs/desktops/deepin/core/dde-grand-search/patch-check-v23-interface.diff
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 76dac13..f43600e 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -24,7 +24,7 @@ endif()
- 
- #Indentify the version
- find_package(DtkCMake REQUIRED)
--if (${DEEPIN_OS_VERSION} MATCHES "23")
-+if (${NIX_DEEPIN_VERSION} MATCHES "23")
-     add_definitions(-DCOMPILE_ON_V23)
-     set(COMPLIE_ON_V23 TRUE)
-     message("COMPILE ON v23")
diff --git a/pkgs/desktops/deepin/core/dde-gsettings-schemas/default.nix b/pkgs/desktops/deepin/core/dde-gsettings-schemas/default.nix
index bdbd5e1b136be..0581339c254f3 100644
--- a/pkgs/desktops/deepin/core/dde-gsettings-schemas/default.nix
+++ b/pkgs/desktops/deepin/core/dde-gsettings-schemas/default.nix
@@ -7,6 +7,7 @@
   startdde,
   dde-session-shell,
   dde-file-manager,
+  dde-tray-loader,
   deepin-desktop-schemas,
   deepin-movie-reborn,
   deepin-system-monitor,
@@ -21,6 +22,7 @@ let
     startdde
     dde-session-shell
     dde-file-manager
+    dde-tray-loader
     deepin-desktop-schemas
     deepin-movie-reborn
     deepin-system-monitor
diff --git a/pkgs/desktops/deepin/core/dde-launchpad/default.nix b/pkgs/desktops/deepin/core/dde-launchpad/default.nix
index d1474b5bea975..44d46a0c9fae0 100644
--- a/pkgs/desktops/deepin/core/dde-launchpad/default.nix
+++ b/pkgs/desktops/deepin/core/dde-launchpad/default.nix
@@ -13,13 +13,13 @@
 
 stdenv.mkDerivation rec {
   pname = "dde-launchpad";
-  version = "0.7.0";
+  version = "0.8.4";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    hash = "sha256-nT89cUx7Bxf+d+fgqvXZ9U0i/qf1oP2alUB90UXpNcM=";
+    hash = "sha256-MPOzKAgwhJa7pMO6EZ6vYyYgZSD/SbU/L0L1dkN9/po=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/deepin/core/dde-network-core/default.nix b/pkgs/desktops/deepin/core/dde-network-core/default.nix
index 518fd99548f06..422b239edf184 100644
--- a/pkgs/desktops/deepin/core/dde-network-core/default.nix
+++ b/pkgs/desktops/deepin/core/dde-network-core/default.nix
@@ -9,7 +9,6 @@
   qtbase,
   qtsvg,
   dtkwidget,
-  dde-dock,
   dde-control-center,
   dde-session-shell,
   networkmanager-qt,
@@ -19,13 +18,13 @@
 
 stdenv.mkDerivation rec {
   pname = "dde-network-core";
-  version = "2.0.31";
+  version = "2.0.32";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    hash = "sha256-vTcADZElqNZMzWKDCEFtH3oXNyW8i4wxAwnaBnyz6X8=";
+    hash = "sha256-dXLvBCNitlV07dH/rPatsbP6DFf8SZQ7hcDUYtqt2FA=";
   };
 
   nativeBuildInputs = [
@@ -39,7 +38,6 @@ stdenv.mkDerivation rec {
     qtbase
     qtsvg
     dtkwidget
-    dde-dock
     dde-control-center
     dde-session-shell
     networkmanager-qt
diff --git a/pkgs/desktops/deepin/core/dde-session-ui/default.nix b/pkgs/desktops/deepin/core/dde-session-ui/default.nix
index a2ce7f0090212..4a7e5cf9b0168 100644
--- a/pkgs/desktops/deepin/core/dde-session-ui/default.nix
+++ b/pkgs/desktops/deepin/core/dde-session-ui/default.nix
@@ -10,7 +10,7 @@
   dtkwidget,
   qt5integration,
   qt5platform-plugins,
-  dde-dock,
+  dde-tray-loader,
   gsettings-qt,
   qtx11extras,
   gtest,
@@ -50,7 +50,7 @@ stdenv.mkDerivation rec {
     qtbase
     dtkwidget
     qt5platform-plugins
-    dde-dock
+    dde-tray-loader
     gsettings-qt
     qtx11extras
     gtest
diff --git a/pkgs/desktops/deepin/core/dde-shell/default.nix b/pkgs/desktops/deepin/core/dde-shell/default.nix
index 72696ba352143..4f4a3f0f71e68 100644
--- a/pkgs/desktops/deepin/core/dde-shell/default.nix
+++ b/pkgs/desktops/deepin/core/dde-shell/default.nix
@@ -2,6 +2,7 @@
   stdenv,
   lib,
   fetchFromGitHub,
+  fetchpatch,
   cmake,
   extra-cmake-modules,
   pkg-config,
@@ -13,7 +14,7 @@
   qt6Packages,
   qt6integration,
   qt6platform-plugins,
-  kdePackages,
+  dde-tray-loader,
   wayland,
   wayland-protocols,
   yaml-cpp,
@@ -22,24 +23,27 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "dde-shell";
-  version = "0.0.23-unstable-2024-06-11";
+  version = "0.0.43";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = "dde-shell";
-    rev = "d68cc64ad2cd6978af2f34deb3ef48f991d54fc3";
-    hash = "sha256-hVrdfbtcL3EJitiDghNSuGr5MX/VVT1J3tuY6wjwYcw=";
+    rev = finalAttrs.version;
+    hash = "sha256-wSk1gEJbTxKUPZ6DiTeVw2qyX+CwANA37ZP0tXnz0J0=";
   };
 
   patches = [
-    ./disable-plugins-use-qt5.diff
     ./fix-path-for-nixos.diff
-    ./only-use-qt6.diff # remove in next release
+    (fetchpatch {
+      name = "fix-libdock-plugin_so-contains-a-forbidden-reference.diff";
+      url = "https://github.com/linuxdeepin/dde-shell/commit/bf9a0472bc44748a3c389d796d144dad6b13617b.patch";
+      hash = "sha256-cP5zMsfPyi4FIR1OIbVSnn+Z+KqRuIK7a214VjVb/7w=";
+    })
   ];
 
   postPatch = ''
-    for file in $(grep -rl "/usr/lib/dde-dock/tmp"); do
-      substituteInPlace $file --replace-fail "/usr/lib/dde-dock/tmp" "/run/current-system/sw/lib/dde-dock/tmp"
+    for file in $(grep -rl "/usr/lib/dde-dock"); do
+      substituteInPlace $file --replace-fail "/usr/lib/dde-dock" "/run/current-system/sw/lib/dde-dock"
     done
 
     for file in $(grep -rl "/usr/lib/deepin-daemon"); do
@@ -57,6 +61,7 @@ stdenv.mkDerivation (finalAttrs: {
   ];
 
   buildInputs = [
+    dde-tray-loader
     dtk6declarative
     dtk6widget
     dde-qt-dbus-factory
@@ -64,7 +69,7 @@ stdenv.mkDerivation (finalAttrs: {
     qt6Packages.qtwayland
     qt6Packages.qtsvg
     qt6platform-plugins
-    kdePackages.networkmanager-qt
+    qt6integration
     wayland
     wayland-protocols
     yaml-cpp
@@ -77,8 +82,7 @@ stdenv.mkDerivation (finalAttrs: {
   cmakeFlags = [ "-DQML_INSTALL_DIR=${placeholder "out"}/${qt6Packages.qtbase.qtQmlPrefix}" ];
 
   qtWrapperArgs = [
-    # qt6integration must be placed before qtsvg in QT_PLUGIN_PATH
-    "--prefix QT_PLUGIN_PATH : ${qt6integration}/${qt6Packages.qtbase.qtPluginPrefix}"
+    "--prefix TRAY_LOADER_EXECUTE_PATH : ${dde-tray-loader}/libexec/trayplugin-loader"
     "--suffix DDE_SHELL_PLUGIN_PATH : /run/current-system/sw/lib/dde-shell"
     "--suffix DDE_SHELL_PACKAGE_PATH : /run/current-system/sw/share/dde-shell"
   ];
diff --git a/pkgs/desktops/deepin/core/dde-shell/disable-plugins-use-qt5.diff b/pkgs/desktops/deepin/core/dde-shell/disable-plugins-use-qt5.diff
deleted file mode 100644
index 0e1107abc7dc9..0000000000000
--- a/pkgs/desktops/deepin/core/dde-shell/disable-plugins-use-qt5.diff
+++ /dev/null
@@ -1,18 +0,0 @@
-diff --git a/panels/dock/CMakeLists.txt b/panels/dock/CMakeLists.txt
-index 1a20179..83c5ff2 100644
---- a/panels/dock/CMakeLists.txt
-+++ b/panels/dock/CMakeLists.txt
-@@ -85,11 +85,11 @@ add_subdirectory(searchitem)
- add_subdirectory(launcherItem)
- add_subdirectory(showdesktop)
- add_subdirectory(taskmanager)
--add_subdirectory(tray)
-+ add_subdirectory(tray)
- add_subdirectory(multitaskview)
- 
- # dock plugin load program
--add_subdirectory(dockplugin)
-+#add_subdirectory(dockplugin)
- 
- # dock qml element(include Dock.xx defines and DockCompositor)
- file(
diff --git a/pkgs/desktops/deepin/core/dde-shell/only-use-qt6.diff b/pkgs/desktops/deepin/core/dde-shell/only-use-qt6.diff
deleted file mode 100644
index cdfad415403e1..0000000000000
--- a/pkgs/desktops/deepin/core/dde-shell/only-use-qt6.diff
+++ /dev/null
@@ -1,26 +0,0 @@
-diff --git a/panels/dock/tray/CMakeLists.txt b/panels/dock/tray/CMakeLists.txt
-index ed6da31..1a33d06 100644
---- a/panels/dock/tray/CMakeLists.txt
-+++ b/panels/dock/tray/CMakeLists.txt
-@@ -10,7 +10,7 @@ endif()
- 
- # project(dde-dock)
- 
--find_package(DtkTools REQUIRED)
-+find_package(Dtk6Tools REQUIRED)
- 
- set(CMAKE_THREAD_LIBS_INIT "-lpthread")
- set(CMAKE_HAVE_THREADS_LIBRARY 1)
-diff --git a/panels/dock/tray/frame/CMakeLists.txt b/panels/dock/tray/frame/CMakeLists.txt
-index b55aa48..0a397cb 100644
---- a/panels/dock/tray/frame/CMakeLists.txt
-+++ b/panels/dock/tray/frame/CMakeLists.txt
-@@ -22,7 +22,7 @@ find_package(Qt6WaylandClient REQUIRED)
- find_package(Dtk6Gui REQUIRED)
- find_package(Dtk6Core REQUIRED)
- find_package(Dtk6Widget REQUIRED)
--find_package(DtkCMake REQUIRED)
-+find_package(Dtk6CMake REQUIRED)
- # find_package(dbusmenu-qt6 REQUIRED)
- find_package(ECM REQUIRED NO_MODULE)
- set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH})
diff --git a/pkgs/desktops/deepin/core/dde-tray-loader/default.nix b/pkgs/desktops/deepin/core/dde-tray-loader/default.nix
new file mode 100644
index 0000000000000..c1e2fde90e852
--- /dev/null
+++ b/pkgs/desktops/deepin/core/dde-tray-loader/default.nix
@@ -0,0 +1,69 @@
+{
+  stdenv,
+  lib,
+  fetchFromGitHub,
+  fetchpatch,
+  cmake,
+  extra-cmake-modules,
+  pkg-config,
+  dtkwidget,
+  dde-qt-dbus-factory,
+  qt5integration,
+  qt5platform-plugins,
+  wayland,
+  wayland-scanner,
+  xorg,
+  libsForQt5,
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "dde-tray-loader";
+  version = "0.0.11";
+
+  src = fetchFromGitHub {
+    owner = "linuxdeepin";
+    repo = "dde-tray-loader";
+    rev = finalAttrs.version;
+    hash = "sha256-kz8+essf6O3ckeY5/5a/Z6539qNcfOnGbGTqSo5swhc=";
+  };
+
+  patches = [
+    (fetchpatch {
+      name = "set-version-for-dde-dock_pc.patch";
+      url = "https://github.com/linuxdeepin/dde-tray-loader/commit/0f9b90a9aa8096a92c21c8f01d29b4785aaf04e5.patch";
+      hash = "sha256-A6k8XjyIDbA+XuUxYWd5yxFJ8yOWMOtUH5Vg10o//YM=";
+    })
+  ];
+
+  nativeBuildInputs = [
+    cmake
+    extra-cmake-modules
+    pkg-config
+    libsForQt5.wrapQtAppsHook
+    libsForQt5.qttools
+    wayland-scanner
+  ];
+
+  buildInputs = [
+    dtkwidget
+    dde-qt-dbus-factory
+    qt5integration
+    qt5platform-plugins
+    libsForQt5.qtbase
+    libsForQt5.qtsvg
+    libsForQt5.qtwayland
+    libsForQt5.networkmanager-qt
+    libsForQt5.libdbusmenu
+    wayland
+    xorg.libXcursor
+    xorg.libXtst
+  ];
+
+  meta = {
+    description = "Tray plugins that integrated into task bar";
+    homepage = "https://github.com/linuxdeepin/dde-tray-loader";
+    license = with lib.licenses; [ gpl3Plus ];
+    platforms = lib.platforms.linux;
+    maintainers = with lib.maintainers; [ rewine ];
+  };
+})
diff --git a/pkgs/desktops/deepin/default.nix b/pkgs/desktops/deepin/default.nix
index 4280b290a3e63..d65299696e041 100644
--- a/pkgs/desktops/deepin/default.nix
+++ b/pkgs/desktops/deepin/default.nix
@@ -48,7 +48,6 @@ let
       dde-control-center = callPackage ./core/dde-control-center { };
       dde-calendar = callPackage ./core/dde-calendar { };
       dde-clipboard = callPackage ./core/dde-clipboard { };
-      dde-dock = callPackage ./core/dde-dock { };
       dde-file-manager = callPackage ./core/dde-file-manager { };
       dde-launchpad = callPackage ./core/dde-launchpad { };
       dde-network-core = callPackage ./core/dde-network-core { };
@@ -62,6 +61,8 @@ let
       dde-widgets = callPackage ./core/dde-widgets { };
       dde-shell = callPackage ./core/dde-shell { };
       dde-grand-search = callPackage ./core/dde-grand-search { };
+      dde-tray-loader = callPackage ./core/dde-tray-loader { };
+      dde-api-proxy = callPackage ./core/dde-api-proxy { };
 
       #### Dtk Application
       deepin-album = callPackage ./apps/deepin-album { };
@@ -109,6 +110,7 @@ let
     // lib.optionalAttrs config.allowAliases {
       dde-kwin = throw "The 'deepin.dde-kwin' package was removed as it is outdated and no longer relevant."; # added 2023-09-27
       dde-launcher = throw "The 'deepin.dde-launcher' is no longer maintained. Please use 'deepin.dde-launchpad' instead."; # added 2023-11-23
+      dde-dock = throw "The 'deepin.dde-dock' is no longer maintained. Please use 'deepin.dde-tray-loader' instead."; # added 2024-08-28
       deepin-clone = throw "The 'deepin.deepin-clone' package was removed as it is broken and unmaintained."; # added 2024-08-23
       go-lib = throw "Then 'deepin.go-lib' package was removed, use 'go mod' to manage it"; # added 2024-05-31
       go-gir-generator = throw "Then 'deepin.go-gir-generator' package was removed, use 'go mod' to manage it"; # added 2024-05-31
diff --git a/pkgs/desktops/deepin/library/docparser/default.nix b/pkgs/desktops/deepin/library/docparser/default.nix
index a283ac1098a9f..e909169a0854d 100644
--- a/pkgs/desktops/deepin/library/docparser/default.nix
+++ b/pkgs/desktops/deepin/library/docparser/default.nix
@@ -7,17 +7,21 @@
   qttools,
   wrapQtAppsHook,
   poppler,
+  pugixml,
+  libzip,
+  libuuid,
+  tinyxml-2,
 }:
 
 stdenv.mkDerivation rec {
   pname = "docparser";
-  version = "1.0.3";
+  version = "1.0.11";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "sha256-iWRWSu8fALTTLLWdQGbpunN/1tpvKxuN/ZWJg34x0mU=";
+    hash = "sha256-shZXhs9ncgm6rECvCWrLi26RO1WAc1gRowoYmeKesfk=";
   };
 
   nativeBuildInputs = [
@@ -27,15 +31,21 @@ stdenv.mkDerivation rec {
     wrapQtAppsHook
   ];
 
-  buildInputs = [ poppler ];
+  buildInputs = [
+    poppler
+    pugixml
+    libzip
+    libuuid
+    tinyxml-2
+  ];
 
   qmakeFlags = [ "VERSION=${version}" ];
 
-  meta = with lib; {
+  meta = {
     description = "Document parser library ported from document2html";
     homepage = "https://github.com/linuxdeepin/docparser";
-    license = licenses.gpl3Plus;
-    platforms = platforms.linux;
-    maintainers = teams.deepin.members;
+    license = lib.licenses.gpl3Plus;
+    platforms = lib.platforms.linux;
+    maintainers = lib.teams.deepin.members;
   };
 }
diff --git a/pkgs/desktops/deepin/library/dtk6gui/default.nix b/pkgs/desktops/deepin/library/dtk6gui/default.nix
index 53ca9621bb266..524a4bbb1c288 100644
--- a/pkgs/desktops/deepin/library/dtk6gui/default.nix
+++ b/pkgs/desktops/deepin/library/dtk6gui/default.nix
@@ -26,6 +26,11 @@ stdenv.mkDerivation (finalAttrs: {
     ./fix-pri-path.patch
   ];
 
+  postPatch = ''
+    substituteInPlace src/util/dsvgrenderer.cpp \
+      --replace-fail 'QLibrary("rsvg-2", "2")' 'QLibrary("${lib.getLib librsvg}/lib/librsvg-2.so")'
+  '';
+
   nativeBuildInputs = [
     cmake
     pkg-config
diff --git a/pkgs/desktops/deepin/library/dtkgui/default.nix b/pkgs/desktops/deepin/library/dtkgui/default.nix
index 1b8c912653660..449a9d4156a14 100644
--- a/pkgs/desktops/deepin/library/dtkgui/default.nix
+++ b/pkgs/desktops/deepin/library/dtkgui/default.nix
@@ -27,6 +27,11 @@ stdenv.mkDerivation rec {
     ./fix-pri-path.patch
   ];
 
+  postPatch = ''
+    substituteInPlace src/util/dsvgrenderer.cpp \
+      --replace-fail 'QLibrary("rsvg-2", "2")' 'QLibrary("${lib.getLib librsvg}/lib/librsvg-2.so")'
+  '';
+
   nativeBuildInputs = [
     cmake
     doxygen
diff --git a/pkgs/desktops/deepin/library/util-dfm/default.nix b/pkgs/desktops/deepin/library/util-dfm/default.nix
index 140b28fc7327b..b7c2071a3868c 100644
--- a/pkgs/desktops/deepin/library/util-dfm/default.nix
+++ b/pkgs/desktops/deepin/library/util-dfm/default.nix
@@ -14,13 +14,13 @@
 
 stdenv.mkDerivation rec {
   pname = "util-dfm";
-  version = "1.2.24";
+  version = "1.3.2";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    hash = "sha256-7MuQVkb+xRMtcbB5PQBv6Au/i3ONA0c1whnZ9bMrA/8=";
+    hash = "sha256-ngDjjdwuYqvyhaUcMNV5PRmGKC3lmY/nJQGOQgRMIQE=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/deepin/misc/deepin-desktop-base/default.nix b/pkgs/desktops/deepin/misc/deepin-desktop-base/default.nix
index 7f4c433914c27..197928a864073 100644
--- a/pkgs/desktops/deepin/misc/deepin-desktop-base/default.nix
+++ b/pkgs/desktops/deepin/misc/deepin-desktop-base/default.nix
@@ -6,13 +6,13 @@
 }:
 stdenvNoCC.mkDerivation rec {
   pname = "deepin-desktop-base";
-  version = "2024.01.03";
+  version = "2024.07.24";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    hash = "sha256-45qR1LCnA8ZSrWykqNvvm7Dxbi5pQnAuFy6nZJrzyi0=";
+    hash = "sha256-JOC8nQ/YgUpY93FcniO2uypAfsL/SNU+KfTrthoZfQo=";
   };
 
   makeFlags = [ "DESTDIR=${placeholder "out"}" ];