123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131 |
- #!/usr/bin/env bash
- # This script is derived from https://github.com/neutrinolabs/xrdp/sesman/startwm.sh.
- #
- # 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/default/locale ]; then
- . /etc/default/locale
- export LANG LANGUAGE
- fi
- # debian
- if [ -r /etc/X11/Xsession ]; then
- pre_start
- . /etc/X11/Xsession
- post_start
- exit 0
- fi
- # alpine
- # Don't use /etc/X11/xinit/Xsession - it doesn't work
- if [ -f /etc/alpine-release ]; then
- if [ -f /etc/X11/xinit/xinitrc ]; then
- pre_start
- /etc/X11/xinit/xinitrc
- post_start
- else
- echo "** xinit package isn't installed" >&2
- exit 1
- fi
- 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
- elif [ -r /usr/etc/X11/xdm/Xsession ]; then
- . /usr/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
|