Deepin Desktop Environment

From ArchWiki

The Deepin Desktop Environment (DDE) is the desktop environment of the deepin Linux distribution. It is designed by the Wuhan Deepin Technology Co.,Ltd. deepin is a Linux distribution devoted to providing a beautiful, easy to use, safe and reliable system for global users. deepin is an open source GNU/Linux operating system, based on Linux kernel and mainly on desktop applications, supporting laptops, desktops, and all-in-ones. The DDE is comprised of the Desktop Environment, deepin Window Manager, Control Center, Launcher and Dock.

Installation

Install deepin and deepin-kwin for the basic components for a minimal desktop interface.

Optionally, also install deepin-extra for some extra applications for a more complete desktop environment.

Starting

Via a display manager

LightDM is the default display manager for DDE, and it will installed as dependency. Simply enable lightdm.service to use it.

Note: A valid home directory must exist for a user other than root for the greeter to work.
Tip: Change the greeter for DDE's "lightdm-deepin-greeter", see LightDM#Greeter.

Via xinit

To use Deepin via xinit, you will need to add the following to your .xinitrc file.

~/.xinitrc
exec startdde

Known issues

The factual accuracy of this article or section is disputed.

Reason: DDE developers did reply and it looks like at least some of the bugs have been fixed. Needs to be confirmed if any of these vulnerabilities remain (Discuss in Talk:Deepin Desktop Environment#Security_issues)
Warning: There are known security vulnerabilites in DDE, reported by developers of the openSUSE distribution to the DDE developers. The DDE developers did not respond to the reports [1].

Configuration

Networking

NetworkManager is integrated in DDE network administration and is installed together. Enable NetworkManager.service to use it.

Customize touchpad gesture behavior

Deepin does not officially support customizing the gesture behaviors, but it is possible to manually change this by editing the configuration file /usr/share/dde-daemon/gesture.json.

For instance, if you want to disable tapping gesture activity, set its action to none:

/usr/share/dde-daemon/gesture.json
[
    ...
    {
        "Name": "tap",
        "Direction": "none",
        "Fingers": 3,
        "Action": {
            "Type": "built-in",
            "Action": "none"
        }
    },
    ...
]

To apply the changes, reboot your system or log off and log in again.

Changing default deepin sounds

While this is not officially supported, it is possible to change or even remove the default sounds that are used by Deepin (ex. login sound). Simply replace the sounds in the directory:

/usr/share/sounds/deepin/stereo

Note: If you simply want to disable the sound effects entirely, it can be done from Deepin's system settings (sound section).

Changing system language

The envioronment varaiable LANG of deepin can be affected by ~/.dde_env, and it has the highest procedence at the moment, the /etc/locale.conf and $XDG_HOME/.config/locale.conf will be ignored if this file exists:

~/.dde_env
# DDE user env file, bash script
export LANG="zh_CN.UTF-8";
export LANGUAGE="";

Troubleshooting

No background after resuming from standby

Because of the way the NVIDIA driver stores its FBOs [2], it happens that after resuming from standby the background suddenly disappears, leaving only a white screen with possibly some color noise on it. The bug appears to be fixed in GNOME upstream, but the Deepin desktop environment still has it.

A possible workaround would be restarting the window manager every time the computer resumes from suspension. A way to do that would be to create the following systemd service

/etc/systemd/system/resume@.service
[Unit]
Description=User resume actions
After=suspend.target

[Service]
User=%I
Type=simple
ExecStart=/usr/bin/deepin-wm-restart.sh

[Install]
WantedBy=suspend.target

That executes the following script

/usr/bin/deepin-wm-restart.sh
#!/bin/bash
export DISPLAY=:0
deepin-wm --replace

Once those two files are created in the correct directories, make the script executable and start/enable resume@user

Wireless network does not connect

NetworkManager sets the MAC address generated randomly. This was already enabled by default, to disable it add the following lines to the NetworkManager configuration file.

/etc/NetworkManager/NetworkManager.conf
[device]
wifi.scan-rand-mac-address=no

Bluetooth Menu does not show up / work

Start/enable bluetooth.service. This service is not enabled by default.

Window shortcuts does not work in dual boot

When home directory is shared in dual boot, ~/.config/kglobalaccels can lead to strange shortcut behavior and we can try renaming this file to another name.

Bug reporting

Any bugs related to Arch packaging should be reported in the bug tracker.

Any upstream related bugs should be reported here. All the Deepin developers will see the bug reports and solve them as soon as possible.

See also