{"id":35346,"date":"2024-11-12T10:30:16","date_gmt":"2024-11-12T02:30:16","guid":{"rendered":"https:\/\/www.deepin.org\/?p=35346"},"modified":"2024-11-12T13:33:02","modified_gmt":"2024-11-12T05:33:02","slug":"dde-qt-6-8-adaptation-guide","status":"publish","type":"post","link":"https:\/\/www.deepin.org.cn\/en\/dde-qt-6-8-adaptation-guide\/","title":{"rendered":"DDE Qt 6.8 Adaptation Guide"},"content":{"rendered":"<img loading=\"lazy\" class=\"alignnone size-full wp-image-35352\" src=\"https:\/\/www.deepin.org\/wp-content\/uploads\/2024\/11\/\u84dd\u8272\u7cbe\u81f4\u8d44\u8baf\u5ba3\u4f20\u5fae\u4fe1\u516c\u4f17\u53f7\u5c01\u9762-1.png\" alt=\"\" width=\"900\" height=\"383\" srcset=\"https:\/\/www.deepin.org.cn\/wp-content\/uploads\/2024\/11\/\u84dd\u8272\u7cbe\u81f4\u8d44\u8baf\u5ba3\u4f20\u5fae\u4fe1\u516c\u4f17\u53f7\u5c01\u9762-1.png 900w, https:\/\/www.deepin.org.cn\/wp-content\/uploads\/2024\/11\/\u84dd\u8272\u7cbe\u81f4\u8d44\u8baf\u5ba3\u4f20\u5fae\u4fe1\u516c\u4f17\u53f7\u5c01\u9762-1-300x128.png 300w, https:\/\/www.deepin.org.cn\/wp-content\/uploads\/2024\/11\/\u84dd\u8272\u7cbe\u81f4\u8d44\u8baf\u5ba3\u4f20\u5fae\u4fe1\u516c\u4f17\u53f7\u5c01\u9762-1-150x64.png 150w, https:\/\/www.deepin.org.cn\/wp-content\/uploads\/2024\/11\/\u84dd\u8272\u7cbe\u81f4\u8d44\u8baf\u5ba3\u4f20\u5fae\u4fe1\u516c\u4f17\u53f7\u5c01\u9762-1-768x327.png 768w, https:\/\/www.deepin.org.cn\/wp-content\/uploads\/2024\/11\/\u84dd\u8272\u7cbe\u81f4\u8d44\u8baf\u5ba3\u4f20\u5fae\u4fe1\u516c\u4f17\u53f7\u5c01\u9762-1-24x10.png 24w, https:\/\/www.deepin.org.cn\/wp-content\/uploads\/2024\/11\/\u84dd\u8272\u7cbe\u81f4\u8d44\u8baf\u5ba3\u4f20\u5fae\u4fe1\u516c\u4f17\u53f7\u5c01\u9762-1-36x15.png 36w, https:\/\/www.deepin.org.cn\/wp-content\/uploads\/2024\/11\/\u84dd\u8272\u7cbe\u81f4\u8d44\u8baf\u5ba3\u4f20\u5fae\u4fe1\u516c\u4f17\u53f7\u5c01\u9762-1-48x20.png 48w\" sizes=\"(max-width: 900px) 100vw, 900px\" \/><\/p>\n<p>Content Source: deepin Plant<\/p>\n<p>Qt 6.8 has been released for some time now, and various distributions have encountered significant issues with several components, including dde-shell, when attempting to port DDE. The DDE team has carried out related emergency repairs. Since some DDE projects are also maintained through forking, to facilitate effective porting by porters, the following precautions are listed here.<\/p>\n<blockquote><p>Note: The testing environment used by the author is Arch Linux, and the following are the test conclusions of the testing repository as of 2024\/10\/25. Unless otherwise specified, the project names mentioned below still use the names of the original repositories corresponding to DDE, not the package names under each distribution.<\/p>\n<p class=\"last-node\">Update: There are now new maintenance branch versions for dde-launchpad, dde-tray-loader, and dde-shell, and some versions already include some of the patches mentioned below. This article only updates the new tag versions that have been physically verified to be usable, but you can also try new tags on the maintenance branch that have not been verified.<\/p>\n<\/blockquote>\n<div class=\"gblog-post__anchorwrap\">\n<p>&nbsp;<\/p>\n<h1 style=\"text-align: center;\"><strong>Branch and Tag Explanation<\/strong><\/h1>\n<\/div>\n<p>For maintenance purposes, for some DDE components (dde-shell, dde-launchpad, dde-tray-loader), we have created a maintenance branch named <code class=\"inlineCode___uUrJ9\">release\/beige<\/code> for the branch used by deepin 23. We also apply corresponding maintenance update tags on the maintenance branch.<\/p>\n<p class=\"last-node\">Since deepin's current testing process requires tagging the test version, we also tag the main (master) branch. To distinguish as much as possible without conflicting with the current specifications, we use tags in the format of <code class=\"inlineCode___uUrJ9\">x.99.z<\/code> to indicate that this version is still under development. In fact, the tag version under development can also be used externally under certain conditions, but we do not guarantee compatibility when updating the z position in <code class=\"inlineCode___uUrJ9\">x.99.z<\/code>, so it is still recommended to use the tag version on release\/beige first.<\/p>\n<p>&nbsp;<\/p>\n<div class=\"gblog-post__anchorwrap\">\n<h1 id=\"qt-6-wayland\" style=\"text-align: center;\"><strong>Qt 6 Wayland<\/strong><\/h1>\n<\/div>\n<p>Since the tray loading part of dde-shell (dde-tray-loader) uses Wayland (even in X11 environments) to implement application embedding, there is a dependency on the Wayland component of Qt 6. The following two patches need to be applied to the Qt 6 Wayland component:<\/p>\n<ul>\n<li><a href=\"https:\/\/codereview.qt-project.org\/c\/qt\/qtwayland\/+\/598596\">https:\/\/codereview.qt-project.org\/c\/qt\/qtwayland\/+\/598596<\/a><\/li>\n<li><a href=\"https:\/\/codereview.qt-project.org\/c\/qt\/qtwayland\/+\/599732\">https:\/\/codereview.qt-project.org\/c\/qt\/qtwayland\/+\/599732<\/a><\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<div class=\"gblog-post__anchorwrap\">\n<h1 id=\"dde-shell\" style=\"text-align: center;\"><strong>dde-shell<\/strong><\/h1>\n<\/div>\n<div class=\"gblog-post__anchorwrap\">\n<h2 id=\"patch-\u8bf4\u660e\"><strong>Patch Description<\/strong><\/h2>\n<\/div>\n<p>After upgrading to Qt 6.8, dde-shell may have a situation where the panel has no content. For this issue, this patch needs to be applied: <a href=\"https:\/\/github.com\/linuxdeepin\/dde-shell\/commit\/46871c83cf8ecfcf83bf2fb49e1f09af997eca96\">https:\/\/github.com\/linuxdeepin\/dde-shell\/commit\/46871c83cf8ecfcf83bf2fb49e1f09af997eca96<\/a><\/p>\n<div class=\"gblog-post__anchorwrap\">\n<h2 id=\"\u7248\u672c\u5efa\u8bae\"><strong>Version Recommendations<\/strong><\/h2>\n<\/div>\n<ul>\n<li>If the target distribution is originally using version 1.0.0, it is recommended to update to at least 1.0.2.<\/li>\n<li>Versions above 1.0.3 depend on the treeland-protocols project, which can be packaged as is, and it is recommended to update dde-shell to at least 1.0.4 after aligning the packaging.\n<ul>\n<li>Since treeland-protocols has updated the case sensitivity of target names in its CMake support, you need to apply this small patch (or manually make the corresponding adjustments):\u00a0 \u00a0<a href=\"https:\/\/github.com\/linuxdeepin\/dde-shell\/commit\/b3f342c094354e4ba87ac1da4cf1a380556b2a3b\">https:\/\/github.com\/linuxdeepin\/dde-shell\/commit\/b3f342c094354e4ba87ac1da4cf1a380556b2a3b<\/a><\/li>\n<\/ul>\n<\/li>\n<li>There is a 1.99.1 version in the dde-shell main branch, but the main branch, including this version, no longer provides launcher icons in the taskbar, so it needs to be used in conjunction with the launcher main branch (the launcher does not have a 1.99.z version yet).<\/li>\n<\/ul>\n<p>tl;dr: It is recommended to package treeland-protocols and update to at least 1.0.4.<\/p>\n<p>&nbsp;<\/p>\n<div class=\"gblog-post__anchorwrap\">\n<h1 id=\"treeland-protocols\" style=\"text-align: center;\"><strong>treeland-protocols<\/strong><\/h1>\n<\/div>\n<p>Depended on by dde-shell version 1.0.3 and above.<\/p>\n<div class=\"gblog-post__anchorwrap\">\n<h2 id=\"\u7248\u672c\u5efa\u8bae\"><strong>Version Recommendations<\/strong><\/h2>\n<\/div>\n<p>It is recommended to package\/update to 0.4.1.<\/p>\n<p>&nbsp;<\/p>\n<div class=\"gblog-post__anchorwrap\">\n<h1 id=\"dde-tray-loader\" style=\"text-align: center;\"><strong>dde-tray-loader<\/strong><\/h1>\n<\/div>\n<div class=\"gblog-post__anchorwrap\">\n<h2 id=\"patch-\u8bf4\u660e\"><strong>Patch Description<\/strong><\/h2>\n<\/div>\n<p>The pop-up panels in the taskbar tray area (such as the panel that appears after clicking on the time component) had incorrect positioning issues in earlier versions, which require the application of this patch: <a href=\"https:\/\/github.com\/linuxdeepin\/dde-tray-loader\/commit\/664b093b6a913764fedbac9110927f26978aa8c9\" target=\"_blank\" rel=\"noreferrer nofollow noopener\">https:\/\/github.com\/linuxdeepin\/dde-tray-loader\/commit\/664b093b6a913764fedbac9110927f26978aa8c9<\/a>.<\/p>\n<p>The latest versions (starting from 1.0.5) have already fixed the related issues.<\/p>\n<div class=\"gblog-post__anchorwrap\">\n<h2 id=\"\u7248\u672c\u5efa\u8bae\"><strong>Version Recommendations<\/strong><\/h2>\n<\/div>\n<p>It is recommended to update to 1.0.5.<\/p>\n<p>&nbsp;<\/p>\n<div class=\"gblog-post__anchorwrap\">\n<h1 id=\"dde-launchpad\" style=\"text-align: center;\"><strong>dde-launchpad<\/strong><\/h1>\n<\/div>\n<div class=\"gblog-post__anchorwrap\">\n<h2 id=\"patch-\u8bf4\u660e\"><strong>Patch Description<\/strong><\/h2>\n<\/div>\n<p>The maintenance branch version of the launcher should work correctly without any modifications. Although the panel position of the launcher's small window mode may be incorrect, the position issue is not planned to be resolved in the maintenance branch at this time.<\/p>\n<p>The main branch of the launcher does not have the aforementioned problem, but there is currently no 1.99.z tag on the main branch.<\/p>\n<div class=\"gblog-post__anchorwrap\">\n<h2 id=\"\u7248\u672c\u5efa\u8bae\"><strong>Version Recommendations<\/strong><\/h2>\n<\/div>\n<p>During the previous porting process, it was found that there might be display misalignment issues with the small window search results interface. This issue has been fixed in version 1.0.6, so it is recommended to update to 1.0.6.<\/p>\n<div class=\"gblog-post__anchorwrap\"><\/div>\n<p>&nbsp;<\/p>\n<div class=\"gblog-post__anchorwrap\">\n<h1 id=\"dde-application-manager\" style=\"text-align: center;\"><strong>dde-application-manager<\/strong><\/h1>\n<\/div>\n<div class=\"gblog-post__anchorwrap\">\n<h2 id=\"patch-\u8bf4\u660e\"><strong>Patch Description<\/strong><\/h2>\n<\/div>\n<p>No patch is required.<\/p>\n<div class=\"gblog-post__anchorwrap\">\n<h2 id=\"\u7248\u672c\u5efa\u8bae\"><strong>Version Recommendations<\/strong><\/h2>\n<\/div>\n<p>A so-called \"feature\" in deepin 23 is that child processes started by the parent process are generally recognized as belonging to the parent process. This can cause issues such as when launching vscode from a terminal, the opened vscode window will share the same icon as the terminal. This issue has been resolved in the latest maintenance version. Simply updating dde-shell (&gt;= 1.0.4) and dde-application-manager (&gt;=1.2.16) will resolve the issue.<\/p>\n<p>It is recommended to update to 1.2.16.<\/p>\n<p>&nbsp;<\/p>\n<h1><strong>Related Reading\uff1a<\/strong><\/h1>\n<p class=\"entry-content\">\uff081\uff09<a href=\"https:\/\/distrowatch.com\/table.php?distribution=deepin\">International Rankings for deepin<\/a><\/p>\n<p>\uff082\uff09<a href=\"https:\/\/www.deepin.org\/en\/dde\/\">deepin Desktop Environment\uff08DDE\uff09<\/a><\/p>\n<p>\uff083\uff09<a href=\"https:\/\/www.deepin.org\/en\/dde-treeland\/\">Unveiling the Treeland Technology Behind DDE<\/a><\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: right;\">Content source: deepin community<\/p>\n<p style=\"text-align: right;\">Reprinted with attribution<\/p>","protected":false},"excerpt":{"rendered":"<p>Content Source: deepin Plant Qt 6.8 has been released for some time now, and various distributions have encountered significant issues with several components, including dde-shell, when attempting to port DDE. The DDE team has carried out related emergency repairs. Since some DDE projects are also maintained through forking, to facilitate effective porting by porters, the following precautions are listed here. Note: The testing environment used by the author is Arch Linux, and the following are the test conclusions of the testing repository as of 2024\/10\/25. Unless otherwise specified, the project names mentioned below still use the names of the original ...<a href=https:\/\/www.deepin.org.cn\/en\/dde-qt-6-8-adaptation-guide\/>Read more<\/a><\/p>\n","protected":false},"author":11164,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[213,93],"tags":[],"_links":{"self":[{"href":"https:\/\/www.deepin.org.cn\/en\/wp-json\/wp\/v2\/posts\/35346"}],"collection":[{"href":"https:\/\/www.deepin.org.cn\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.deepin.org.cn\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.deepin.org.cn\/en\/wp-json\/wp\/v2\/users\/11164"}],"replies":[{"embeddable":true,"href":"https:\/\/www.deepin.org.cn\/en\/wp-json\/wp\/v2\/comments?post=35346"}],"version-history":[{"count":5,"href":"https:\/\/www.deepin.org.cn\/en\/wp-json\/wp\/v2\/posts\/35346\/revisions"}],"predecessor-version":[{"id":35355,"href":"https:\/\/www.deepin.org.cn\/en\/wp-json\/wp\/v2\/posts\/35346\/revisions\/35355"}],"wp:attachment":[{"href":"https:\/\/www.deepin.org.cn\/en\/wp-json\/wp\/v2\/media?parent=35346"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.deepin.org.cn\/en\/wp-json\/wp\/v2\/categories?post=35346"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.deepin.org.cn\/en\/wp-json\/wp\/v2\/tags?post=35346"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}