]> git.pld-linux.org Git - packages/entrance.git/blob - entrance.Xsession
- pl for themes, strict internal deps
[packages/entrance.git] / entrance.Xsession
1 #!/bin/sh
2 # Copyright (c) 1999, 2000 Red Hat, Inc.
3
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"
8 do
9         if cp /dev/null "$errfile" 2> /dev/null ; then
10                 chmod 600 "$errfile"
11                 exec > "$errfile" 2>&1
12                 break
13         fi
14 done
15
16 [ "`echo $PATH | grep -q /usr/X11R6/bin`" = "" ] && PATH="${PATH}:/usr/X11R6/bin"
17 [ "`echo $PATH | grep -q "$HOME/bin"`" = "" ] && PATH="$PATH:$HOME/bin"
18
19 userresources=$HOME/.Xresources
20 usermodmap=$HOME/.Xmodmap
21 userxkbmap=$HOME/.Xkbmap
22
23 sysresources=/etc/X11/Xresources
24 sysmodmap=/etc/X11/Xmodmap
25 sysxkbmap=/etc/X11/Xkbmap
26
27 # merge in defaults
28 [ -f "$sysresources" ] && xrdb -merge "$sysresources"
29 [ -f "$userresources" ] && xrdb -merge "$userresources"
30
31 # merge in keymaps
32 if [ -f "$sysxkbmap" ]; then
33     setxkbmap `cat "$sysxkbmap"`
34     XKB_IN_USE=yes
35 fi
36
37 if [ -f "$userxkbmap" ]; then
38     setxkbmap `cat "$userxkbmap"`
39     XKB_IN_USE=yes
40 fi
41
42 # xkb and xmodmap don't play nice together
43 if [ -z "$XKB_IN_USE" ]; then
44         [ -f "$sysmodmap" ] && xmodmap "$sysmodmap"
45         [ -f "$usermodmap" ] && xmodmap "$usermodmap"
46 fi
47
48 unset XKB_IN_USE
49
50 # run all system xinitrc shell scripts.
51 for i in /etc/X11/xinit/xinitrc.d/* ; do
52     if [ -x "$i" ]; then
53        . "$i"
54     fi
55 done
56
57 # now, we see if xdm/gdm/kdm has asked for a specific environment
58 case $# in
59     1) case $1 in
60         failsafe)
61                 exec xterm -geometry 80x24+0+0
62                 ;;
63         gnome)
64                 exec gnome-session
65                 ;;
66     esac
67 esac
68
69 # otherwise, take default action
70 if [ -f "$HOME/.xsession" ]; then
71         exec "$HOME/.xsession"
72 elif [ -f "$HOME/.Xclients" ]; then
73         exec "$HOME/.Xclients"
74 else
75         exec /etc/X11/xinit/Xclients
76 fi
This page took 0.070841 seconds and 3 git commands to generate.