-
-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Description
This feature request has been prompted by discussion #3621.
At the moment, alternate shells can be specified by the user, to replace /etc/xrdp/startwm.sh
, provided the configuration variable AllowAlternateShell
is set to true
. This allows users to run any script of their choosing, but also allows them to bypass any setup configurations which the system manager may have added to /etc/xrdp/startwm.sh
The proposal is to add an additional config variable PassShellAsEnv
to go with AllowAlternateShell
:
; If this is set, alternate shells are not actioned directly, but passed in to the default window manager
; in the specified environment variable.
#PassShellAsEnv=XRDP_ALTERNATE_SHELL
With that set, within /etc/xrdp/startwm.sh
the system manager can configure something like the following (as an example):-
case "$XRDP_ALTERNATE_SHELL"
'' | gnome)
# Perform GNOME setup
;;
kde)
# Perform KDE setup
;;
*) zenity --error --text="Unrecognised shell option '$XRDP_ALTERNATE_SHELL'"
exit 1
esac
The advantage of this approach is everything remains within control of the system manager.
Comments? Is this a worthwhile addition to xrdp, or are there better ways to do this?