LinuxMint 19: Connect to Cinnamon desktop environment via XRDP

This article will describe installing Cinnamon desktop environment and XRDP, and connecting to Cinnamon desktop environment via XRDP.

1 Install XRDP

Install XRDP and TigerVNC.

$ sudo apt install -y xrdp tigervnc-standalone-server
$ sudo systemctl enable xrdp

Change default session type to Xvnc.

$ cd /etc/xrdp
$ cat <<EOF | sudo patch -p0
--- xrdp.ini.orig       2018-07-11 14:22:02.852103588 +0900
+++ xrdp.ini    2018-07-11 14:23:30.978905479 +0900
@@ -153,6 +153,16 @@ tcutils=true
 ; Some session types such as Xorg, X11rdp and Xvnc start a display server.
 ; Startup command-line parameters for the display server are configured
 ; in sesman.ini. See and configure also sesman.ini.
+[Xvnc]
+name=Xvnc
+lib=libvnc.so
+username=ask
+password=ask
+ip=127.0.0.1
+port=-1
+#xserverbpp=24
+#delay_ms=2000
+
 [Xorg]
 name=Xorg
 lib=libxup.so
@@ -172,16 +182,6 @@ port=-1
 xserverbpp=24
 code=10

-[Xvnc]
-name=Xvnc
-lib=libvnc.so
-username=ask
-password=ask
-ip=127.0.0.1
-port=-1
-#xserverbpp=24
-#delay_ms=2000
-
 [console]
 name=console
 lib=libvnc.so
EOF
$ sudo systemctl restart xrdp

1.1 Avoid Authentication Require dialog

After connecting via XRDP, Authentication Require dialog for Flatpak update will be displayed.

0001_AuthenticationRequireDialog.png

If you feel troublesome to respond to Authentication Require dialog, you can emit responce with creating PolicyKit rules which will reject Flatpak update (Or allow sudo group user to Flatpak update).

$ cat <<EOF | \
  sudo tee /etc/polkit-1/localauthority/50-local.d/xrdp-flatpak.pkla
[Netowrkmanager]
Identity=unix-user:*
Action=org.freedesktop.Flatpak.appstream-update
ResultAny=no
ResultInactive=no
ResultActive=yes
EOF
$ sudo systemctl restart polkit

2 Connect to Cinnamon desktop environment via XRDP

Use Xorg as a session type. Windows Remote Desktop Connection is as the following.

0002_xrdp-cinnamon.png