Deepin 15.4 Review

May 1, 2017, 6 p.m.

Deepin Linux is a Debian based GNU/Linux distribution from China featuring a custom desktop environment called Deepin Desktop Environment, acclaimed for its beauty and its innovative system configuration center. It includes a suite of applications developed in-house to complement the desktop environment -- Deepin File Manager, Deepin Terminal, Deepin Music, and Deepin Movies, among others. It also includes Deepin Store, a GUI Software Manager that makes it easy to browse, discover, and install software. -- a necessity for a distribution that targets users switching from other OSes.

Except for a few flaws Deepin 15.4 is well executed, and is a good distribution for those switching from Windows or those that would like an experience similar to macOS -- in terms of subjective feel if not in appearance.

However, some, like I do, may find its simplicity a hindrance to productivity, especially those used to the kind of productivity afforded by the power of a desktop environment on the other end of the simplicity/complexity spectrum like KDE Plasma.

Review

Deepin is a Linux distribution developed by the Wuhan Deepin Technology Company of China. The goal of the company is to develop an alternative to Windows for the Chinese market that offers its users ease of use, security, and reliability for both work and entertainment.

To that end the distribution develops a Debian based distribution with a custom desktop environment called Deepin Desktop Environment -- also available in other distributions such as Arch -- that emphasizes a beautiful interface. This emphasis is immediately apparent when using the installation environment, then when facing the greeter, and even more so when logging on to the actual desktop and seeing the very high resolution, well chosen desktop backgrounds featuring amazing landscapes. Besides the desktop backgrounds, the beauty of the distribution is attained by transparency effects and very smooth and very refined animations over blurred backgrounds.

The Change Timezone Modal
An example of transparency and blurring effects in Deepin Desktop Environment. In this screenshot the Dock has been transplanted from its default bottom edge of the screen to the left edge and changed to efficient mode with size setting small.
Here is an external video from YouTube that shows Deepin's beautiful interface:
Deepin Desktop Environment in Deepin 15.4
And another that shows more of its excellent animations:
Deepin Desktop Environment in Deepin 15.4

The standout feature of the desktop environment is the innovative control panel that slides out from the right edge of the desktop -- activated by a hot corner as well as a launcher -- that allows users to configure settings from one convenient location. DDE also uses a full-screen launcher activated by a hot corner or a launcher icon in the other important interface element -- a dock located at the bottom of the screen by default.

Ease of use begins with the installer which is very straightforward and effective for most users. Then, there is no work necessary after Deepin is installed to have a fully functional, fully configured, and usable system. Programs for tasks and activities in which most users will engage are installed by default. This includes the WPS Office Suite [1], Chrome Web Browser, Foxit PDF Reader, Skype, Spotify, CrossOver -- a commercial product based on Wine for running Windows programs, and Steam.

And if additional software is necessary, Deepin provides the in-house developed Deepin Store another simple and straightforward tool that should delight users migrating from Windows versions earlier than Windows 8.

  • Deepin Store Main Page
    The main page of the Deepin Store has a slide show of featured applications at the top and groupings of available applications by characteristics such as Popular Recommendations and New Updated Apps.
  • Deepin Store
    The left edge of the Deepin Store has icons for navigating to app listings by category and by Popular and Rating.
  • Mozilla Firefox's Page in the Store
    There should probably be a slider below the screenshots instead of pager markers.
The Deepin Store
The Deepin Store is an easy to use and attractive app store that will ease a transition to Linux from Windows.

Deepin also includes some innovations, most notable is the inclusion of an entry in the GRUB menu for System Setup which starts the UEFI interface; anything other than the OS and some options for booting with an older kernel, a fail-safe mode, or memtest is unusual.

The Deepin GRUB Menu
Anything other than the OS and some options for booting with an older kernel, a fail-safe mode, or memtest is unusual in a GRUB menu in any distribution. This unusual menu entry is a helpful addition by Deepin. Although this item in the GRUB menu is unique and helpful, it is not a major innovation such as Dracut for example. It involved modifying the series of GRUB scripts found in /etc/grub.d that are used for generating the GRUB menu to include the following at /etc/grub.d/30_uefi-firmware (an excerpt of which is shown in the following code listing).

prefix="/usr"
exec_prefix="/usr"
datarootdir="/usr/share"

export TEXTDOMAIN=grub
export TEXTDOMAINDIR="${datarootdir}/locale"

. "${datarootdir}/grub/grub-mkconfig_lib"

efi_vars_dir=/sys/firmware/efi/vars
EFI_GLOBAL_VARIABLE=8be4df61-93ca-11d2-aa0d-00e098032b8c
OsIndications="$efi_vars_dir/OsIndicationsSupported-$EFI_GLOBAL_VARIABLE/data"

if [ -e "$OsIndications" ] && \
   [ "$(( $(printf 0x%x \'"$(cat $OsIndications | cut -b1)") & 1 ))" = 1 ]; then
  LABEL="System setup"

  gettext_printf "Adding boot menu entry for EFI firmware configuration\n" >&2

  onstr="$(gettext_printf "(on %s)" "${DEVICE}")"

  cat << EOF
menuentry '$LABEL' \$menuentry_id_option 'uefi-firmware' {
	fwsetup
}
EOF
fi
		

Other features that add to ease of use include:

  • a pop-up dialog for entering the sudo password when entering a command that requires administrative privileges without sudo on the command line instead of the command failing with a "permission denied" or similar message
  • the control panel which incorporates:
    • on its main page a clock with date at the top and controls for Bluetooth, WiFi, and wired networks at the bottom
    • a paged section in the middle of the main page with icons for navigating to the main categories of settings on the first page, current weather and five day forecast on the second page, and a history of notifications on the third page
  • a custom developed screenshot application that is able to select a full screen or a window based on mouse pointer location
  • and more significantly a very easy configuration of Bumblebee for switching between Nvidia dedicated and Intel integrated graphics
    • The Driver Manager Program
      The Driver Manager Program will configure Nvidia/Intel hybrid graphics to work with Bumblebee.
    • Nvidia Bumblebee is Configured Correctly
      optirun glxgears runs without error indicating that the Nvidia driver for use with Bumblebee works correctly. nvidia-smi shows that glxgears (the instance started with optirun is using 3 MB of dedicated GPU memory.
    Setting Up Nvidia Hybrid Graphics
    Deepin includes what looks exactly like the Additional Drivers program in Ubuntu. Unlike in Ubuntu, in Deepin this tool will configure the Bumblebee hybrid graphics switching utility automatically and build and install the Nvidia drivers for use with Bumblebee, whereas Ubuntu will install and configure the standalone Nvidia driver with this tool-- not for use with Bumblebee hybrid graphics.
  • also significant is the very good software store that should be a delight to new users switching from Windows

Unfortunately, this emphasis on ease of use and beauty in the current state of the DDE is at the cost of capability, at least for users like me who expect more power and flexibility in a desktop environment.

As examples of the excessive simplicity, consider:

  • The file manager, which is apparently a fork of Nautilus from GNOME, may be overly simple for some people -- even those not used to KDE's Dolphin. I found using the Deepin File Manager frustrating at times because the file manager's context menu doesn't allow selecting multiple files of the same type with a particular program if it has an extension that Deepin associates with a particular program, i.e. there is no Open With context menu in such a situation in Deepin's file manager where other environments' file managers would have such a menu item.
    The Deepin File Manager
    The file copy progress is unique in that it uses a circular meter rather than the typical horizontal meter -- an example of Deepin's attention to appearance details.
    The file manager is so simple it doesn't even allow column headings other than Name, Time Modified, Size, Type in list mode. Other file managers typically show Permissions, Octal Permissions, Owner, and Group -- information I sometimes need and can see without opening a terminal. The settings dialog of Deepin File Manager is also excessively minimal.
  • The screenshot program takes complete control over the desktop so screenshots can't be taken if there is a dialog box open or similarly, the control center is open. This limitation can't even be mitigated by using a delay because this feature doesn't exist. Although the limitations of the screenshot may seem trivial, I suspect this is a deeper issue in the internals of Deepin where shortcuts were taken that shouldn't have been or choices made for whatever reason.
  • The full-screen launcher is not learning adaptive, nor does it have the ability to search files on the system or from recent files as two other full-screen launchers from other DEs I use do in addition to providing other powerful features.
  • I found the lack of 'Natural Sorting' when advancing through images in the, again, very simple Deepin Image Viewer extremely frustrating.

Although the distribution is generally well executed, it does have some minor flaws, such as:

  • The Control Center, conveniently shows the weather for the set location, but there is no way to configure the units that I could see.
  • Bluetooth controls in the Control Center work well enough to connect to a Bluetooth device, but it is impossible to select which of the connected device's profiles to use. In my case I paired my LG Tone Platinum (HBS-1100) to Deepin to use Deepin Music, (another attractive but overly simple application), but Deepin chose to use the headset (HSP/HFP) profile appropriate for phone calls, instead of the high fidelity playback (A2DP Sink) profile which allows playing audio from multimedia programs and YouTube in other distributions/DEs. There was no way in the Control Center's Bluetooth settings to change to the A2DP Sink in Deepin that I could see.
  • Deepin Screenshot's very nice looking minimal pop-up controls for this application only appear sometimes.
  • The hardware clock is set to local time instead of UTC, probably to be consistent with how Windows uses the hardware clock, but I think this will cause big problems for those few people that might have an OS that uses btrfs on another partition.
  • Most important of the minor flaws, there are issues in packaging or the repository infrastructure, that may be related to using Debian's unstable branch as a basis for Deepin. For example, searching for gedit using the command line package manager shows that gedit 3.20.1-2 is available, but the version of gedit-plugins that is available is gedit-plugins 3.22.0-1. This makes it impossible to add the more advanced capabilities provided by the plugins in Deepin's default text editor.
    Mutually Incompatible Packages in the Deepin Repository
    gedit 3.20.1-2 is available, and installed by default as Text Editor, but the version of gedit-plugins that is available is gedit-plugins 3.22.0-1, making it impossible to install.
  • Installing another desktop environment (at first I installed Gwenview to overcome the limitations of Deepin Image Viewer which as packaged in the Deepin repositories would not install dependencies, so I had to install the Plasma Desktop to have the libraries) will not add the new environment to the Deepin Greeter which is the typical behavior in all distributions I've used, even those that use GDM and LightDM.

The biggest flaw in Deepin is the omission of a properly configured firewall. Out of the box the default netfilter/iptables policies are to accept all incoming connections, accept forward requests, and accept all outgoing connections. This configuration will leave those new to Linux, which seems to be one of the segments of users that the distribution targets, vulnerable, depending on their network. The distribution should probably include and configure ufw and its graphical front end gufw by default with sensible defaults for its intended audience instead of leaving it completely open.

This lack of a properly configured firewall is a serious omission for a distribution originating in China as some outside China who want to use Deepin are concerned about its security. Some are concerned that there are hidden network connections.

The output of ss -tudpr
The first result is Deepin's CDN for its package management infrastructure and the second is the front end connection to the package management infrastructure by the Deepin Store.
I myself didn't see unusual connections, although this could be hidden by the custom kernel as discussed in thie following external YouTube video in more detail.
Can Deepin Linux be Trusted
This external video discusses whether there are hidden network connections built into Deepin Linux and whether this Linux distribution from China can be trusted.
The investigator in this YouTube video did not find any conclusive evidence of spying. Also consider as support for Deepin's trustworthiness that the company that develops Deepin is a member of the Linux foundation, and the case that one of the developers of Deepin makes for its trustworthiness in a post in this thread at Deepin's forums, reproduced below.
A Deepin Linux Forum Administrators Response to Questions Regarding Its Trustworthiness
But I do find the combination of the Deepin Remote Assistance and the open firewall troubling.
The Deepin Remote Assistance Project Page
The entire list of Deepin's Custom applications is on the left. Note Deepin Emacs. I guess the needs of advanced users are met with the Emacs operating system.
Users who like the Deepin Desktop but are concerned about its security can always use the Manjaro Deepin Community Edition, with only the loss of the Deepin Store.

Download Options

The direct link displayed on the download page is very slow. After trying some of the mirrors and discovering the file size on these mirrors are different from that at the Deepin website and that the MD5 hash of these files doesn't match the MD5 sum displayed on the Deepin site, I used the SourceForge link with aria2c download manager.

  • The Deepin Download Page
    The Deepin download page offers a very prominent direct link to download the distribution's installation ISO. Below this link are alternative download options including a mirrors list and a link to SourceForge which I used.
  • Deepin Mirrors List
    The downloads page has a link to this list of mirrors. Potential users should be aware that some of these mirrors are distributing ISOs that don't match the official download's MD5 hash.
Downloading Deepin
The direct link displayed on the download page is very slow. After trying some of the mirrors and discovering the file size on these mirrors are different from that at the Deepin website and that the MD5 hash of these files doesn't match the MD5 sum displayed on the Deepin site, I used the SourceForge link with aria2c download manager.

Installation

There is a complete set of screenshots of the installation of Deepin and a description of the problems I encountered during the installation at Deepin 15.4 Review Supplement:Installation Screenshots.

Necessary Fixes and Enhancements

The most essential fix after installing Deepin is to change the unconfigured state of the firewall built into the kernel. The simplest way to do this is to use the ufw (Uncomplicated Firewall) program developed by Ubuntu to manage the built-in netfilter/iptables. UFW will protect most users out-of-the-box with sensible defaults for netfilter/iptables. There is a GUI available for it called gufw. Install ufw with
sudo apt install ufw.
Then enable it with
sudo ufw enable.

Other than this security flaw mitigation there isn't any essential fix but the following enhancements may be useful.

  • to set the RTC to UTC using sudo timedatectl set-local-rtc 0
  • for laptop users who want to maximize battery life the tlp program is useful
  • for laptop users with Nvidia/Intel hybrid graphics may want to use the Driver Manager tool to set up GPU switching.

Conclusion

I've admired the beauty of Deepin since late 2014 when I tried the current release at that time. Although the animations and the organization and animations of the full-screen launcher and in other parts of the desktop have improved, my opinion of the distribution has not changed since then; I still find it very attractive but find the desktop environment and its default applications overly simple for my work style.

I do however find it is a very good distribution -- with some after installation attention to the lack of firewall configuration -- for new Linux users and those with the most basic and typical uses, thanks to

  • the very intuitive desktop interface that includes the dock an obvious way to launch applications and start the full-screen launcher and the settings panel
  • the good set of applications installed by default
  • the good software store that makes it easy for new users to find and install programs

Notes:

  1. [1]

    The choice of including the WPS Office Suite by default instead of Libre Office may be related to what seems as Wuhan Deepin Technology Company's desire to provide its customers products that are developed domestically in China.