about summary refs log tree commit diff
path: root/nixpkgs/pkgs/desktops/deepin/library
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/desktops/deepin/library')
-rw-r--r--nixpkgs/pkgs/desktops/deepin/library/dde-qt-dbus-factory/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/deepin/library/deepin-ocr-plugin-manager/default.nix60
-rw-r--r--nixpkgs/pkgs/desktops/deepin/library/deepin-pdfium/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/deepin/library/dtkcommon/default.nix20
-rw-r--r--nixpkgs/pkgs/desktops/deepin/library/dtkcore/default.nix24
-rw-r--r--nixpkgs/pkgs/desktops/deepin/library/dtkcore/fix-pkgconfig-path.patch14
-rw-r--r--nixpkgs/pkgs/desktops/deepin/library/dtkcore/fix-pri-path.patch17
-rw-r--r--nixpkgs/pkgs/desktops/deepin/library/dtkdeclarative/default.nix72
-rw-r--r--nixpkgs/pkgs/desktops/deepin/library/dtkdeclarative/fix-pkgconfig-path.patch14
-rw-r--r--nixpkgs/pkgs/desktops/deepin/library/dtkdeclarative/fix-pri-path.patch15
-rw-r--r--nixpkgs/pkgs/desktops/deepin/library/dtkgui/default.nix25
-rw-r--r--nixpkgs/pkgs/desktops/deepin/library/dtkgui/fix-pkgconfig-path.patch16
-rw-r--r--nixpkgs/pkgs/desktops/deepin/library/dtkgui/fix-pri-path.patch17
-rw-r--r--nixpkgs/pkgs/desktops/deepin/library/dtkwidget/default.nix21
-rw-r--r--nixpkgs/pkgs/desktops/deepin/library/dtkwidget/fix-pkgconfig-path.patch14
-rw-r--r--nixpkgs/pkgs/desktops/deepin/library/dtkwidget/fix-pri-path.patch17
-rw-r--r--nixpkgs/pkgs/desktops/deepin/library/dwayland/default.nix9
-rw-r--r--nixpkgs/pkgs/desktops/deepin/library/image-editor/default.nix7
-rw-r--r--nixpkgs/pkgs/desktops/deepin/library/qt5integration/default.nix27
-rw-r--r--nixpkgs/pkgs/desktops/deepin/library/qt5platform-plugins/default.nix40
-rw-r--r--nixpkgs/pkgs/desktops/deepin/library/util-dfm/default.nix4
21 files changed, 361 insertions, 80 deletions
diff --git a/nixpkgs/pkgs/desktops/deepin/library/dde-qt-dbus-factory/default.nix b/nixpkgs/pkgs/desktops/deepin/library/dde-qt-dbus-factory/default.nix
index ef302c5b7222..323a37cac79f 100644
--- a/nixpkgs/pkgs/desktops/deepin/library/dde-qt-dbus-factory/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/library/dde-qt-dbus-factory/default.nix
@@ -10,13 +10,13 @@
 
 stdenv.mkDerivation rec {
   pname = "dde-qt-dbus-factory";
-  version = "5.5.22";
+  version = "6.0.0";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "sha256-jqk04S+i3py3rVJcHmkPKHsU+eNEN1yoUBBlfXBbcwM=";
+    hash = "sha256-9r5thJJjEZAuDT0N/m1gcr0Faa8WpZOtGKDYuZEvJis=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/desktops/deepin/library/deepin-ocr-plugin-manager/default.nix b/nixpkgs/pkgs/desktops/deepin/library/deepin-ocr-plugin-manager/default.nix
new file mode 100644
index 000000000000..3db5f0a0bd34
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/deepin/library/deepin-ocr-plugin-manager/default.nix
@@ -0,0 +1,60 @@
+{ stdenv
+, lib
+, fetchFromGitHub
+, pkg-config
+, cmake
+, qttools
+, wrapQtAppsHook
+, libisoburn
+, ncnn
+, opencv
+, vulkan-headers
+}:
+
+stdenv.mkDerivation rec {
+  pname = "deepin-ocr-plugin-manager";
+  version = "unstable-2023-07-10";
+
+  src = fetchFromGitHub {
+    owner = "linuxdeepin";
+    repo = pname;
+    rev = "9b5c9e57c83b5adde383ed404b73f9dcbf5e6a48";
+    hash = "sha256-U5lxAKTaQvvlqbqRezPIcBGg+DpF1hZ204Y1+8dt14U=";
+  };
+
+  # don't use vendored opencv
+  postPatch = ''
+    substituteInPlace src/CMakeLists.txt \
+      --replace "opencv_mobile" "opencv4"
+    substituteInPlace src/paddleocr-ncnn/paddleocr.cpp \
+      --replace "/usr" "$out"
+  '';
+
+  nativeBuildInputs = [
+    cmake
+    qttools
+    pkg-config
+    wrapQtAppsHook
+  ];
+
+  buildInputs = [
+    ncnn
+    opencv
+    vulkan-headers
+  ];
+
+  strictDeps = true;
+
+  cmakeFlags = [
+    "-DCMAKE_INSTALL_LIBDIR=lib"
+    "-DCMAKE_INSTALL_INCLUDEDIR=include"
+  ];
+
+  meta = with lib; {
+    description = "Plugin manager of optical character recognition for DDE";
+    homepage = "https://github.com/linuxdeepin/deepin-ocr-plugin-manager";
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
+    maintainers = teams.deepin.members;
+  };
+}
diff --git a/nixpkgs/pkgs/desktops/deepin/library/deepin-pdfium/default.nix b/nixpkgs/pkgs/desktops/deepin/library/deepin-pdfium/default.nix
index ef496931bea2..a4912eabe5f3 100644
--- a/nixpkgs/pkgs/desktops/deepin/library/deepin-pdfium/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/library/deepin-pdfium/default.nix
@@ -10,13 +10,13 @@
 
 stdenv.mkDerivation rec {
   pname = "deepin-pdfium";
-  version = "1.0.1";
+  version = "1.0.2";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "sha256-gUIQ+fZ7VaYaIj1hbzER10ceoJZbvhJlnDTFIShMrKw=";
+    hash = "sha256-ymJSTAccwRumXrh4VjwarKYgaqadMBrtXM1rjWNfe8o=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/desktops/deepin/library/dtkcommon/default.nix b/nixpkgs/pkgs/desktops/deepin/library/dtkcommon/default.nix
index a0845277355e..b3aa4481c9b8 100644
--- a/nixpkgs/pkgs/desktops/deepin/library/dtkcommon/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/library/dtkcommon/default.nix
@@ -1,39 +1,25 @@
 { stdenv
 , lib
 , fetchFromGitHub
-, pkg-config
 , cmake
-, qtbase
-, qttools
-, wrapQtAppsHook
-, glib
 }:
 
 stdenv.mkDerivation rec {
   pname = "dtkcommon";
-  version = "5.6.9";
+  version = "5.6.17";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "sha256-FHXwgFTevCGTNUPlb/oeltE2//Sjwz7YVvko7QPOsRo=";
+    hash = "sha256-mquBuF+Gzq5txxCczeS+gI8LshdKnK5WnpOCytNki+w=";
   };
 
   nativeBuildInputs = [
     cmake
-    pkg-config
-    qttools
-    wrapQtAppsHook
   ];
 
-  buildInputs = [ qtbase ];
-
-  qmakeFlags = [ "PREFIX=${placeholder "out"}" ];
-
-  preFixup = ''
-    glib-compile-schemas ${glib.makeSchemaPath "$out" "${pname}-${version}"}
-  '';
+  dontWrapQtApps = true;
 
   meta = with lib; {
     description = "A public project for building DTK Library";
diff --git a/nixpkgs/pkgs/desktops/deepin/library/dtkcore/default.nix b/nixpkgs/pkgs/desktops/deepin/library/dtkcore/default.nix
index 3ca5622d197c..e3b4d1166c91 100644
--- a/nixpkgs/pkgs/desktops/deepin/library/dtkcore/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/library/dtkcore/default.nix
@@ -10,6 +10,7 @@
 , gsettings-qt
 , lshw
 , libuchardet
+, spdlog
 , dtkcommon
 , systemd
 , withSystemd ? lib.meta.availableOn stdenv.hostPlatform systemd
@@ -17,15 +18,20 @@
 
 stdenv.mkDerivation rec {
   pname = "dtkcore";
-  version = "5.6.10";
+  version = "5.6.17";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "sha256-ge8DiJMSaZo7GeQEgnDbi5SLsLxtOQ/P5/9aBgaG7Ds=";
+    hash = "sha256-/MGSvT8tPn+KqqlM6FY2iFsArmAkYMW5Q3Sl4g4zvH0=";
   };
 
+  patches = [
+    ./fix-pkgconfig-path.patch
+    ./fix-pri-path.patch
+  ];
+
   postPatch = ''
     substituteInPlace src/dsysinfo.cpp \
       --replace "/usr/share/deepin/distribution.info" "/etc/distribution.info" \
@@ -39,25 +45,27 @@ stdenv.mkDerivation rec {
     wrapQtAppsHook
   ];
 
+  dontWrapQtApps = true;
+
   buildInputs = [
     qtbase
     gsettings-qt
     lshw
     libuchardet
+    spdlog
   ]
   ++ lib.optional withSystemd systemd;
 
   propagatedBuildInputs = [ dtkcommon ];
 
   cmakeFlags = [
-    "-DDVERSION=${version}"
-    "-DBUILD_EXAMPLES=OFF"
+    "-DDTK_VERSION=${version}"
     "-DBUILD_DOCS=ON"
-    "-DQCH_INSTALL_DESTINATION=${qtbase.qtDocPrefix}"
+    "-DBUILD_EXAMPLES=OFF"
+    "-DQCH_INSTALL_DESTINATION=${placeholder "doc"}/${qtbase.qtDocPrefix}"
     "-DDSG_PREFIX_PATH='/run/current-system/sw'"
     "-DMKSPECS_INSTALL_DIR=${placeholder "out"}/mkspecs/modules"
-    "-DCMAKE_INSTALL_LIBDIR=lib"
-    "-DCMAKE_INSTALL_INCLUDEDIR=include"
+    "-DCMAKE_INSTALL_LIBEXECDIR=${placeholder "dev"}/libexec"
     "-DD_DSG_APP_DATA_FALLBACK=/var/dsg/appdata"
     "-DBUILD_WITH_SYSTEMD=${if withSystemd then "ON" else "OFF"}"
   ];
@@ -68,6 +76,8 @@ stdenv.mkDerivation rec {
     export QT_PLUGIN_PATH=${qtbase.bin}/${qtbase.qtPluginPrefix}
   '';
 
+  outputs = [ "out" "dev" "doc" ];
+
   meta = with lib; {
     description = "Deepin tool kit core library";
     homepage = "https://github.com/linuxdeepin/dtkcore";
diff --git a/nixpkgs/pkgs/desktops/deepin/library/dtkcore/fix-pkgconfig-path.patch b/nixpkgs/pkgs/desktops/deepin/library/dtkcore/fix-pkgconfig-path.patch
new file mode 100644
index 000000000000..570e34c06147
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/deepin/library/dtkcore/fix-pkgconfig-path.patch
@@ -0,0 +1,14 @@
+diff --git a/misc/dtkcore.pc.in b/misc/dtkcore.pc.in
+index 83eecb7..da24ce8 100644
+--- a/misc/dtkcore.pc.in
++++ b/misc/dtkcore.pc.in
+@@ -1,7 +1,7 @@
+ prefix=@CMAKE_INSTALL_PREFIX@
+ exec_prefix=${prefix}
+-libdir=${prefix}/@LIBRARY_INSTALL_DIR@
+-includedir=${prefix}/@INCLUDE_INSTALL_DIR@
++libdir=@LIBRARY_INSTALL_DIR@
++includedir=@INCLUDE_INSTALL_DIR@
+ 
+ Name: dtk@DTK_VERSION_MAJOR@core
+ Description: Deepin Tool Kit dtkcore header files
diff --git a/nixpkgs/pkgs/desktops/deepin/library/dtkcore/fix-pri-path.patch b/nixpkgs/pkgs/desktops/deepin/library/dtkcore/fix-pri-path.patch
new file mode 100644
index 000000000000..19953ed1733d
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/deepin/library/dtkcore/fix-pri-path.patch
@@ -0,0 +1,17 @@
+diff --git a/misc/qt_lib_dtkcore.pri.in b/misc/qt_lib_dtkcore.pri.in
+index a331f52..ce01dc0 100644
+--- a/misc/qt_lib_dtkcore.pri.in
++++ b/misc/qt_lib_dtkcore.pri.in
+@@ -4,9 +4,9 @@ QT.dtkcore.MINOR_VERSION = @PROJECT_VERSION_MINOR@
+ QT.dtkcore.PATCH_VERSION = @PROJECT_VERSION_PATCH@
+ QT.dtkcore.name = dtkcore
+ QT.dtkcore.module = dtk@DTK_VERSION_MAJOR@core
+-QT.dtkcore.tools = @CMAKE_INSTALL_PREFIX@/@TOOL_INSTALL_DIR@
+-QT.dtkcore.libs = @CMAKE_INSTALL_PREFIX@/@LIBRARY_INSTALL_DIR@
+-QT.dtkcore.includes = @CMAKE_INSTALL_PREFIX@/@INCLUDE_INSTALL_DIR@
++QT.dtkcore.tools = @TOOL_INSTALL_DIR@
++QT.dtkcore.libs = @LIBRARY_INSTALL_DIR@
++QT.dtkcore.includes = @INCLUDE_INSTALL_DIR@
+ QT.dtkcore.frameworks =
+ QT.dtkcore.depends = core dbus xml
+ QT.dtkcore.module_config = v2 ltcg
diff --git a/nixpkgs/pkgs/desktops/deepin/library/dtkdeclarative/default.nix b/nixpkgs/pkgs/desktops/deepin/library/dtkdeclarative/default.nix
new file mode 100644
index 000000000000..511a3950842e
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/deepin/library/dtkdeclarative/default.nix
@@ -0,0 +1,72 @@
+{ stdenv
+, lib
+, fetchFromGitHub
+, cmake
+, pkg-config
+, qttools
+, doxygen
+, wrapQtAppsHook
+, qtbase
+, dtkgui
+, qtdeclarative
+, qtquickcontrols2
+, qtgraphicaleffects
+}:
+
+stdenv.mkDerivation rec {
+  pname = "dtkdeclarative";
+  version = "5.6.17";
+
+  src = fetchFromGitHub {
+    owner = "linuxdeepin";
+    repo = pname;
+    rev = version;
+    hash = "sha256-P0F6GidGp+CkNplKnLiaYVtcxs6N66gGIx6UcplEt08=";
+  };
+
+  patches = [
+    ./fix-pkgconfig-path.patch
+    ./fix-pri-path.patch
+  ];
+
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+    doxygen
+    qttools
+    wrapQtAppsHook
+  ];
+
+  propagatedBuildInputs = [
+    dtkgui
+    qtdeclarative
+    qtquickcontrols2
+    qtgraphicaleffects
+  ];
+
+  cmakeFlags = [
+    "-DDTK_VERSION=${version}"
+    "-DBUILD_DOCS=ON"
+    "-DBUILD_EXAMPLES=ON"
+    "-DMKSPECS_INSTALL_DIR=${placeholder "dev"}/mkspecs/modules"
+    "-DQCH_INSTALL_DESTINATION=${placeholder "doc"}/${qtbase.qtDocPrefix}"
+    "-DQML_INSTALL_DIR=${placeholder "out"}/${qtbase.qtQmlPrefix}"
+  ];
+
+  preConfigure = ''
+    # qt.qpa.plugin: Could not find the Qt platform plugin "minimal"
+    # A workaround is to set QT_PLUGIN_PATH explicitly
+    export QT_PLUGIN_PATH=${qtbase.bin}/${qtbase.qtPluginPrefix}
+    export QML2_IMPORT_PATH=${qtdeclarative.bin}/${qtbase.qtQmlPrefix}
+  '';
+
+  outputs = [ "out" "dev" "doc" ];
+
+  meta = with lib; {
+    description = "A widget development toolkit based on QtQuick/QtQml";
+    homepage = "https://github.com/linuxdeepin/dtkdeclarative";
+    license = licenses.lgpl3Plus;
+    platforms = platforms.linux;
+    maintainers = teams.deepin.members;
+  };
+}
diff --git a/nixpkgs/pkgs/desktops/deepin/library/dtkdeclarative/fix-pkgconfig-path.patch b/nixpkgs/pkgs/desktops/deepin/library/dtkdeclarative/fix-pkgconfig-path.patch
new file mode 100644
index 000000000000..e15ee2f7a0b8
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/deepin/library/dtkdeclarative/fix-pkgconfig-path.patch
@@ -0,0 +1,14 @@
+diff --git a/misc/dtkdeclarative.pc.in b/misc/dtkdeclarative.pc.in
+index dc3827f..fd0949e 100644
+--- a/misc/dtkdeclarative.pc.in
++++ b/misc/dtkdeclarative.pc.in
+@@ -1,7 +1,7 @@
+ prefix=@CMAKE_INSTALL_PREFIX@
+ exec_prefix=${prefix}
+-libdir=${prefix}/@LIB_INSTALL_DIR@
+-includedir=${prefix}/@INCLUDE_INSTALL_DIR@
++libdir=@LIB_INSTALL_DIR@
++includedir=@INCLUDE_INSTALL_DIR@
+ 
+ Name: DtkDeclarative
+ Description: Deepin Tool Kit DtkDeclarative header files
diff --git a/nixpkgs/pkgs/desktops/deepin/library/dtkdeclarative/fix-pri-path.patch b/nixpkgs/pkgs/desktops/deepin/library/dtkdeclarative/fix-pri-path.patch
new file mode 100644
index 000000000000..e622809c3936
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/deepin/library/dtkdeclarative/fix-pri-path.patch
@@ -0,0 +1,15 @@
+diff --git a/misc/qt_lib_dtkdeclarative.pri.in b/misc/qt_lib_dtkdeclarative.pri.in
+index 8797802..44e32a3 100644
+--- a/misc/qt_lib_dtkdeclarative.pri.in
++++ b/misc/qt_lib_dtkdeclarative.pri.in
+@@ -4,8 +4,8 @@ QT.dtkdeclarative.MINOR_VERSION = @PROJECT_VERSION_MINOR@
+ QT.dtkdeclarative.PATCH_VERSION = @PROJECT_VERSION_PATCH@
+ QT.dtkdeclarative.name = dtkdeclarative
+ QT.dtkdeclarative.module = dtk@DTK_VERSION_MAJOR@declarative
+-QT.dtkdeclarative.libs = @CMAKE_INSTALL_PREFIX@/@LIB_INSTALL_DIR@
+-QT.dtkdeclarative.includes = @CMAKE_INSTALL_PREFIX@/@INCLUDE_INSTALL_DIR@
++QT.dtkdeclarative.libs = @LIB_INSTALL_DIR@
++QT.dtkdeclarative.includes = @INCLUDE_INSTALL_DIR@
+ QT.dtkdeclarative.frameworks =
+ QT.dtkdeclarative.depends = core dbus xml gui dtkcore dtkgui quick quick_private
+ QT.dtkdeclarative.module_config = v2 ltcg
diff --git a/nixpkgs/pkgs/desktops/deepin/library/dtkgui/default.nix b/nixpkgs/pkgs/desktops/deepin/library/dtkgui/default.nix
index 5112feffd9ec..7d21911be6b1 100644
--- a/nixpkgs/pkgs/desktops/deepin/library/dtkgui/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/library/dtkgui/default.nix
@@ -1,6 +1,7 @@
 { stdenv
 , lib
 , fetchFromGitHub
+, fetchpatch
 , pkg-config
 , cmake
 , qttools
@@ -17,15 +18,26 @@
 
 stdenv.mkDerivation rec {
   pname = "dtkgui";
-  version = "5.6.10";
+  version = "5.6.17";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "sha256-4NHt/hLtt99LhWvBX9e5ueB5G86SXx553G6fyHZBXcE=";
+    hash = "sha256-ssCVMFCE1vhucYMxXkEZV5YlFxT1JdYGqrzILhWX1XI=";
   };
 
+  patches = [
+    ./fix-pkgconfig-path.patch
+    ./fix-pri-path.patch
+
+    (fetchpatch {
+      name = "fix_svg_with_filter_attribute_rendering_exception.patch";
+      url = "https://github.com/linuxdeepin/dtkgui/commit/f2c9327eb4989ab8ea96af7560c67d1cada794de.patch";
+      hash = "sha256-lfg09tgS4vPuYachRbHdaMYKWdZZ0lP0Hxakkr9JKGs=";
+    })
+  ];
+
   nativeBuildInputs = [
     cmake
     qttools
@@ -48,12 +60,11 @@ stdenv.mkDerivation rec {
   ];
 
   cmakeFlags = [
-    "-DDVERSION=${version}"
+    "-DDTK_VERSION=${version}"
     "-DBUILD_DOCS=ON"
-    "-DQCH_INSTALL_DESTINATION=${qtbase.qtDocPrefix}"
     "-DMKSPECS_INSTALL_DIR=${placeholder "out"}/mkspecs/modules"
-    "-DCMAKE_INSTALL_LIBDIR=lib"
-    "-DCMAKE_INSTALL_INCLUDEDIR=include"
+    "-DQCH_INSTALL_DESTINATION=${placeholder "doc"}/${qtbase.qtDocPrefix}"
+    "-DCMAKE_INSTALL_LIBEXECDIR=${placeholder "dev"}/libexec"
   ];
 
   preConfigure = ''
@@ -62,6 +73,8 @@ stdenv.mkDerivation rec {
     export QT_PLUGIN_PATH=${qtbase.bin}/${qtbase.qtPluginPrefix}
   '';
 
+  outputs = [ "out" "dev" "doc" ];
+
   meta = with lib; {
     description = "Deepin Toolkit, gui module for DDE look and feel";
     homepage = "https://github.com/linuxdeepin/dtkgui";
diff --git a/nixpkgs/pkgs/desktops/deepin/library/dtkgui/fix-pkgconfig-path.patch b/nixpkgs/pkgs/desktops/deepin/library/dtkgui/fix-pkgconfig-path.patch
new file mode 100644
index 000000000000..1485baccc204
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/deepin/library/dtkgui/fix-pkgconfig-path.patch
@@ -0,0 +1,16 @@
+diff --git a/misc/dtkgui.pc.in b/misc/dtkgui.pc.in
+index 89fdbbf..ad817c4 100644
+--- a/misc/dtkgui.pc.in
++++ b/misc/dtkgui.pc.in
+@@ -1,8 +1,8 @@
+ prefix=@CMAKE_INSTALL_PREFIX@
+ exec_prefix=${prefix}
+-libdir=${prefix}/@LIBRARY_INSTALL_DIR@
+-includedir=${prefix}/@INCLUDE_INSTALL_DIR@
+-tooldir=${prefix}/@PACKAGE_TOOL_INSTALL_DIR@
++libdir=@LIBRARY_INSTALL_DIR@
++includedir=@INCLUDE_INSTALL_DIR@
++tooldir=@PACKAGE_TOOL_INSTALL_DIR@
+ 
+ Name: dtk@DTK_VERSION_MAJOR@gui
+ Description: Deepin Tool Kit dtkgui header files
diff --git a/nixpkgs/pkgs/desktops/deepin/library/dtkgui/fix-pri-path.patch b/nixpkgs/pkgs/desktops/deepin/library/dtkgui/fix-pri-path.patch
new file mode 100644
index 000000000000..b746d34b1c79
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/deepin/library/dtkgui/fix-pri-path.patch
@@ -0,0 +1,17 @@
+diff --git a/misc/qt_lib_dtkgui.pri.in b/misc/qt_lib_dtkgui.pri.in
+index 28308ee..9fb25e6 100644
+--- a/misc/qt_lib_dtkgui.pri.in
++++ b/misc/qt_lib_dtkgui.pri.in
+@@ -4,9 +4,9 @@ QT.dtkgui.MINOR_VERSION = @PROJECT_VERSION_MINOR@
+ QT.dtkgui.PATCH_VERSION = @PROJECT_VERSION_PATCH@
+ QT.dtkgui.name = dtkgui
+ QT.dtkgui.module = dtk@DTK_VERSION_MAJOR@gui
+-QT.dtkgui.tools = @CMAKE_INSTALL_PREFIX@/@TOOL_INSTALL_DIR@
+-QT.dtkgui.libs = @CMAKE_INSTALL_PREFIX@/@LIBRARY_INSTALL_DIR@
+-QT.dtkgui.includes = @CMAKE_INSTALL_PREFIX@/@INCLUDE_INSTALL_DIR@
++QT.dtkgui.tools = @TOOL_INSTALL_DIR@
++QT.dtkgui.libs = @LIBRARY_INSTALL_DIR@
++QT.dtkgui.includes = @INCLUDE_INSTALL_DIR@
+ QT.dtkgui.frameworks =
+ QT.dtkgui.depends = core gui dtkcore gui_private dbus network
+ QT.dtkgui.module_config = v2 internal_module ltcg
diff --git a/nixpkgs/pkgs/desktops/deepin/library/dtkwidget/default.nix b/nixpkgs/pkgs/desktops/deepin/library/dtkwidget/default.nix
index 65c556d77b74..b646baa48c3c 100644
--- a/nixpkgs/pkgs/desktops/deepin/library/dtkwidget/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/library/dtkwidget/default.nix
@@ -1,6 +1,7 @@
 { stdenv
 , lib
 , fetchFromGitHub
+, fetchpatch
 , cmake
 , pkg-config
 , qttools
@@ -19,15 +20,20 @@
 
 stdenv.mkDerivation rec {
   pname = "dtkwidget";
-  version = "5.6.10";
+  version = "5.6.17";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "sha256-PhVK/lUFrDW1bn9lUhLuKWLAVj7E7+/YC5USShrg3ds=";
+    hash = "sha256-oFmM0e7ht3lCL50pwS/v/BLFmT2jymQaUZ4SmLdxvMo=";
   };
 
+  patches = [
+    ./fix-pkgconfig-path.patch
+    ./fix-pri-path.patch
+  ];
+
   postPatch = ''
     substituteInPlace src/widgets/dapplication.cpp \
       --replace "auto dataDirs = DStandardPaths::standardLocations(QStandardPaths::GenericDataLocation);" \
@@ -56,12 +62,11 @@ stdenv.mkDerivation rec {
   propagatedBuildInputs = [ dtkgui ];
 
   cmakeFlags = [
-    "-DDVERSION=${version}"
+    "-DDTK_VERSION=${version}"
     "-DBUILD_DOCS=ON"
-    "-DQCH_INSTALL_DESTINATION=${qtbase.qtDocPrefix}"
-    "-DMKSPECS_INSTALL_DIR=${placeholder "out"}/mkspecs/modules"
-    "-DCMAKE_INSTALL_LIBDIR=lib"
-    "-DCMAKE_INSTALL_INCLUDEDIR=include"
+    "-DMKSPECS_INSTALL_DIR=${placeholder "dev"}/mkspecs/modules"
+    "-DQCH_INSTALL_DESTINATION=${placeholder "doc"}/${qtbase.qtDocPrefix}"
+    "-DCMAKE_INSTALL_LIBEXECDIR=${placeholder "dev"}/libexec"
   ];
 
   preConfigure = ''
@@ -70,6 +75,8 @@ stdenv.mkDerivation rec {
     export QT_PLUGIN_PATH=${qtbase.bin}/${qtbase.qtPluginPrefix}
   '';
 
+  outputs = [ "out" "dev" "doc" ];
+
   meta = with lib; {
     description = "Deepin graphical user interface library";
     homepage = "https://github.com/linuxdeepin/dtkwidget";
diff --git a/nixpkgs/pkgs/desktops/deepin/library/dtkwidget/fix-pkgconfig-path.patch b/nixpkgs/pkgs/desktops/deepin/library/dtkwidget/fix-pkgconfig-path.patch
new file mode 100644
index 000000000000..df4452259580
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/deepin/library/dtkwidget/fix-pkgconfig-path.patch
@@ -0,0 +1,14 @@
+diff --git a/misc/DtkWidget.pc.in b/misc/DtkWidget.pc.in
+index 3c610669..b6ed04ca 100644
+--- a/misc/DtkWidget.pc.in
++++ b/misc/DtkWidget.pc.in
+@@ -1,7 +1,7 @@
+ prefix=@CMAKE_INSTALL_PREFIX@
+ exec_prefix=${prefix}
+-libdir=${prefix}/@LIBRARY_INSTALL_DIR@
+-includedir=${prefix}/@INCLUDE_INSTALL_DIR@
++libdir=@LIBRARY_INSTALL_DIR@
++includedir=@INCLUDE_INSTALL_DIR@
+ 
+ Name: dtk@DTK_VERSION_MAJOR@widget
+ Description: Deepin Tool Kit dtkwidget header files
diff --git a/nixpkgs/pkgs/desktops/deepin/library/dtkwidget/fix-pri-path.patch b/nixpkgs/pkgs/desktops/deepin/library/dtkwidget/fix-pri-path.patch
new file mode 100644
index 000000000000..cf2faac94855
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/deepin/library/dtkwidget/fix-pri-path.patch
@@ -0,0 +1,17 @@
+diff --git a/misc/qt_lib_DtkWidget.pri.in b/misc/qt_lib_DtkWidget.pri.in
+index 623878d3..561f5186 100644
+--- a/misc/qt_lib_DtkWidget.pri.in
++++ b/misc/qt_lib_DtkWidget.pri.in
+@@ -4,9 +4,9 @@ QT.dtkwidget.MINOR_VERSION = @PROJECT_VERSION_MINOR@
+ QT.dtkwidget.PATCH_VERSION = @PROJECT_VERSION_PATCH@
+ QT.dtkwidget.name = dtkwidget
+ QT.dtkwidget.module = dtk@DTK_VERSION_MAJOR@widget
+-QT.dtkwidget.tools = @CMAKE_INSTALL_PREFIX@/@TOOL_INSTALL_DIR@
+-QT.dtkwidget.libs = @CMAKE_INSTALL_PREFIX@/@LIBRARY_INSTALL_DIR@
+-QT.dtkwidget.includes = @CMAKE_INSTALL_PREFIX@/@INCLUDE_INSTALL_DIR@
++QT.dtkwidget.tools = @TOOL_INSTALL_DIR@
++QT.dtkwidget.libs = @LIBRARY_INSTALL_DIR@
++QT.dtkwidget.includes = @INCLUDE_INSTALL_DIR@
+ QT.dtkwidget.frameworks =
+ QT.dtkwidget.depends = core gui dtkcore network concurrent dtkgui printsupport printsupport_private widgets widgets_private gui_private x11extras dbus
+ QT.dtkwidget.module_config = v2 internal_module ltcg
diff --git a/nixpkgs/pkgs/desktops/deepin/library/dwayland/default.nix b/nixpkgs/pkgs/desktops/deepin/library/dwayland/default.nix
index a1797344a0b0..7de7292a4a05 100644
--- a/nixpkgs/pkgs/desktops/deepin/library/dwayland/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/library/dwayland/default.nix
@@ -13,13 +13,13 @@
 
 stdenv.mkDerivation rec {
   pname = "dwayland";
-  version = "5.24.3-deepin.1.4";
+  version = "5.25.0";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "sha256-/aWS4uvhxi9azxJWjRE+Bw+veURFO+mC8l9yypseclU=";
+    hash = "sha256-XZvL3lauVW5D3r3kybpS3SiitvwEScqgYe2h9c1DuCs=";
   };
 
   nativeBuildInputs = [
@@ -38,6 +38,11 @@ stdenv.mkDerivation rec {
 
   dontWrapQtApps = true;
 
+  # cmake requires that the kf5 directory must not empty
+  postInstall = ''
+     mkdir $out/include/KF5
+  '';
+
   meta = with lib; {
     description = "Qt-style API to interact with the wayland-client and wayland-server";
     homepage = "https://github.com/linuxdeepin/dwayland";
diff --git a/nixpkgs/pkgs/desktops/deepin/library/image-editor/default.nix b/nixpkgs/pkgs/desktops/deepin/library/image-editor/default.nix
index 005474c19694..e969c2137ef1 100644
--- a/nixpkgs/pkgs/desktops/deepin/library/image-editor/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/library/image-editor/default.nix
@@ -15,19 +15,16 @@
 
 stdenv.mkDerivation rec {
   pname = "image-editor";
-  version = "1.0.32";
+  version = "1.0.35";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    hash = "sha256-mA2pqWXa3i19jCymvUXnG6YUVezDSfRkHx2EoxAhnqU=";
+    hash = "sha256-Xr4tueipQbRHyKLStTWeUcVbX7Baiz0YooaaVk65Y+U=";
   };
 
   postPatch = ''
-    substituteInPlace libimageviewer/service/ffmpegvideothumbnailer.cpp \
-        --replace 'libPath("libffmpegthumbnailer.so")'  'QString("${ffmpegthumbnailer.out}/lib/libffmpegthumbnailer.so")'
-
     substituteInPlace libimageviewer/CMakeLists.txt --replace '/usr' '$out'
     substituteInPlace libimagevisualresult/CMakeLists.txt --replace '/usr' '$out'
   '';
diff --git a/nixpkgs/pkgs/desktops/deepin/library/qt5integration/default.nix b/nixpkgs/pkgs/desktops/deepin/library/qt5integration/default.nix
index 426cb091a32c..f5962e7760e4 100644
--- a/nixpkgs/pkgs/desktops/deepin/library/qt5integration/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/library/qt5integration/default.nix
@@ -2,13 +2,11 @@
 , lib
 , fetchFromGitHub
 , dtkwidget
-, qmake
+, cmake
+, pkg-config
 , qtbase
 , qtsvg
-, pkg-config
-, wrapQtAppsHook
 , qtx11extras
-, qt5platform-plugins
 , lxqt
 , mtdev
 , xorg
@@ -17,37 +15,36 @@
 
 stdenv.mkDerivation rec {
   pname = "qt5integration";
-  version = "5.6.6";
+  version = "5.6.17";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "sha256-7b18ydyy/TIEGDkFAoium1LSx3Qs4I4pYpMfehOBZbY=";
+    hash = "sha256-8ag/cFkjp5u/0/71xKR6z6dXp2NGRIYNNbzzEmgsDmc=";
   };
 
   nativeBuildInputs = [
-    qmake
+    cmake
     pkg-config
-    wrapQtAppsHook
   ];
 
   buildInputs = [
     dtkwidget
+    qtbase
+    qtsvg
     qtx11extras
-    qt5platform-plugins
     mtdev
     lxqt.libqtxdg
     xorg.xcbutilrenderutil
     gtest
   ];
 
-  installPhase = ''
-    runHook preInstall
-    mkdir -p $out/${qtbase.qtPluginPrefix}
-    cp -r bin/plugins/* $out/${qtbase.qtPluginPrefix}/
-    runHook postInstall
-  '';
+  cmakeFlags = [
+    "-DPLUGIN_INSTALL_BASE_DIR=${placeholder "out"}/${qtbase.qtPluginPrefix}"
+  ];
+
+  dontWrapQtApps = true;
 
   meta = with lib; {
     description = "Qt platform theme integration plugins for DDE";
diff --git a/nixpkgs/pkgs/desktops/deepin/library/qt5platform-plugins/default.nix b/nixpkgs/pkgs/desktops/deepin/library/qt5platform-plugins/default.nix
index 1255bdb1534a..87d570ac011e 100644
--- a/nixpkgs/pkgs/desktops/deepin/library/qt5platform-plugins/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/library/qt5platform-plugins/default.nix
@@ -1,54 +1,64 @@
 { stdenv
 , lib
 , fetchFromGitHub
-, qmake
+, fetchpatch
+, cmake
+, extra-cmake-modules
 , pkg-config
+, dtkcommon
 , qtbase
 , qtx11extras
-, wrapQtAppsHook
 , mtdev
 , cairo
 , xorg
-, waylandSupport ? true
 , wayland
+, dwayland
+, qtwayland
 }:
 
 stdenv.mkDerivation rec {
   pname = "qt5platform-plugins";
-  version = "5.6.9";
+  version = "5.6.16";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "sha256-EG5M4rcMK62DX4ywm2IH0lGHC510BnMqcefMlF9pyr8=";
+    hash = "sha256-1/biT8wR44+sdOMhBW/8KMUSBDK/UxuEqsyjTZyjBT4=";
   };
 
   nativeBuildInputs = [
-    qmake
+    cmake
+    extra-cmake-modules
     pkg-config
-    wrapQtAppsHook
   ];
 
   buildInputs = [
+    dtkcommon
     mtdev
     cairo
     qtbase
     qtx11extras
     xorg.libSM
-  ]
-  ++ lib.optionals waylandSupport [
     wayland
+    dwayland
+    qtwayland
   ];
 
-  qmakeFlags = [
-    "INSTALL_PATH=${placeholder "out"}/${qtbase.qtPluginPrefix}/platforms"
-    "QT_XCB_PRIVATE_INCLUDE=${qtbase.src}/src/plugins/platforms/xcb"
-  ]
-  ++ lib.optionals (!waylandSupport) [ "CONFIG+=DISABLE_WAYLAND" ];
+  patches = [
+    (fetchpatch {
+      name = "use-ECM-to-help-dwayland-find-wayland.patch";
+      url = "https://github.com/linuxdeepin/qt5platform-plugins/commit/d7f6230716a0ff5ce34fc7d292ec0af5bbac30e4.patch";
+      hash = "sha256-RY2+QBR3OjUGBX4Y9oVvIRY90IH9rTOCg8dCddkB2WE=";
+    })
+  ];
 
+  cmakeFlags = [
+    "-DINSTALL_PATH=${placeholder "out"}/${qtbase.qtPluginPrefix}/platforms"
+    "-DQT_XCB_PRIVATE_HEADERS=${qtbase.src}/src/plugins/platforms/xcb"
+  ];
 
-  env.NIX_CFLAGS_COMPILE = lib.optionalString waylandSupport "-I${wayland.dev}/include";
+  dontWrapQtApps = true;
 
   meta = with lib; {
     description = "Qt platform plugins for DDE";
diff --git a/nixpkgs/pkgs/desktops/deepin/library/util-dfm/default.nix b/nixpkgs/pkgs/desktops/deepin/library/util-dfm/default.nix
index 73118b5e599f..0d9bda407861 100644
--- a/nixpkgs/pkgs/desktops/deepin/library/util-dfm/default.nix
+++ b/nixpkgs/pkgs/desktops/deepin/library/util-dfm/default.nix
@@ -13,13 +13,13 @@
 
 stdenv.mkDerivation rec {
   pname = "util-dfm";
-  version = "1.2.12";
+  version = "1.2.16";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    hash = "sha256-juZQCRtr0SWrPAz6PAAw2m/MWoTg7831BizziHsId00=";
+    hash = "sha256-o5ubfCpgAHJXqihGyapq7Dj9eQlw2q6VoER/e37tM6w=";
   };
 
   nativeBuildInputs = [