xrdp - Can't get Plasma to start after initial logging into xrdp / Xorg session

Hi all,

Having issues with starting KDE Plasma via xrdp from a Windows machine. The xrdp login shows fine, I log into an Xorg session, then it just stays put on the green background for a few minutes before showing a sesman error window. Same thing happens if I try Xvnc.

I installed xrdp, xorgxrdp-git and tigervnc as suggested, first two from AUR.

Already tried most suggestions found online but still no success. Some info:

/var/log/xrdp.log (latest attempt only):

 [20191109-13:22:44] [INFO ] address [0.0.0.0] port [3389] mode 1
[20191109-13:22:44] [INFO ] listening to port 3389 on 0.0.0.0
[20191109-13:22:44] [INFO ] xrdp_listen_pp done
[20191109-13:22:44] [DEBUG] Closed socket 7 (AF_INET 0.0.0.0:3389)
[20191109-13:22:46] [INFO ] starting xrdp with pid 901
[20191109-13:22:46] [INFO ] address [0.0.0.0] port [3389] mode 1
[20191109-13:22:46] [INFO ] listening to port 3389 on 0.0.0.0
[20191109-13:22:46] [INFO ] xrdp_listen_pp done
[20191109-13:29:16] [INFO ] Socket 12: AF_INET connection received from 139.153.147.126 port 53232
[20191109-13:29:16] [DEBUG] Closed socket 12 (AF_INET 139.153.146.95:3389)
[20191109-13:29:16] [DEBUG] Closed socket 11 (AF_INET 0.0.0.0:3389)
[20191109-13:29:16] [INFO ] Using default X.509 certificate: /etc/xrdp/cert.pem
[20191109-13:29:16] [INFO ] Using default X.509 key file: /etc/xrdp/key.pem
[20191109-13:29:16] [DEBUG] TLSv1.3 enabled
[20191109-13:29:16] [DEBUG] TLSv1.2 enabled
[20191109-13:29:16] [DEBUG] Security layer: requested 11, selected 1
[20191109-13:29:16] [INFO ] connected client computer name: STR645106570DCE
[20191109-13:29:16] [INFO ] adding channel item name rdpdr chan_id 1004 flags 0x80800000
[20191109-13:29:16] [INFO ] adding channel item name rdpsnd chan_id 1005 flags 0xc0000000
[20191109-13:29:16] [INFO ] adding channel item name cliprdr chan_id 1006 flags 0xc0a00000
[20191109-13:29:16] [INFO ] adding channel item name drdynvc chan_id 1007 flags 0xc0800000
[20191109-13:29:16] [INFO ] TLS connection established from 139.153.147.126 port 53232: TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384
[20191109-13:29:16] [DEBUG] xrdp_00001043_wm_login_mode_event_00000001
[20191109-13:29:16] [INFO ] Cannot find keymap file /etc/xrdp/km-00020409.ini
[20191109-13:29:16] [INFO ] Loading keymap file /etc/xrdp/km-00000409.ini
[20191109-13:29:16] [WARN ] local keymap file for 0x00020409 found and doesn't match built in keymap, using local keymap file
[20191109-13:29:21] [DEBUG] xrdp_wm_log_msg: connecting to sesman ip 127.0.0.1 port 3350
[20191109-13:29:21] [INFO ] xrdp_wm_log_msg: sesman connect ok
[20191109-13:29:21] [DEBUG] xrdp_wm_log_msg: sending login info to session manager, please wait...
[20191109-13:29:21] [DEBUG] return value from xrdp_mm_connect 0
[20191109-13:29:21] [INFO ] xrdp_wm_log_msg: login successful for display 10
[20191109-13:29:21] [DEBUG] xrdp_wm_log_msg: started connecting
[20191109-13:29:24] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:29:28] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:29:31] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:29:35] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:29:38] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:29:42] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:29:45] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:29:49] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:29:52] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:29:56] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:29:59] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:30:03] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:30:06] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:30:10] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:30:14] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:30:17] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:30:21] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:30:24] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:30:28] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:30:31] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:30:35] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:30:38] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:30:42] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:30:45] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:30:49] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:30:52] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:30:56] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:30:59] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:31:03] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:31:06] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:31:10] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:31:13] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:31:17] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:31:20] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:31:24] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:31:27] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:31:31] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:31:34] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:31:38] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:31:41] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:31:45] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:31:48] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:31:52] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:31:55] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:31:59] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:32:02] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:32:06] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:32:09] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:32:13] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:32:16] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:32:20] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:32:24] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:32:27] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:32:31] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:32:34] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:32:38] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:32:41] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:32:45] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:32:48] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:32:51] [DEBUG] xrdp_wm_log_msg: connection problem, giving up
[20191109-13:32:51] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:32:51] [DEBUG] xrdp_wm_log_msg: some problem
[20191109-13:32:51] [DEBUG] xrdp_mm_module_cleanup
[20191109-13:32:51] [DEBUG] Closed socket 18 (AF_INET 127.0.0.1:36200)
[20191109-13:36:08] [DEBUG] Closed socket 12 (AF_INET 139.153.146.95:3389)
[20191109-13:36:08] [DEBUG] xrdp_mm_module_cleanup
[20191109-13:36:13] [INFO ] Socket 12: AF_INET connection received from 139.153.147.126 port 53255
[20191109-13:36:13] [DEBUG] Closed socket 12 (AF_INET 139.153.146.95:3389)
[20191109-13:36:13] [DEBUG] Closed socket 11 (AF_INET 0.0.0.0:3389)
[20191109-13:36:13] [INFO ] Using default X.509 certificate: /etc/xrdp/cert.pem
[20191109-13:36:13] [INFO ] Using default X.509 key file: /etc/xrdp/key.pem
[20191109-13:36:13] [DEBUG] TLSv1.3 enabled
[20191109-13:36:13] [DEBUG] TLSv1.2 enabled
[20191109-13:36:13] [DEBUG] Security layer: requested 11, selected 1
[20191109-13:36:13] [INFO ] connected client computer name: STR645106570DCE
[20191109-13:36:13] [INFO ] adding channel item name rdpdr chan_id 1004 flags 0x80800000
[20191109-13:36:13] [INFO ] adding channel item name rdpsnd chan_id 1005 flags 0xc0000000
[20191109-13:36:13] [INFO ] adding channel item name cliprdr chan_id 1006 flags 0xc0a00000
[20191109-13:36:13] [INFO ] adding channel item name drdynvc chan_id 1007 flags 0xc0800000
[20191109-13:36:13] [INFO ] TLS connection established from 139.153.147.126 port 53255: TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384
[20191109-13:36:13] [DEBUG] xrdp_00001320_wm_login_mode_event_00000001
[20191109-13:36:13] [INFO ] Cannot find keymap file /etc/xrdp/km-00020409.ini
[20191109-13:36:13] [INFO ] Loading keymap file /etc/xrdp/km-00000409.ini
[20191109-13:36:13] [WARN ] local keymap file for 0x00020409 found and doesn't match built in keymap, using local keymap file
[20191109-13:36:18] [DEBUG] xrdp_wm_log_msg: connecting to sesman ip 127.0.0.1 port 3350
[20191109-13:36:18] [INFO ] xrdp_wm_log_msg: sesman connect ok
[20191109-13:36:18] [DEBUG] xrdp_wm_log_msg: sending login info to session manager, please wait...
[20191109-13:36:18] [DEBUG] return value from xrdp_mm_connect 0
[20191109-13:36:18] [INFO ] xrdp_wm_log_msg: login successful for display 10
[20191109-13:36:18] [DEBUG] xrdp_wm_log_msg: started connecting
[20191109-13:36:21] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:36:25] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:36:28] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:36:32] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:36:35] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:36:39] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:36:42] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:36:46] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:36:49] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:36:53] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:36:56] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:37:00] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:37:03] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:37:07] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:37:10] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:37:14] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:37:18] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:37:21] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:37:25] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:37:28] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:37:32] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:37:35] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:37:39] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:37:42] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:37:46] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:37:49] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:37:53] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:37:56] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:38:00] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:38:03] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:38:07] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:38:10] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:38:14] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:38:17] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:38:21] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:38:24] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:38:28] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:38:31] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:38:35] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:38:38] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:38:42] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:38:45] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:38:49] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:38:52] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:38:56] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:38:59] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:39:03] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:39:06] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:39:10] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:39:13] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:39:17] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:39:21] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:39:24] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:39:28] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:39:31] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:39:35] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:39:38] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:39:42] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:39:45] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:39:48] [DEBUG] xrdp_wm_log_msg: connection problem, giving up
[20191109-13:39:48] [DEBUG] Closed socket 19 (AF_UNIX)
[20191109-13:39:48] [DEBUG] xrdp_wm_log_msg: some problem
[20191109-13:39:48] [DEBUG] xrdp_mm_module_cleanup
[20191109-13:39:48] [DEBUG] Closed socket 18 (AF_INET 127.0.0.1:36304)
[20191109-13:47:52] [DEBUG] Closed socket 12 (AF_INET 139.153.146.95:3389)
[20191109-13:47:52] [DEBUG] xrdp_mm_module_cleanup

/var/log/xrdp-sesman.log

[20191109-13:22:44] [DEBUG] libscp initialized
[20191109-13:22:44] [DEBUG] Testing if xrdp-sesman can listen on 127.0.0.1 port 3350.
[20191109-13:22:44] [DEBUG] Closed socket 1 (AF_INET 127.0.0.1:3350)
[20191109-13:22:44] [INFO ] starting xrdp-sesman with pid 882
[20191109-13:22:44] [INFO ] listening to port 3350 on 127.0.0.1
[20191109-13:29:21] [INFO ] A connection received from 127.0.0.1 port 36200
[20191109-13:29:21] [INFO ] ++ created session (access granted): username thiago, ip 139.153.147.126:53232 - socket: 12
[20191109-13:29:21] [INFO ] starting Xorg session...
[20191109-13:29:21] [DEBUG] Closed socket 9 (AF_INET 0.0.0.0:5910)
[20191109-13:29:21] [DEBUG] Closed socket 9 (AF_INET 0.0.0.0:6010)
[20191109-13:29:21] [DEBUG] Closed socket 9 (AF_INET 0.0.0.0:6210)
[20191109-13:29:21] [DEBUG] Closed socket 8 (AF_INET 127.0.0.1:3350)
[20191109-13:29:21] [INFO ] calling auth_start_session from pid 4164
[20191109-13:29:21] [DEBUG] Closed socket 7 (AF_INET 127.0.0.1:3350)
[20191109-13:29:21] [DEBUG] Closed socket 8 (AF_INET 127.0.0.1:3350)
[20191109-13:29:21] [INFO ] Xorg :10 -auth .Xauthority -config xrdp/xorg.conf -noreset -nolisten tcp -logfile .xorgxrdp.%s.log  
[20191109-13:29:31] [ERROR] X server for display 10 startup timeout
[20191109-13:29:31] [CORE ] waiting for window manager (pid 4165) to exit
[20191109-13:29:31] [ERROR] X server for display 10 startup timeout
[20191109-13:29:31] [ERROR] another Xserver might already be active on display 10 - see log
[20191109-13:29:31] [DEBUG] aborting connection...
[20191109-13:29:31] [CORE ] window manager (pid 4165) did exit, cleaning up session
[20191109-13:29:31] [INFO ] calling auth_stop_session and auth_end from pid 4164
[20191109-13:29:31] [DEBUG] cleanup_sockets:
[20191109-13:29:31] [DEBUG] cleanup_sockets: deleting /tmp/.xrdp/xrdp_chansrv_socket_10
[20191109-13:29:31] [DEBUG] cleanup_sockets: deleting /tmp/.xrdp/xrdpapi_10
[20191109-13:29:31] [DEBUG] cleanup_sockets: failed to delete /tmp/.xrdp/xrdpapi_10
[20191109-13:29:31] [INFO ] ++ terminated session:  username thiago, display :10.0, session_pid 4164, ip 139.153.147.126:53232 - socket: 12
[20191109-13:36:18] [INFO ] A connection received from 127.0.0.1 port 36304
[20191109-13:36:18] [INFO ] ++ created session (access granted): username thiago, ip 139.153.147.126:53255 - socket: 12
[20191109-13:36:18] [INFO ] starting Xorg session...
[20191109-13:36:18] [DEBUG] Closed socket 9 (AF_INET 0.0.0.0:5910)
[20191109-13:36:18] [DEBUG] Closed socket 9 (AF_INET 0.0.0.0:6010)
[20191109-13:36:18] [DEBUG] Closed socket 9 (AF_INET 0.0.0.0:6210)
[20191109-13:36:18] [DEBUG] Closed socket 8 (AF_INET 127.0.0.1:3350)
[20191109-13:36:18] [INFO ] calling auth_start_session from pid 4898
[20191109-13:36:18] [DEBUG] Closed socket 7 (AF_INET 127.0.0.1:3350)
[20191109-13:36:18] [DEBUG] Closed socket 8 (AF_INET 127.0.0.1:3350)
[20191109-13:36:18] [INFO ] Xorg :10 -auth .Xauthority -config xrdp/xorg.conf -noreset -nolisten tcp -logfile .xorgxrdp.%s.log  
[20191109-13:36:28] [ERROR] X server for display 10 startup timeout
[20191109-13:36:28] [CORE ] waiting for window manager (pid 4899) to exit
[20191109-13:36:28] [ERROR] X server for display 10 startup timeout
[20191109-13:36:28] [ERROR] another Xserver might already be active on display 10 - see log
[20191109-13:36:28] [DEBUG] aborting connection...
[20191109-13:36:28] [CORE ] window manager (pid 4899) did exit, cleaning up session
[20191109-13:36:28] [INFO ] calling auth_stop_session and auth_end from pid 4898
[20191109-13:36:28] [DEBUG] cleanup_sockets:
[20191109-13:36:28] [DEBUG] cleanup_sockets: deleting /tmp/.xrdp/xrdp_chansrv_socket_10
[20191109-13:36:28] [DEBUG] cleanup_sockets: deleting /tmp/.xrdp/xrdpapi_10
[20191109-13:36:28] [DEBUG] cleanup_sockets: failed to delete /tmp/.xrdp/xrdpapi_10
[20191109-13:36:28] [INFO ] ++ terminated session:  username thiago, display :10.0, session_pid 4898, ip 139.153.147.126:53255 - socket: 12

.xinitrc:

#!/bin/sh
#
# ~/.xinitrc
#
# Executed by startx (run your window manager from here)

userresources=$HOME/.Xresources
usermodmap=$HOME/.Xmodmap
sysresources=/etc/X11/xinit/.Xresources
sysmodmap=/etc/X11/xinit/.Xmodmap

DEFAULT_SESSION=startkde

# merge in defaults and keymaps

if [ -f $sysresources ]; then
    xrdb -merge $sysresources
fi

if [ -f $sysmodmap ]; then
    xmodmap $sysmodmap
fi

if [ -f "$userresources" ]; then
    xrdb -merge "$userresources"
fi

if [ -f "$usermodmap" ]; then
    xmodmap "$usermodmap"
fi

# start some nice programs

if [ -d /etc/X11/xinit/xinitrc.d ] ; then
    for f in /etc/X11/xinit/xinitrc.d/?*.sh ; do
        [ -x "$f" ] && . "$f"
    done
    unset f
fi

get_session(){
    local dbus_args=(--sh-syntax)
    case $1 in
        awesome) dbus_args+=(awesome) ;;
        bspwm) dbus_args+=(bspwm-session) ;;
        budgie) dbus_args+=(budgie-desktop) ;;
        cinnamon) dbus_args+=(cinnamon-session) ;;
        deepin) dbus_args+=(startdde) ;;
        enlightenment) dbus_args+=(enlightenment_start) ;;
        fluxbox) dbus_args+=(startfluxbox) ;;
        gnome) dbus_args+=(gnome-session) ;;
        i3|i3wm) dbus_args+=(i3 --shmlog-size 0) ;;
        jwm) dbus_args+=(jwm) ;;
        kde) dbus_args+=(startkde) ;;
        lxde) dbus_args+=(startlxde) ;;
        lxqt) dbus_args+=(lxqt-session) ;;
        mate) dbus_args+=(mate-session) ;;
        xfce) dbus_args+=(xfce4-session) ;;
        openbox) dbus_args+=(openbox-session) ;;
        *) dbus_args+=($DEFAULT_SESSION) ;;
    esac

    echo "dbus-launch ${dbus_args[*]}"
}

exec $(get_session)

.xsessionrc:

export XDG_SESSION_DESKTOP=KDE
export XDG_DATA_DIRS=/usr/share/plasma:/usr/local/share:/usr/share:/var/lib/snapd/desktop
export XDG_CONFIG_DIRS=/etc/xdg/xdg-plasma:/etc/xdg

/etc/X11/xinit/xinitrc

#!/bin/sh

userresources=$HOME/.Xresources
usermodmap=$HOME/.Xmodmap
sysresources=/etc/X11/xinit/.Xresources
sysmodmap=/etc/X11/xinit/.Xmodmap

# merge in defaults and keymaps

if [ -f $sysresources ]; then







    xrdb -merge $sysresources

fi

if [ -f $sysmodmap ]; then
    xmodmap $sysmodmap
fi

if [ -f "$userresources" ]; then







    xrdb -merge "$userresources"

fi

if [ -f "$usermodmap" ]; then
    xmodmap "$usermodmap"
fi

# start some nice programs

if [ -d /etc/X11/xinit/xinitrc.d ] ; then
 for f in /etc/X11/xinit/xinitrc.d/?*.sh ; do
  [ -x "$f" ] && . "$f"
 done
 unset f
fi

twm &
xclock -geometry 50x50-1+1 &
xterm -geometry 80x50+494+51 &
xterm -geometry 80x20+494-0 &
exec xterm -geometry 80x66+0+0 -name login

exec dbus-run-session --startkde

/etc/xrdp/sesman.ini:

;; See `man 5 sesman.ini` for details

[Globals]
ListenAddress=127.0.0.1
ListenPort=3350
EnableUserWindowManager=true
; Give in relative path to user's home directory
UserWindowManager=startwm.sh
; Give in full path or relative path to /etc/xrdp
DefaultWindowManager=startwm.sh
; Give in full path or relative path to /etc/xrdp
ReconnectScript=reconnectwm.sh

[Security]
AllowRootLogin=true
MaxLoginRetry=4
TerminalServerUsers=tsusers
TerminalServerAdmins=tsadmins
; When AlwaysGroupCheck=false access will be permitted
; if the group TerminalServerUsers is not defined.
AlwaysGroupCheck=false
; When RestrictOutboundClipboard=true clipboard from the
; server is not pushed to the client.
RestrictOutboundClipboard=false

[Sessions]
;; X11DisplayOffset - x11 display number offset
; Type: integer
; Default: 10
X11DisplayOffset=10

;; MaxSessions - maximum number of connections to an xrdp server
; Type: integer
; Default: 0
MaxSessions=50

;; KillDisconnected - kill disconnected sessions
; Type: boolean
; Default: false
; if 1, true, or yes, kill session after 60 seconds
KillDisconnected=false

;; DisconnectedTimeLimit - when to kill idle sessions
; Type: integer
; Default: 0
; if not zero, the seconds before a disconnected session is killed
; min 60 seconds
DisconnectedTimeLimit=0

;; IdleTimeLimit (specify in second) - wait before disconnect idle sessions
; Type: integer
; Default: 0
; Set to 0 to disable idle disconnection.
IdleTimeLimit=0

;; Policy - session allocation policy
; Type: enum [ "Default" | "UBD" | "UBI" | "UBC" | "UBDI" | "UBDC" ]
; Default: Xrdp:<User,BitPerPixel> and Xvnc:<User,BitPerPixel,DisplaySize>
; "UBD" session per <User,BitPerPixel,DisplaySize>
; "UBI" session per <User,BitPerPixel,IPAddr>
; "UBC" session per <User,BitPerPixel,Connection>
; "UBDI" session per <User,BitPerPixel,DisplaySize,IPAddr>
; "UBDC" session per <User,BitPerPixel,DisplaySize,Connection>
Policy=Default

[Logging]
LogFile=xrdp-sesman.log
LogLevel=DEBUG
EnableSyslog=1
SyslogLevel=DEBUG

;
; Session definitions - startup command-line parameters for each session type
;

[Xorg]
; Specify the path of non-suid Xorg executable. It might differ depending
; on your distribution and version. The typical path is shown as follows:
;
; Fedora 26 or later    :  param=/usr/libexec/Xorg
; Debian 9 or later     :  param=/usr/lib/xorg/Xorg
; Ubuntu 16.04 or later :  param=/usr/lib/xorg/Xorg
; Arch Linux            :  param=/usr/lib/xorg-server/Xorg
; CentOS 7              :  param=/usr/bin/Xorg or param=Xorg
;
param=Xorg
; Leave the rest paramaters as-is unless you understand what will happen.
param=-config
param=xrdp/xorg.conf
param=-noreset
param=-nolisten
param=tcp
param=-logfile
param=.xorgxrdp.%s.log
param=-layout
param=X11server

[Xvnc]
param=Xvnc
param=-bs
param=-nolisten
param=tcp
;param=-localhost
param=-dpi
param=96
param8=-depth
param9=24

[Chansrv]
; drive redirection, defaults to xrdp_client if not set
FuseMountName=thinclient_drives

[SessionVariables]
PULSE_SCRIPT=/etc/xrdp/pulse/default.pa

/etc/xrdp/xrdp.ini:

[Globals]
; xrdp.ini file version number
ini_version=1

; fork a new process for each incoming connection
fork=true

; ports to listen on, number alone means listen on all interfaces
; 0.0.0.0 or :: if ipv6 is configured
; space between multiple occurrences
;
; Examples:
;   port=3389
;   port=unix://./tmp/xrdp.socket
;   port=tcp://.:3389                           127.0.0.1:3389
;   port=tcp://:3389                            *:3389
;   port=tcp://<any ipv4 format addr>:3389      192.168.1.1:3389
;   port=tcp6://.:3389                          ::1:3389
;   port=tcp6://:3389                           *:3389
;   port=tcp6://{<any ipv6 format addr>}:3389   {FC00:0:0:0:0:0:0:1}:3389
;   port=vsock://<cid>:<port>
port=3389

; 'port' above should be connected to with vsock instead of tcp
; use this only with number alone in port above
; prefer use vsock://<cid>:<port> above
use_vsock=false

; regulate if the listening socket use socket option tcp_nodelay
; no buffering will be performed in the TCP stack
tcp_nodelay=true

; regulate if the listening socket use socket option keepalive
; if the network connection disappear without close messages the connection will be closed
tcp_keepalive=true

; set tcp send/recv buffer (for experts)
#tcp_send_buffer_bytes=32768
#tcp_recv_buffer_bytes=32768

; security layer can be 'tls', 'rdp' or 'negotiate'
; for client compatible layer
security_layer=negotiate

; minimum security level allowed for client for classic RDP encryption
; use tls_ciphers to configure TLS encryption
; can be 'none', 'low', 'medium', 'high', 'fips'
crypt_level=high

; X.509 certificate and private key
; openssl req -x509 -newkey rsa:2048 -nodes -keyout key.pem -out cert.pem -days 365
certificate=
key_file=

; set SSL protocols
; can be comma separated list of 'SSLv3', 'TLSv1', 'TLSv1.1', 'TLSv1.2', 'TLSv1.3'
ssl_protocols=TLSv1.2, TLSv1.3
; set TLS cipher suites
#tls_ciphers=HIGH

; Section name to use for automatic login if the client sends username
; and password. If empty, the domain name sent by the client is used.
; If empty and no domain name is given, the first suitable section in
; this file will be used.
autorun=

allow_channels=true
allow_multimon=true
bitmap_cache=true
bitmap_compression=true
bulk_compression=true
#hidelogwindow=true
max_bpp=32
new_cursors=true
; fastpath - can be 'input', 'output', 'both', 'none'
use_fastpath=both
; when true, userid/password *must* be passed on cmd line
#require_credentials=true
; You can set the PAM error text in a gateway setup (MAX 256 chars)
#pamerrortxt=change your password according to policy at http://url

;
; colors used by windows in RGB format
;
blue=009cb5
grey=dedede
#black=000000
#dark_grey=808080
#blue=08246b
#dark_blue=08246b
#white=ffffff
#red=ff0000
#green=00ff00
#background=626c72

;
; configure login screen
;

; Login Screen Window Title
#ls_title=My Login Title

; top level window background color in RGB format
ls_top_window_bg_color=009cb5

; width and height of login screen
ls_width=350
ls_height=430

; login screen background color in RGB format
ls_bg_color=dedede

; optional background image filename (bmp format).
#ls_background_image=

; logo
; full path to bmp-file or file in shared folder
ls_logo_filename=
ls_logo_x_pos=55
ls_logo_y_pos=50

; for positioning labels such as username, password etc
ls_label_x_pos=30
ls_label_width=65

; for positioning text and combo boxes next to above labels
ls_input_x_pos=110
ls_input_width=210

; y pos for first label and combo box
ls_input_y_pos=220

; OK button
ls_btn_ok_x_pos=142
ls_btn_ok_y_pos=370
ls_btn_ok_width=85
ls_btn_ok_height=30

; Cancel button
ls_btn_cancel_x_pos=237
ls_btn_cancel_y_pos=370
ls_btn_cancel_width=85
ls_btn_cancel_height=30

[Logging]
LogFile=xrdp.log
LogLevel=DEBUG
EnableSyslog=true
SyslogLevel=DEBUG
; LogLevel and SysLogLevel could by any of: core, error, warning, info or debug

[Channels]
; Channel names not listed here will be blocked by XRDP.
; You can block any channel by setting its value to false.
; IMPORTANT! All channels are not supported in all use
; cases even if you set all values to true.
; You can override these settings on each session type
; These settings are only used if allow_channels=true
rdpdr=true
rdpsnd=true
drdynvc=true
cliprdr=true
rail=true
xrdpvr=true
tcutils=true

; for debugging xrdp, in section xrdp1, change port=-1 to this:
#port=/tmp/.xrdp/xrdp_display_10

; for debugging xrdp, add following line to section xrdp1
#chansrvport=/tmp/.xrdp/xrdp_chansrv_socket_7210


;
; Session types
;

; 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.
[Xorg]
name=Xorg
lib=libxup.so
username=ask
password=ask
ip=127.0.0.1
port=-1
code=20

[Xvnc]
name=Xvnc
lib=libvnc.so
username=ask
password=ask
ip=127.0.0.1
port=-1
#xserverbpp=24
#delay_ms=2000

[vnc-any]
name=vnc-any
lib=libvnc.so
ip=ask
port=ask5900
username=na
password=ask
#pamusername=asksame
#pampassword=asksame
#pamsessionmng=127.0.0.1
#delay_ms=2000

[sesman-any]
name=sesman-any
lib=libvnc.so
ip=127.0.0.1
port=-1
username=ask
password=ask
#delay_ms=2000

[neutrinordp-any]
name=neutrinordp-any
lib=libxrdpneutrinordp.so
ip=ask
port=ask3389
username=ask
password=ask

; You can override the common channel settings for each session type
#channel.rdpdr=true
#channel.rdpsnd=true
#channel.drdynvc=true
#channel.cliprdr=true
#channel.rail=true
#channel.xrdpvr=true

/etc/xrdp/startwm.sh:

#!/usr/bin/env bash
#
# This script is an example. You might need to edit this script
# depending on your distro if it doesn't work for you.
#
# Uncomment the following line for debug:
# exec xterm


# Execution sequence for interactive login shell - pseudocode
#
# IF /etc/profile is readable THEN
#     execute ~/.bash_profile
# END IF
# IF ~/.bash_profile is readable THEN
#     execute ~/.bash_profile
# ELSE
#     IF ~/.bash_login is readable THEN
#         execute ~/.bash_login
#     ELSE
#         IF ~/.profile is readable THEN
#             execute ~/.profile
#         END IF
#     END IF
# END IF
pre_start()
{
  if [ -r /etc/profile ]; then
    . /etc/profile
  fi
  if [ -r ~/.bash_profile ]; then
    . ~/.bash_profile
  else
    if [ -r ~/.bash_login ]; then
      . ~/.bash_login
    else
      if [ -r ~/.profile ]; then
        . ~/.profile
      fi
    fi
  fi
  return 0
}

# When loging out from the interactive shell, the execution sequence is:
#
# IF ~/.bash_logout exists THEN
#     execute ~/.bash_logout
# END IF
post_start()
{
  if [ -r ~/.bash_logout ]; then
    . ~/.bash_logout
  fi
  return 0
}

#start the window manager
wm_start()
{
  if [ -r /etc/locale.conf ]; then
    . /etc/locale.conf
    export LANG LANGUAGE
  fi

  # arch user
  if [ -r ~/.xinitrc ]; then
    . ~/.xinitrc
    exit 0
  fi
  # arch
  if [ -r /etc/X11/xinit/xinitrc ]; then
    . /etc/X11/xinit/xinitrc
    exit 0
  fi

  # debian
  #if [ -r /etc/X11/Xsession ]; then
#    pre_start
    #. /etc/X11/Xsession
#    post_start
#    exit 0
#  fi

#  # el
#  if [ -r /etc/X11/xinit/Xsession ]; then
#    pre_start
#    . /etc/X11/xinit/Xsession
#    post_start
#    exit 0
 # fi

  # suse
  #if [ -r /etc/X11/xdm/Xsession ]; then
#    # since the following script run a user login shell,
    # do not execute the pseudo login shell scripts
#    . /etc/X11/xdm/Xsession
#    exit 0
#  fi

  pre_start
  xterm
  post_start
}

#. /etc/environment
#export PATH=$PATH
#export LANG=$LANG

# change PATH to be what your environment needs usually what is in
# /etc/environment
#PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"
#export PATH=$PATH

# for PATH and LANG from /etc/environment
# pam will auto process the environment file if /etc/pam.d/xrdp-sesman
# includes
# auth       required     pam_env.so readenv=1

wm_start

exit 1

inxi -Fxxxza --no-host :

System:    Kernel: 5.3.8-3-MANJARO x86_64 bits: 64 compiler: gcc v: 9.2.0 
           parameters: BOOT_IMAGE=/boot/vmlinuz-5.3-x86_64 root=UUID=7844fdeb-255b-479c-b7c4-18fad83ad4ac rw quiet apparmor=1 
           security=apparmor udev.log_priority=3 
           Desktop: KDE Plasma 5.17.2 tk: Qt 5.13.1 info: latte-dock wm: kwin_x11 dm: SDDM Distro: Manjaro Linux 
Machine:   Type: Desktop System: Gigabyte product: X299 UD4 Pro v: N/A serial: <filter> 
           Mobo: Gigabyte model: X299 UD4 Pro-CF v: x.x serial: <filter> UEFI: American Megatrends v: F7a date: 10/03/2019 
Battery:   Device-1: hidpp_battery_0 model: Logitech Wireless Mouse serial: <filter> charge: 55% (should be ignored) 
           rechargeable: yes status: Discharging 
           Device-2: hidpp_battery_1 model: Logitech Wireless Keyboard K540/K545 serial: <filter> 
           charge: 100% (should be ignored) rechargeable: yes status: Discharging 
CPU:       Topology: 10-Core model: Intel Core i9-9900X bits: 64 type: MT MCP arch: Skylake family: 6 model-id: 55 (85) 
           stepping: 4 microcode: 2000064 L2 cache: 19.2 MiB 
           flags: avx avx2 lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx bogomips: 140049 
           Speed: 1200 MHz min/max: 1200/4500 MHz Core speeds (MHz): 1: 1201 2: 1200 3: 1200 4: 1201 5: 1200 6: 1201 7: 1201 
           8: 1200 9: 1200 10: 1202 11: 1200 12: 1200 13: 1201 14: 1200 15: 1200 16: 1200 17: 1200 18: 1200 19: 1200 20: 1201 
           Vulnerabilities: Type: l1tf mitigation: PTE Inversion; VMX: conditional cache flushes, SMT vulnerable 
           Type: mds mitigation: Clear CPU buffers; SMT vulnerable 
           Type: meltdown mitigation: PTI 
           Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via prctl and seccomp 
           Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer sanitization 
           Type: spectre_v2 mitigation: Full generic retpoline, IBPB: conditional, IBRS_FW, STIBP: conditional, RSB filling 
Graphics:  Device-1: NVIDIA TU104 [GeForce RTX 2070 SUPER] vendor: eVga.com. driver: nvidia v: 440.26 bus ID: 65:00.0 
           chip ID: 10de:1e84 
           Display: x11 server: X.Org 1.20.5 driver: nvidia compositor: kwin_x11 resolution: 3440x1440~60Hz 
           OpenGL: renderer: GeForce RTX 2070 SUPER/PCIe/SSE2 v: 4.6.0 NVIDIA 440.26 direct render: Yes 
Audio:     Device-1: Intel 200 Series PCH HD Audio vendor: Gigabyte driver: snd_hda_intel v: kernel bus ID: 00:1f.3 
           chip ID: 8086:a2f0 
           Device-2: NVIDIA vendor: eVga.com. driver: snd_hda_intel v: kernel bus ID: 65:00.1 chip ID: 10de:10f8 
           Device-3: JMTek LLC. USB PnP Audio Device type: USB driver: hid-generic,snd-usb-audio,usbhid bus ID: 1-6:5 
           chip ID: 0c76:161f 
           Device-4: HP USB Receiver type: USB driver: hid-generic,snd-usb-audio,usbhid bus ID: 1-2.3.4:6 chip ID: 03f0:0c47 
           serial: <filter> 
           Sound Server: ALSA v: k5.3.8-3-MANJARO 
Network:   Device-1: Intel Ethernet I219-V vendor: Gigabyte driver: e1000e v: 3.2.6-k port: 3000 bus ID: 00:1f.6 
           chip ID: 8086:15b8 
           IF: enp0s31f6 state: up speed: 1000 Mbps duplex: full mac: <filter> 
Drives:    Local Storage: total: 8.64 TiB used: 1.46 TiB (16.9%) 
           ID-1: /dev/sda vendor: Seagate model: ST1000LX015-1U7172 size: 931.51 GiB block size: physical: 4096 B 
           logical: 512 B speed: 6.0 Gb/s rotation: 5400 rpm serial: <filter> rev: SDM1 scheme: MBR 
           ID-2: /dev/sdb vendor: Seagate model: ST4000DM006-2G5107 size: 3.64 TiB block size: physical: 4096 B logical: 512 B 
           speed: 6.0 Gb/s rotation: 7200 rpm serial: <filter> rev: DN04 
           ID-3: /dev/sdc vendor: Seagate model: ST4000DM006-2G5107 size: 3.64 TiB block size: physical: 4096 B logical: 512 B 
           speed: 6.0 Gb/s rotation: 7200 rpm serial: <filter> rev: DN04 
           ID-4: /dev/sdd vendor: Crucial model: CT500MX500SSD4 size: 465.76 GiB block size: physical: 4096 B logical: 512 B 
           speed: 6.0 Gb/s serial: <filter> rev: 020 scheme: GPT 
Partition: ID-1: / raw size: 465.26 GiB size: 456.96 GiB (98.22%) used: 102.85 GiB (22.5%) fs: ext4 dev: /dev/sdd2 
Sensors:   System Temperatures: cpu: 27.0 C mobo: N/A gpu: nvidia temp: 44 C 
           Fan Speeds (RPM): N/A gpu: nvidia fan: 0% 
Info:      Processes: 373 Uptime: 22m Memory: 62.52 GiB used: 4.09 GiB (6.5%) Init: systemd v: 242 Compilers: gcc: 9.2.0 
           alt: 8 clang: 9.0.0 Shell: zsh v: 5.7.1 running in: yakuake inxi: 3.0.36 

Any ideas? Thank you!

I'm having the same problem and have tried everything I've seen online as well. Were you able to find a solution?

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.

Forum kindly sponsored by