Subversion Repositories configs

Rev

Rev 192 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
192 - 1
#!/bin/sh
2
# Stolen from the debian kdm setup, aren't I sneaky
3
# Plus a lot of fun stuff added
4
#  -George
5
 
6
PATH="/usr/bin:$PATH"
7
OLD_IFS=$IFS
8
 
9
gdmwhich () {
10
  COMMAND="$1"
11
  OUTPUT=
12
  IFS=:
13
  for dir in $PATH
14
  do
15
    if test -x "$dir/$COMMAND" ; then
16
      if test "x$OUTPUT" = "x" ; then
17
        OUTPUT="$dir/$COMMAND"
18
      fi
19
    fi
20
  done
21
  IFS=$OLD_IFS
22
  echo "$OUTPUT"
23
}
24
 
203 - 25
if [ -f /etc/X11/Xresources ]; then
26
    sysresources=/etc/X11/Xresources
27
else
28
    sysresources=/usr/etc/X11/Xresources
29
fi
192 - 30
 
31
# merge in defaults
32
if [ -f "$sysresources" ]; then
203 - 33
    xrdb -nocpp -merge "$sysresources"
192 - 34
fi
35
 
203 - 36
if [ -f /etc/X11/Xmodmap ]; then
37
    sysmodmap=/etc/X11/Xmodmap
38
else
39
    sysmodmap=/usr/etc/X11/Xmodmap
40
fi
192 - 41
 
42
XMODMAP=`gdmwhich xmodmap`
43
if [ "x$XMODMAP" != "x" ] ; then
44
  if [ "x$GDM_PARENT_DISPLAY" = "x" ]; then
45
    if [ -f $sysmodmap ]; then
46
      $XMODMAP $sysmodmap
47
    fi
48
  else
49
    ( DISPLAY=$GDM_PARENT_DISPLAY XAUTHORITY=$GDM_PARENT_XAUTHORITY $XMODMAP -pke ) | $XMODMAP -
50
  fi
51
 
52
  #
53
  # Switch Sun's Alt and Meta mod mappings
54
  #
55
 
56
  UNAME=`gdmwhich uname`
57
  PROCESSOR=`$UNAME -p`
58
  if [ "x$PROCESSOR" = "xsparc" ]; then
59
    if $XMODMAP | grep mod4 | grep Alt > /dev/null 2>/dev/null
60
    then
61
      $XMODMAP -e "clear Mod1" \
62
               -e "clear Mod4" \
63
               -e "add Mod1 = Alt_L" \
64
               -e "add Mod1 = Alt_R" \
65
               -e "add Mod4 = Meta_L" \
66
               -e "add Mod4 = Meta_R"
67
    fi
68
  fi
69
fi
70
 
71
SETXKBMAP=`gdmwhich setxkbmap`
72
if [ "x$SETXKBMAP" != "x" ] ; then
73
  # FIXME: is this all right?  Is this completely on crack?
74
  # What this does is move the xkb configuration from the GDM_PARENT_DISPLAY
75
  # FIXME: This should be done in code.  Or there must be an easier way ...
76
  if [ -n "$GDM_PARENT_DISPLAY" ]; then
77
    XKBSETUP=`( DISPLAY=$GDM_PARENT_DISPLAY XAUTHORITY=$GDM_PARENT_XAUTHORITY $SETXKBMAP -v )`
78
    if [ -n "$XKBSETUP" ]; then
79
      XKBKEYMAP=`echo "$XKBSETUP" | grep '^keymap' | awk '{ print $2 }'`
80
      XKBTYPES=`echo "$XKBSETUP" | grep '^types' | awk '{ print $2 }'`
81
      XKBCOMPAT=`echo "$XKBSETUP" | grep '^compat' | awk '{ print $2 }'`
82
      XKBSYMBOLS=`echo "$XKBSETUP" | grep '^symbols' | awk '{ print $2 }'`
83
      XKBGEOMETRY=`echo "$XKBSETUP" | grep '^geometry' | awk '{ print $2 }'`
84
      if [ -n "$XKBKEYMAP" ]; then
85
        $SETXKBMAP -keymap "$XKBKEYMAP"
86
      elif [ -n "$XKBTYPES" -a -n "$XKBCOMPAT" -a -n "$XKBSYMBOLS" -a -n "$XKBGEOMETRY" ]; then
87
        $SETXKBMAP -types "$XKBTYPES" -compat "$XKBCOMPAT" -symbols "$XKBSYMBOLS" -geometry "$XKBGEOMETRY"
88
      elif [ -n "$XKBTYPES" -a -n "$XKBCOMPAT" -a -n "$XKBSYMBOLS" ]; then
89
        $SETXKBMAP -types "$XKBTYPES" -compat "$XKBCOMPAT" -symbols "$XKBSYMBOLS"
90
      elif [ -n "$XKBSYMBOLS" ]; then
91
        $SETXKBMAP -symbols "$XKBSYMBOLS"
92
      fi
93
    fi
94
  fi
95
fi
96
 
97
exit 0