Desktop

Install Deepin Desktop on Fedora 44/43: What Still Works

Fedora no longer ships a Deepin Desktop session. The dnf group install "Deepin Desktop" line that every older guide opens with, including the earlier version of this page, has nothing to install on Fedora 44 or Fedora 43: the desktop dropped out of Fedora’s package group metadata one release ago, and in May 2026 Fedora’s engineering steering committee retired the Deepin package set outright.

Original content from computingforgeeks.com - post 17381

What survives, what the community rebuilds actually give you, and where DDE is genuinely maintained is the rest of this guide. Three COPR projects still carry Deepin Desktop builds for Fedora, so all three get tried here, two of them all the way to the login screen and past it, with the exact point where each one stops being a desktop. Everything below was run on three clean Fedora 44 machines (kernel 7.0.8, dnf5) in August 2026, one per route.

Is Deepin Desktop still in the Fedora repositories?

The session core is gone: startdde, deepin-session-ui, deepin-daemon, deepin-dock, deepin-launcher, deepin-control-center, deepin-file-manager, deepin-kwin and deepin-network-core are not in Fedora 44 at all. The greeter, the DTK libraries, the helper daemons and the deepin applications are still there, and they leave with Fedora 45. Nothing assembles them into a desktop any more, because the group that used to do that is gone.

The command in the old guides targeted a comps environment named “Deepin Desktop”, and dnf5 split environments out of the group command, so check the right list first:

sudo dnf environment list | grep -i deepin
sudo dnf group list --hidden | grep -i deepin

Both return nothing. Twenty environments are defined on a current Fedora 44 and Deepin is not one of them. The Cloud Server row appears twice on this machine because that is the environment the image already has installed:

ID                                Name                                 Installed
custom-environment                Fedora Custom Operating System              no
workstation-product-environment   Fedora Workstation                          no
server-product-environment        Fedora Server Edition                       no
cloud-server-environment          Fedora Cloud Server                        yes
cloud-server-environment          Fedora Cloud Server                         no
kde-desktop-environment           KDE Plasma Workspaces                       no
kde-mobile-environment            KDE Plasma Mobile                           no
xfce-desktop-environment          Xfce Desktop                                no
phosh-desktop-environment         Phosh Desktop                               no
lxde-desktop-environment          LXDE Desktop                                no
lxqt-desktop-environment          LXQt Desktop                                no
cinnamon-desktop-environment      Cinnamon Desktop                            no
mate-desktop-environment          MATE Desktop                                no
sugar-desktop-environment         Sugar Desktop Environment                   no
budgie-desktop-environment        Budgie Desktop                              no
cosmic-desktop-environment        COSMIC Desktop                              no
developer-workstation-environment Development and Creative Workstation        no
basic-desktop-environment         Basic Desktop                               no
i3-desktop-environment            i3 desktop                                  no
miraclewm-desktop-environment     Miracle WM Desktop Environment              no
sway-desktop-environment          Sway Desktop                                no

The group list tells the same story. Filtered to the desktop groups, header row included so you can see the third column is part of a real listing:

sudo dnf group list --hidden | grep -E "^(ID|[a-z0-9]+-desktop) "

Fourteen desktop groups, no Deepin:

ID                          Name                                        Installed
mate-desktop                MATE                                               no
miraclewm-desktop           Miracle Window Manager Desktop                     no
phosh-desktop               A phone/tablet UX environment                      no
lxde-desktop                LXDE                                               no
lxqt-desktop                LXQt                                               no
xfce-desktop                Xfce                                               no
sugar-desktop               Sugar Desktop Environment                          no
cosmic-desktop              COSMIC Desktop                                     no
basic-desktop               Basic Desktop                                      no
budgie-desktop              Budgie                                             no
cinnamon-desktop            Cinnamon                                           no
gnome-desktop               GNOME                                              no
kde-desktop                 KDE                                                no
enlightenment-desktop       Enlightenment                                      no

So the install command from the old guides ends here:

sudo dnf group install deepin-desktop

dnf5 does not soften it:

Failed to resolve the transaction:
No match for argument: deepin-desktop
You can try to add to command line:
  --skip-unavailable to skip unavailable packages

One trap for scripts: dnf group info "Deepin Desktop" prints nothing and still exits 0, because an environment name is not a group name. Check the output, never the return code.

Where each release stands, from Fedora’s own comps metadata and the current repository indexes:

Fedora release“Deepin Desktop” environmentSession core (startdde, deepin-session-ui, dock, launcher, daemon, control center)Greeter, DTK libraries, deepin apps
42 and olderPresentPresentPresent
43Gonestartdde and deepin-session-ui gone, dock and daemon still therePresent
44GoneGonePresent
45 (rawhide)GoneGoneGone

Fedora 42 is the last release that could install the environment, and it reached end of life on 27 May 2026, so it is not a route. The desktop would come up on a system that no longer gets security updates.

Why Fedora retired the Deepin packages

The trigger came from openSUSE. Its security team removed the Deepin desktop in May 2025 after years of unresolved D-Bus and polkit findings in the deepin file manager daemon, together with packaging that routed around their review process. Days later a Fedora ticket titled “Deepin security review request” made the more uncomfortable observation: Fedora had been shipping the same components with no security review at all, because Fedora has no equivalent gate to bypass.

What finished it off was maintenance. Core packages had been failing to build for months, several were already retired individually for Fedora 42, 43 and 44, and the packaging group had gone quiet. FESCo gave the maintainers four weeks to state the project’s status in April 2026. One of the original packagers replied that the people who built the package set had run out of capacity for it, that no active packagers had ever taken it over, and that they expected to see it go away from Fedora. The vote closed the matter on 19 May 2026:

AGREED: Retire all packages in the list, with the message mentioning the fesco ticket. Ask releng to not unretire those packages if a request is made, unless they passed review again. APPROVED (+7, 0, 0)

FESCo ticket 3409

That second sentence is the part to read twice. The packages cannot be brought back by asking release engineering to reverse the retirement. They have to pass package review again, with maintainers who commit to keeping them building and patched.

What is still in the Fedora repositories

Plenty, just nothing that adds up to a session. Fedora 44 still carries the deepin applications, the icon and GTK themes, the DTK5 and DTK6 libraries, the polkit agent, the tray loader, the API daemon and even deepin-session-shell, which is the package that provides the deepin greeter. List it yourself:

sudo dnf repoquery --qf "%{name} %{evr}" "deepin*" | sort -u

That prints 38 names on a stock Fedora 44, 29 of them once the development and debug subpackages are dropped. Trimmed to the applications you would actually run:

deepin-calculator 6.5.30-3.fc44
deepin-draw 6.5.33-3.fc44
deepin-gtk-theme 23.11.23-6.fc44
deepin-icon-theme 2025.03.27-4.fc44
deepin-image-viewer 5.8.2-21.fc44
deepin-picker 5.0.28-12.fc44
deepin-system-monitor 6.5.37-3.fc44
deepin-terminal 6.5.22-7.fc44
deepin-wallpapers 1.7.16-6.fc44

Install the ones worth having. On a minimal Fedora 44 with no desktop at all, those six packages drag in the Qt and X libraries behind them, which measures 318 packages, 414 MiB of downloads and 1 GiB on disk; on a machine already running GNOME or KDE most of that stack is present and the transaction is a fraction of the size:

sudo dnf install deepin-terminal deepin-calculator deepin-image-viewer \
  deepin-gtk-theme deepin-icon-theme deepin-wallpapers

They run under GNOME, KDE Plasma or any other session on the machine. Below is Deepin Terminal on Fedora 44 listing what it just installed, with Deepin Image Viewer open on one of the deepin wallpapers:

Deepin Terminal listing installed deepin packages next to Deepin Image Viewer on Fedora 44

Two caveats. The system monitor segfaults on startup, including under QT_QPA_PLATFORM=offscreen, so it is the package and not your graphics stack; it is filed as Red Hat Bugzilla 2483166 against Fedora 44 and still open, so keep htop or GNOME’s own monitor for that job. And none of these packages exist in rawhide any more, which means Fedora 45 ships without them: what you install today is from the last release that carries them. If the current package manager syntax is new to you, the DNF5 cheatsheet covers the changes.

Before you install a community rebuild

Both working COPR routes below pull in more than 500 packages each and take over the system display manager, and neither ends in a usable desktop. Do this on a virtual machine or a snapshot, not on the laptop you work from. If you try it anyway on real hardware, the way back is a text console with Ctrl+Alt+F3, then:

sudo systemctl enable --force gdm
sudo systemctl set-default graphical.target
sudo dnf copr remove liuyang/deepin-dde
sudo dnf remove "deepin-*" "dde-*" treeland ddm
sudo systemctl reboot

Swap gdm for whichever display manager the machine started with (sddm on the KDE spin, lightdm on Xfce), swap the COPR name for shrisha/deepin-treeland or topazus/dde if that is the one you enabled, and be aware that the removal glob also takes out the standalone deepin apps from the previous section. Two notes on the lab used here: everything ran on a QXL virtual GPU with software rendering, and the three decisive failures below are a dynamic linker error, a shell plugin binary that ships in no package, and a set of Qt version pins that cannot resolve, all of which are package level and will happen the same way on real hardware. The one timing-sensitive symptom, a plugin load that times out, is called out where it appears.

Route A: the classic DDE rebuild

The COPR project liuyang/deepin-dde builds the pre-Treeland DDE stack for Fedora 44 and Fedora 43, with fresh builds through July and August 2026. The copr subcommand lives in dnf5-plugins, not in the dnf-plugins-core package that the project page mentions (that one only extends the old dnf4 command):

sudo dnf install dnf5-plugins
sudo dnf copr enable liuyang/deepin-dde

The repo file it writes checks signatures against the COPR project key, so package integrity is covered. Review is not: COPR content passes through no Fedora security or quality gate, and the enable step prints exactly that before it asks you to confirm.

The project’s own instructions then tell you to install a group, which fails with the same “No match for argument” error as before, because the repository ships packages and no comps data. Install the pieces by name:

sudo dnf install deepin-session deepin-session-shell deepin-dock \
  deepin-launcher deepin-daemon deepin-desktop-base deepin-icon-theme

On a minimal Fedora 44 that resolves to 503 packages, 426 MiB of downloads and 1 GiB on disk, and it finished in 68 seconds on four cores. Note where the pieces come from: deepin-session-shell resolves from Fedora’s own repository, whose build is newer than the COPR’s, and being the greeter itself it requires lightdm, which in turn drags in Xorg and xinit. The session entry comes from the COPR:

cat /usr/share/xsessions/deepin.desktop

This is the modern layout, where a session manager replaces the old startdde launcher that Fedora retired:

[Desktop Entry]
Name=deepin
Comment=Deepin Desktop Environment
Exec=/usr/bin/dde-session
TryExec=/usr/bin/dde-session

No lightdm configuration is needed. Fedora’s deepin-session-shell already drops a seat config into /usr/share/lightdm/lightdm.conf.d/ that sets greeter-session=lightdm-deepin-greeter and user-session=deepin, so enabling the display manager is the whole step:

sudo systemctl enable lightdm
sudo systemctl set-default graphical.target
sudo systemctl reboot

That much works. The deepin greeter renders, reads the release name off the system and takes a password:

Deepin lightdm greeter login screen running on Fedora 44

It is also where the good news ends.

“File /etc/systemd/system/display-manager.service already exists”

On a machine that already runs a desktop, the enable step above fails, because every display manager unit carries Alias=display-manager.service and systemd will not silently steal an existing alias. Reproduced here with lightdm already enabled and sddm arriving second:

Failed to enable unit: File '/etc/systemd/system/display-manager.service' already exists and is a symlink to /usr/lib/systemd/system/lightdm.service

Fedora Workstation hits this with gdm holding the alias. Release it from the old display manager first:

sudo systemctl disable gdm
sudo systemctl enable lightdm

One step form: sudo systemctl enable --force lightdm overwrites the symlink in place, which is what the rollback block above uses to hand the alias back. Keep the pair in mind either way, because reversing it is how you get out when the session below turns out to be a black screen.

“nothing provides startdde needed by deepin-control-center”

Add the settings application to that install list and the transaction refuses to resolve:

Problem: conflicting requests
  - nothing provides deepin-network-core needed by deepin-control-center-6.0.44-1.fc44.x86_64
  - nothing provides startdde needed by deepin-control-center-6.0.44-1.fc44.x86_64
You can try to add to command line:
  --skip-broken to skip uninstallable packages

Both dependencies were Fedora packages once and were retired ahead of the main set, and this COPR does not rebuild either. Skipping the broken package leaves a desktop with no settings interface, no display configuration and no network panel.

“dde-dock: symbol lookup error: undefined symbol”

The dock installs cleanly, then refuses to start. Run it by hand and the loader explains why:

dde-dock: symbol lookup error: dde-dock: undefined symbol: _ZN8KWayland6Client8Registry25clientManagementAnnouncedEjj

Demangled, the dock wants KWayland::Client::Registry::clientManagementAnnounced. Check whether the library it actually loaded exports that:

rpm -qf /lib64/libKF5WaylandClient.so.5
nm -D --defined-only /lib64/libKF5WaylandClient.so.5 | grep -c clientManagementAnnounced

The count is zero:

kf5-kwayland-5.116.0-11.fc44.x86_64
0

Deepin builds this dock against dwayland, its own KWayland fork, which adds a client management interface for the window list. Fedora carried dwayland until release 43 and retired it too, so the binary resolves the same soname from stock kf5-kwayland, which never had that symbol. Fixing it means rebuilding the dock against upstream KWayland, not configuring anything, so this specific COPR build cannot start on Fedora 44. Here is the failure inside Deepin Terminal, which does work:

Deepin Terminal showing the dde-dock undefined KWayland symbol error on Fedora 44

The session starts without a shell, so nothing paints

Log in and the session does come up. After a login, dde-session, dde-launcher, the deepin polkit agent and dde-lock are all running and the user bus is alive. The screen stays black, and the session’s own systemd units say why:

ls /usr/lib/systemd/user/dde-session-core.target.wants/
rpm -q dde-shell

The session pulls in a shell that the repository does not build:

[email protected]
[email protected]
package dde-shell is not installed

In this generation of DDE the wallpaper, the desktop icons, the right click menu and the dock panels are all dde-shell plugins, and dde-shell is not one of the 13 packages in this COPR. So the session manager starts, asks systemd for a shell that does not exist, and hands you a black screen with a working mouse cursor.

Two system units also fail on every boot with this set installed, dde-backlight-helper.service and dde-system-power-control.service, which is why the login message reports failed units on a fresh machine. One more trap if you script an unattended login for a kiosk or a test box: deepin’s own PAM stack blocks it. lightdm authenticates autologin against a deepin-lightdm-autologin service that starts with pam_inhibit_autologin.so from deepin-session-shell, and the attempt fails with return value 6, permission denied, whatever groups the user is in.

Route B: the Treeland rebuild

Upstream Deepin has moved the desktop onto Treeland, a Wayland compositor of its own, with a matching display manager called DDM. The COPR project shrisha/deepin-treeland packages that generation for Fedora 44 only and describes itself as early packaging, which is fair warning:

sudo dnf copr enable shrisha/deepin-treeland
sudo dnf install treeland ddm dde-session dde-shell dde-control-center startdde

This route is heavier than route A: 609 packages, 623 MiB of downloads, 2 GiB on disk, two minutes six seconds. It also ships the pieces route A lacks, including a control center, the real session launcher and dde-shell itself. Check what it registered before touching the display manager:

ls /usr/share/wayland-sessions/
systemctl list-unit-files "ddm*" "treeland*"

Two Wayland sessions and two units, one of which is the display manager:

treeland.desktop  treeland-user.desktop

UNIT FILE        STATE    PRESET
ddm.service      disabled disabled
treeland.service static   -

2 unit files listed.

Enable DDM the same way, remembering the alias clash if a display manager is already enabled:

sudo systemctl enable ddm
sudo systemctl set-default graphical.target
sudo systemctl reboot

The greeter is a clear step up from route A. It masks the password, exposes a session switcher and accessibility controls, and it logs you in:

DDM display manager login screen from the Deepin Treeland build on Fedora 44

“Loading plugin failed: org.deepin.ds.desktop”

Authentication succeeds and the session registers with logind. Then the shell gives up on the part that draws the desktop, and the user journal says so:

journalctl --user -b -p warning | tail -20

Three lines matter out of the noise:

[email protected]: start operation timed out. Terminating.
dde-shell[1510]: Could not find the Qt platform plugin "dxcb" in ""
dde-shell[1510]: Loading plugin failed: "org.deepin.ds.desktop"

Both symptoms come down to missing files. The shell installs 20 plugins, and the desktop is not among them:

ls /usr/lib64/dde-shell/ | grep -E "desktop|dock.so|notification.so"

The closest match is the dock’s show desktop button. There is no org.deepin.ds.desktop.so, which is precisely the plugin the failing unit is named after:

org.deepin.ds.dock.showdesktop.so
org.deepin.ds.dock.so
org.deepin.ds.notification.so

The dxcb line is the second gap, and it is not the one people assume. Fedora does package dxcb, as deepin-qt5platform-plugins, whose x86_64 build installs /usr/lib64/qt5/plugins/platforms/libdxcb.so. What has never been packaged, in Fedora or in either COPR, is the Qt 6 build of that plugin, and dde-shell is a Qt 6 application, so the plugin it asks for cannot be found on any Fedora machine. The plugin timeout is the one symptom here that a software rendered virtual GPU could plausibly affect; the missing plugin files behind it are not.

From the user’s seat the outcome matches route A: you authenticate into a session with no desktop, no dock and nothing to click.

Route C: the largest rebuild will not install at all

The third project, topazus/dde, is the most ambitious of the set on paper. Its package list runs to 88 names and covers what the other two are missing, deepin’s KWin fork and the Qt 6 platform plugins included, and it advertises chroots for Fedora 43, 44, 45 and rawhide. What actually reached those chroots is a different question, and the install answers it:

sudo dnf copr enable topazus/dde
sudo dnf install deepin-session deepin-shell deepin-kwin deepin-qt6platform-plugins

Nothing installs. Every package in the Fedora 43 and Fedora 44 directories is a Fedora 42 build pinned to the exact Qt of that release:

Failed to resolve the transaction:
Problem 1: conflicting requests
  - nothing provides libQt6Gui.so.6(Qt_6.8_PRIVATE_API)(64bit) needed by deepin-shell-1.99.3-1.fc42.x86_64
  - nothing provides libQt6WaylandClient.so.6(Qt_6.8_PRIVATE_API)(64bit) needed by deepin-shell-1.99.3-1.fc42.x86_64
  - nothing provides qt6-qtbase(x86-64) = 6.8.0 needed by deepin-shell-1.99.3-1.fc42.x86_64
 Problem 2: conflicting requests
  - nothing provides libDWaylandClient.so.5()(64bit) needed by deepin-kwin-5.25.26-1.fc42.x86_64
  - nothing provides libDWaylandServer.so.5()(64bit) needed by deepin-kwin-5.25.26-1.fc42.x86_64
  - nothing provides qt5-qtbase(x86-64) = 5.15.15 needed by deepin-kwin-5.25.26-1.fc42.x86_64
 Problem 3: conflicting requests
  - nothing provides libQt6Gui.so.6(Qt_6.8_PRIVATE_API)(64bit) needed by deepin-qt6platform-plugins-6.0.19-1.fc42.x86_64
  - nothing provides libQt6Core.so.6(Qt_6.8_PRIVATE_API)(64bit) needed by deepin-qt6platform-plugins-6.0.19-1.fc42.x86_64
  - nothing provides libQt6OpenGL.so.6(Qt_6.8_PRIVATE_API)(64bit) needed by deepin-qt6platform-plugins-6.0.19-1.fc42.x86_64
  - nothing provides qt6-qtbase(x86-64) = 6.8.0 needed by deepin-qt6platform-plugins-6.0.19-1.fc42.x86_64
You can try to add to command line:
  --skip-broken to skip uninstallable packages
(trimmed: each line also names the copr repository it came from)

Both directories carry the same 65 binary packages with the same fc42 tags, 19 of them once debuginfo and devel subpackages come out, and the project’s build history stops at seventeen builds from November 2024. The newer chroots were switched on and the old copies came forward untouched. Worse for anyone hoping this route fills the gaps, the two packages that made it interesting never landed in them: sudo dnf install deepin-file-manager startdde here answers No match for argument twice. A private API dependency like the Qt 6 ones above cannot be satisfied by a newer Qt either, which is the whole point of pinning it. A fourth search hit, hezhengyu/dde, has a single package and no completed build. Skip both.

The pattern across all three is the same. Rebuilding DDE for a distribution that deepin does not target means maintaining a patched Qt and a patched KWayland in step with the desktop, which is the workload FESCo said the Fedora packages no longer had. That is why they left.

What to run instead of Deepin on Fedora

Where the desktop actually stands across distributions, checked in August 2026:

DistributionDeepin Desktop status
deepin (upstream)First party, current Treeland generation, the only fully supported way to run DDE
Arch Linux52 packages in the deepin group in [extra], including the file manager, control center and DDM, most rebuilt within the last month
Fedora 44 / 43Retired; of three community COPRs, two install without producing a desktop and one will not install
Debian 13Desktop not packaged; the dde session components are absent, though deepin apps such as the terminal are in the archive
openSUSERemoved in 2025 over unresolved security findings

Which one you pick depends on what you wanted from Deepin in the first place.

If you wanted DDE itself, run it where it is maintained. The upstream distribution is the least surprising option, and on the rolling side Arch keeps the whole group current; archinstall gets a base system up quickly and the post-install guide covers what to configure afterwards.

If you wanted the look and feel on Fedora, the closest match is a Qt desktop with the deepin themes applied. KDE Plasma on Fedora is the natural landing spot, since the deepin GTK and icon themes plus the surviving deepin apps sit comfortably on it. For something lighter, Budgie and Cinnamon both keep the single panel layout Deepin users tend to like, and Xfce is the low resource option.

If you are still on Fedora 42 because that is where the environment existed, upgrade rather than freeze. The Fedora 44 upgrade steps apply from 43, and things to do after installing Fedora 44 covers the desktop setup work you would otherwise miss.

Will Deepin Desktop come back to Fedora?

Not by request, and not soon. FESCo attached a condition to the retirement: nothing returns unless it passes package review again, which means someone volunteering for the workload that defeated the previous group, on a package set that also carries an unreviewed security history. Upstream is meanwhile rewriting the desktop around Treeland, so a fresh Fedora effort would be chasing a moving target whose Qt and KWayland patches Fedora does not carry. Treat DDE as a deepin and Arch desktop, use the deepin applications on Fedora while they are still packaged, and give the machine you log into every morning a session that is actually supported.

Keep reading

Things to Do After Installing CachyOS Arch Linux Things to Do After Installing CachyOS How to Install CachyOS: Step-by-Step Guide Arch Linux How to Install CachyOS: Step-by-Step Guide Install Arch Linux the Easy Way with archinstall Arch Linux Install Arch Linux the Easy Way with archinstall 10 Best Desktop Linux Distributions to Try in 2026-2027 Desktop 10 Best Desktop Linux Distributions to Try in 2026-2027 Install Ultramarine Linux 44 Step by Step (With Screenshots) Desktop Install Ultramarine Linux 44 Step by Step (With Screenshots) Install Apache Solr on CentOS / Fedora / Rocky Linux CentOS Install Apache Solr on CentOS / Fedora / Rocky Linux

6 thoughts on “Install Deepin Desktop on Fedora 44/43: What Still Works”

  1. Good to see it’s still supported, I always liked Deepin DE just for the simple fact that it’s the only DE that actually supports fractional scaling properly without looking like an interpolated blurry mess. I desperately need 150% scaling (100 is too small, 200 is too large for my 1600p display). GNOME should borrow whatever Deepin is doing there.

    Reply
  2. Yes, after updating Fedora, Deepin not works as expacted, can we downgrade our Linux Fedora OS to work or there are other solutions.

    Reply

Leave a Comment

Press ESC to close