How to Install Deepin Desktop in Arch Linux [Complete Guide]

6 min

In this guide, we explain the steps required to install the beautiful Deepin Desktop in Arch Linux.

The first part of the guide explains the steps for installing the base Arch system. The second part is installing the complete Deepin desktop on top of Arch Linux.

What is the Deepin Desktop?

Deepin is a feature-rich and beautiful desktop environment based on Debian stable branch. Deepin desktop is a homegrown desktop environment by Deepin. It is powered by its own dde-kwin Window manager. Deepin desktop comes with nice looking dock and many native Deepin applications pre-loaded.

This eye candy desktop environment is available in the Arch repository; this is how you can install Deepin Desktop Environment in Arch Linux.

This guide installs Deepin 20.6 Desktop Environment. However, the steps should be similar for other versions as well.

Install Deepin Desktop in Arch Linux

Part 1: Install Arch Linux

If you already have Arch Linux installed, you can skip this step and directly go to the install Deepin Desktop section below.

For a quick Arch Linux base installation, follow our Arch Install guide using the modern archinstall script. It is recommended step and requires less time.

If you want to install it using the legacy way, follow the steps below.

Download Arch Linux

Download Arch Linux .iso from the below link. There are magnet and torrent links available. Once you download it, write the ISO to a USB drive. And then boot from the drive.

If you plan to install it as a virtual machine image via GNOME Boxes, virt-manager – then you do not need to write it to a USB drive.

Boot and Configure Partitions

After you boot from the Arch Linux iso, you have to run a series of commands to install the base system.

First, run the below command to find out the device identifier.

fdisk -l
fdisk -l before
fdisk -l before

Then with the device identifier, run the below command to start partitioning your disk. Make sure to change /dev/sda as per your system.

cfdisk /dev/sda

Select label type = dos the next prompt.

Select the free space and choose the option NEW from the bottom. In this example, I will create three partitions as per below.

/dev/sda1 - 1G - for /boot
/dev/sda2 - 5G - for root
/dev/sda3 - 1G - for swap

In the next screen, provide the partition size for the boot partition (for this example, I gave 1 GB). Select it as the primary partition.

Repeat the same step for the main root partition of size 5GB.

Swap partition type change
Swap partition type change

Create a swap partition using the same steps with size 1G (you may change it as per your need). After you create the swap partition, make sure to choose Type at the bottom and mark it as a swap with the option “Linux Swap/Solaris”.

final partition list in cfdisk
final partition list in cfdisk

Once done, write the changes to the disk using the Write option at the bottom. Make sure you take a backup before you write, as this is a permanent change in your system.

Run the below command to check before you proceed. You can see in this example, that three partitions are listed.

fdisk -l
final partition list in fdisk
final partition list in fdisk

Run the following commands in sequence to format and create an ext4 file system in the newly created partition above. Make sure you change the /dev/sda1 and /dev/sda2 as per your need.

mkfs.ext4 /dev/sda1
mkfs.ext4 /dev/sda2
mkswap /dev/sda3
swapon /dev/sda3

After completion, mount the system and create the necessary directories.

mount /dev/sda2 /mnt
mkdir /mnt/boot /mnt/var /mnt/home
mount /dev/sda1 /mnt/boot

Again, make sure you change /dev/sda1, /dev/sda2 and /dev/sda3 as per your system.

prepare file system
prepare file system

Install the base system

I hope you are already connected to the internet. If not, try using a USB dongle or wired internet connection which the Arch installer automatically configures and detect. If you do not have a wired connection available, follow this guide to configure a wireless or wifi network using the Arch Linux installer.

Run the below commands in sequence to install the base system in the mounted partition. The download size is approx 400 MB.

pacman -Syy
pacstrap /mnt base base-devel linux linux-firmware nano dhcpcd net-tools grub
Install base system
Install base system

Once complete, generate a file system table without which you can’t boot the system.

genfstab -U /mnt >> /mnt/etc/fstab

Configure the base system

Follow the below commands in sequence to configure the base system. This involves setting up your locale and language, adding a login user, and setting up the internet.

arch-chroot /mnt
nano /etc/locale.gen

Uncomment the locale of your choice by removing # at the beginning. For this guide, I have chosen en_US.UTF-8 UTF-8. Press CTRL+O, Enter, and CTRL+X to exit from nano.

change locale
change locale

Generate the locale using:


Set up the language using the below command.

echo LANG=en_US.UTF-8 > /etc/locale.conf
export LANG=en_US.UTF-8

Set up the local time zone.

ln -s /usr/share/zoneinfo/America/New_York /etc/localtime

Again, you can choose them as per your need. You can list the local time zones via the below commands.

ls /usr/share/zoneinfo
ls /usr/share/zoneinfo/America

Set up the hardware clock, create a hostname and enable the DHCP for the internet using the below commands in sequence. You can change "arindam-pc" to any hostname as per your desire.

hwclock --systohc --utc
echo debugpoint-pc > /etc/hostname
systemctl enable dhcpcd

The next step is to set up the root user password, create an admin user, and add the user to the sudoers file.

Follow the below commands in sequence. Make sure to change the user name debugpoint to something else as per your need.

passwd root
useradd -m -g users -G wheel -s /bin/bash debugpoint
passwd debugpoint
create user
create user

Open the sudoers file and add the below lines.

nano /etc/sudoers

Add the below lines. As you already created the root user, the entry should be there.

root ALL=(ALL) ALL
debugpoint ALL=(ALL) ALL
update sudoers file
update sudoers file

Install grub, set up the initial ramdisk environment, and unmount the system using the below commands.

grub-install /dev/sda
grub-mkconfig -o /boot/grub/grub.cfg
mkinitcpio -p linux
configure grub
configure grub

Then reboot your system.

umount /mnt/boot
umount /mnt

You have now successfully installed the Arch Linux base system. It’s time to install the complete Deepin desktop.

Part 2: Install Deepin Desktop in Arch Linux

After reboot, choose Arch Linux from grub. In the Arch Linux prompt, start running the following commands in sequence. These commands install the Xorg server, lightdm display manager and Deepin desktop components.

For all the commands, use default as package versions, i.e. press enter when asked.

  • Install Xorg and display manager. Approx install size is 80 MB.
sudo pacman -S --needed xorg lightdm
  • Install additional components and applications (approx 550 MB)
sudo pacman -S --needed deepin deepin-extra

After the installation, enable the Deepin greeter by modifying the lightdm configuration file. Follow the below commands.

nano /etc/lightdm/lightdm.conf

And add the below line. Save the file (CTRL+O, CTRL+X).

add deepin-greeter in lightdm login - install Deepin desktop in Arch Linux
add deepin-greeter in lightdm login

Now it’s time to enable the display manager and network manager as a service. So that the next time you log on, they can run automatically by systemd.

systemctl enable lightdm
systemctl enable NetworkManager
Enable lightdm and network
Enable lightdm and network

Reboot the system using the reboot command.


If all goes well, you should see the Deepin desktop login prompt. Login using the credentials you just created in the above steps. You should be greeted with the latest Deepin desktop environment.

Deepin Desktop in Arch Linux
Deepin Desktop in Arch Linux (version 20.6)

Wrapping Up

I hope this guide helped you to install the Deepin desktop in Arch Linux. Although it is not my daily driver, I feel Deepin’s desktop is somewhat slow in nature. Probably because of too much colour rendering and animation and not properly optimized by dde-desktop despite it being built on Qt.


Creator and author of Connect with me via Telegram, 𝕏 (Twitter), or send us an email.
Notify of

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Oldest Most Voted
Inline Feedbacks
View all comments