summaryrefslogtreecommitdiff
path: root/configs/lxde-multi/root-image/etc/lxdm/Xsession
blob: ebc2ff7b48ea84cfa5f1a68ba25c255490943955 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#!/bin/bash

# use bash for "exec -l", howto run login shell by /bin/sh ?

if [ $# -eq 1 -a -n "$1" ]; then
	LXSESSION=$1
else
# default session
	LXSESSION=/usr/bin/startlxde
fi

[ -f /etc/profile ] && . /etc/profile
[ -f ~/.profile ] && . ~/.profile
[ -f /etc/xprofile ] && . /etc/xprofile
[ -f ~/.xprofile ] && . ~/.xprofile

if [ -f /etc/X11/xinit/xinitrc-common ]; then
# fedora
	. /etc/X11/xinit/xinitrc-common
	if ! [ -z "$XDG_SESSION_COOKIE" ]; then
		CK_XINIT_SESSION=
	elif [ -x /usr/bin/ck-launch-session -a -z "$CK_XINIT_SESSION" ]; then
		CK_XINIT_SESSION="/usr/bin/ck-launch-session"
	fi
	exec -l $SHELL -c "$CK_XINIT_SESSION \"$LXSESSION\""
elif [ -x /etc/X11/xinit/Xsession ]; then
# fedora
	exec /etc/X11/xinit/Xsession "$LXSESSION"
elif [ -x /etc/X11/Xsession ]; then
# mandriva, debian, ubuntu
	exec /etc/X11/Xsession "$LXSESSION"
elif [ -x /etc/X11/xinit/xinitrc ]; then
#suse
	export WINDOWMANAGER=$LXSESSION
	exec -l $SHELL -c /etc/X11/xinit/xinitrc
else
# unknown, user should custom /etc/lxdm/xinitrc self
	if [ -x /etc/lxdm/xinitrc ]; then
		. /etc/lxdm/xinitrc
	fi
	if ! [ -z "$XDG_SESSION_COOKIE" ]; then
		CK_XINIT_SESSION=
	elif [ -x /usr/bin/ck-launch-session ]; then
		CK_XINIT_SESSION="/usr/bin/ck-launch-session"
	fi
	exec -l $SHELL -c "$CK_XINIT_SESSION \"$LXSESSION\""
fi