Merging casper 1.116.
[live-boot-grml.git] / scripts / live-bottom / 30accessibility
1 #!/bin/sh
2
3 #set -e
4
5 # initramfs-tools header
6
7 PREREQ=""
8
9 prereqs()
10 {
11         echo "${PREREQ}"
12 }
13
14 case "${1}" in
15         prereqs)
16                 prereqs
17                 exit 0
18                 ;;
19 esac
20
21 # live-initramfs header
22
23 if [ -n "${NOACCESSIBILITY}" ]
24 then
25         exit 0
26 fi
27
28 . /scripts/live-functions
29
30 log_begin_msg "Configuring accessibility options..."
31
32 # live-initramfs script
33
34 gconf_version=$(chroot /root /usr/bin/dpkg-query -W --showformat='${Version}' gconf2 2>/dev/null) || gconf_version=""
35
36 gct ()
37 {
38         if [ "${gconf_version}" ]
39         then
40                 chroot /root sudo -u "${USERNAME}" gconftool-2 "${@}"
41         fi
42 }
43
44 case ${ACCESS} in
45         access=v1)
46                 # Lesser Visual Impairment
47                 gct -s -t string /desktop/gnome/interface/gtk_theme HighContrastLargePrint
48                 gct -s -t string /desktop/gnome/interface/icon_theme HighContrast
49                 gct -s -t string /desktop/gnome/interface/monospace_font_name "monospace 18"
50                 gct -s -t string /desktop/gnome/interface/font_name "sans 18"
51                 gct -s -t string /apps/metacity/general/theme Atlanta
52                 gct -s -t string /desktop/gnome/background/picture_filename ""
53                 gct -s -t string /desktop/gnome/background/picture_options none
54                 gct -s -t string /desktop/gnome/background/primary_color \#666666
55                 gct -s -t string /desktop/gnome/background/secondary_color \#7F7F7F
56                 gct -s -t string /desktop/gnome/background/color_shading_type solid
57                 gct -s -t int /desktop/gnome/peripherals/mouse/cursor_size 48
58                 gct -s -t string /desktop/gnome/peripherals/mouse/cursor_theme whiteglass
59                 ;;
60
61         access=v2)
62                 # Moderate Visual Impairment
63                 gct -s -t bool /desktop/gnome/interface/accessibility true
64                 gct -s -t bool /desktop/gnome/applications/at/visual/startup true
65                 gct -s -t bool /apps/gksu/disable-grab true
66
67                 if type orca > /dev/null 2>&1
68                 then
69                         mkdir -p /root/home/${USERNAME}/.orca
70                         echo "orca.settings.enableSpeech = True" >> /root/home/${USERNAME}/.orca/orca-customizations.py
71                         echo "orca.settings.enableMagnifier = True" >> /root/home/${USERNAME}/.orca/orca-customizations.py
72                 fi
73                 ;;
74
75         access=v3)
76                 # Blindness
77                 # Disabled for now, until we know eSpeak works.
78                 #gct -s -t bool /desktop/gnome/sound/enable_esd false
79                 gct -s -t bool /desktop/gnome/interface/accessibility true
80                 gct -s -t bool /desktop/gnome/applications/at/visual/startup true
81                 gct -s -t bool /apps/gksu/disable-grab true
82                 ;;
83
84         braille=ask)
85                 # Braille
86                 gct -s -t bool /desktop/gnome/interface/accessibility true
87                 gct -s -t bool /desktop/gnome/applications/at/visual/startup true
88                 gct -s -t bool /apps/gksu/disable-grab true
89
90                 if type orca > /dev/null 2>&1
91                 then
92                         mkdir -p /root/home/${USERNAME}/.orca
93                         echo "orca.settings.enableSpeech = True" >> /root/home/${USERNAME}/.orca/orca-customizations.py
94                         echo "orca.settings.enableBraille = True" >> /root/home/${USERNAME}/.orca/orca-customizations.py
95                 fi
96                 ;;
97
98         access=m1)
99                 # Minor Motor Difficulties
100                 gct -s -t bool /desktop/gnome/accessibility/keyboard/enable true
101                 gct -s -t bool /desktop/gnome/accessibility/keyboard/mousekeys_enable true
102                 gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_enable true
103                 gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_modifier_beep true
104                 gct -s -t bool /desktop/accessibility/gnome/keyboard/stickykeys_two_key_off false
105                 gct -s -t bool /desktop/gnome/peripherals/keyboard/repeat true
106                 gct -s -t int /desktop/gnome/peripherals/keyboard/delay 700
107                 gct -s -t int /desktop/gnome/peripherals/keyboard/rate 10
108                 gct -s -t bool /apps/gksu/disable-grab true
109
110                 if [ -e /root/etc/xdg/xfce4/mcs_settings/keyboard.xml ]
111                 then
112                         sed -i 's/0/1/' /root/etc/xdg/xfce4/mcs_settings/keyboard.xml
113                 fi
114                 ;;
115
116         access=m2)
117                 # Motor Difficulties - pointing devices
118                 gct -s -t bool /desktop/gnome/accessibility/keyboard/enable true
119                 gct -s -t bool /desktop/gnome/interface/accessibility true
120                 gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_enable true
121                 gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_modifier_beep false
122                 gct -s -t bool /desktop/accessibility/gnome/keyboard/stickykeys_two_key_off false
123                 gct -s -t list --list-type=string /desktop/gnome/accessibility/startup/exec_ats [onboard]
124
125                 if [ -e /root/etc/xdg/xfce4/mcs_settings/keyboard.xml ]
126                 then
127                         sed -i '/Sticky/ s/0/1/' /root/etc/xdg/xfce4/mcs_settings/keyboard.xml
128                 fi
129                 ;;
130 esac
131
132 log_end_msg