2 # Copyright (c) 1999, 2000 Red Hat, Inc.
4 # redirect errors to a file in user's home directory if we can
5 for errfile in "${TMPDIR-/tmp}/.xsession-$USER" \
6 "/tmp/.xsession-$USER" \
7 "$HOME/.xsession-errors"
9 if cp /dev/null "$errfile" 2> /dev/null ; then
11 exec > "$errfile" 2>&1
16 [ "`echo $PATH | grep -q /usr/X11R6/bin`" = "" ] && PATH="${PATH}:/usr/X11R6/bin"
17 [ "`echo $PATH | grep -q "$HOME/bin"`" = "" ] && PATH="$PATH:$HOME/bin"
19 userresources=$HOME/.Xresources
20 usermodmap=$HOME/.Xmodmap
21 userxkbmap=$HOME/.Xkbmap
23 sysresources=/etc/X11/Xresources
24 sysmodmap=/etc/X11/Xmodmap
25 sysxkbmap=/etc/X11/Xkbmap
28 [ -f "$sysresources" ] && xrdb -merge "$sysresources"
29 [ -f "$userresources" ] && xrdb -merge "$userresources"
32 if [ -f "$sysxkbmap" ]; then
33 setxkbmap `cat "$sysxkbmap"`
37 if [ -f "$userxkbmap" ]; then
38 setxkbmap `cat "$userxkbmap"`
42 if [ -z "$XKB_IN_USE" -a ! -L /etc/X11/X ]; then
43 if grep '^exec.*/Xsun' /etc/X11/X > /dev/null 2>&1 \
44 && [ -f /etc/X11/XF86Config ]; then
45 xkbsymbols=`sed -n -e 's/^[ ]*XkbSymbols[ ]*"\(.*\)".*$/\1/p' /etc/X11/XF86Config`
46 if [ -n "$xkbsymbols" ]; then
47 setxkbmap -symbols "$xkbsymbols"
53 # xkb and xmodmap don't play nice together
54 if [ -z "$XKB_IN_USE" ]; then
55 [ -f "$sysmodmap" ] && xmodmap "$sysmodmap"
56 [ -f "$usermodmap" ] && xmodmap "$usermodmap"
61 # run all system xinitrc shell scripts.
62 for i in /etc/X11/xinit/xinitrc.d/* ; do
68 # now, we see if xdm/gdm/kdm has asked for a specific environment
72 exec xterm -geometry 80x24-0-0
78 # exec /usr/share/apps/switchdesk/Xclients.kde
81 # exec /usr/share/apps/switchdesk/Xclients.kde2
86 # otherwise, take default action
87 if [ -f "$HOME/.xsession" ]; then
88 exec "$HOME/.xsession"
89 elif [ -f "$HOME/.Xclients" ]; then
90 exec "$HOME/.Xclients"
92 exec /etc/X11/xinit/Xclients