4726a75de0714ec484bd39807e1c0105c18f6b80
[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 kderc_addtoprefixes ()
45 {
46         if [ -e "/root/etc/kderc" ]
47         then
48                 sed -i "s|\\(prefixes=/usr/share/kubuntu-default-settings/kde-profile/default/\\)|\\1,$1|" /root/etc/kderc
49         fi
50 }
51
52 case ${ACCESS} in
53         access=v1)
54                 # Lesser Visual Impairment
55                 gct -s -t string /desktop/gnome/interface/gtk_theme HighContrastLargePrint
56                 gct -s -t string /desktop/gnome/interface/icon_theme HighContrast
57                 gct -s -t string /desktop/gnome/interface/monospace_font_name "monospace 18"
58                 gct -s -t string /desktop/gnome/interface/font_name "sans 18"
59                 gct -s -t string /apps/metacity/general/theme Atlanta
60                 gct -s -t string /desktop/gnome/background/picture_filename ""
61                 gct -s -t string /desktop/gnome/background/picture_options none
62                 gct -s -t string /desktop/gnome/background/primary_color \#666666
63                 gct -s -t string /desktop/gnome/background/secondary_color \#7F7F7F
64                 gct -s -t string /desktop/gnome/background/color_shading_type solid
65                 gct -s -t int /desktop/gnome/peripherals/mouse/cursor_size 48
66                 gct -s -t string /desktop/gnome/peripherals/mouse/cursor_theme whiteglass
67
68                 kderc_addtoprefixes /usr/share/kubuntu-default-settings/kde-profile/lesser-visual-impairment/
69
70                 if [ -d /root/usr/share/xubuntu-default-settings/accessibility ]
71                 then
72                         cp -a /root/usr/share/xubuntu-default-settings/accessibility/* /root/etc/xdg/
73                 fi
74                 ;;
75
76         access=v2)
77                 # Moderate Visual Impairment
78                 gct -s -t bool /desktop/gnome/interface/accessibility true
79                 gct -s -t bool /desktop/gnome/applications/at/visual/startup true
80                 gct -s -t bool /apps/gksu/disable-grab true
81
82                 if [ -e /root/usr/share/pycentral/gnome-orca/site-packages/orca/settings.py ]
83                 then
84                         sed -i '/^enableSpeech\W/ s/True/False/;/^enableMagnifier/ s/False/True/' /root/usr/share/pycentral/gnome-orca/site-packages/orca/settings.py
85                 fi
86
87                 kderc_addtoprefixes /usr/share/kubuntu-default-settings/kde-profile/lesser-visual-impairment/,/usr/share/kubuntu-default-settings/kde-profile/moderate-visual-impairment/
88                 ;;
89
90         access=v3)
91                 # Blindness
92                 # Disabled for now, until we know eSpeak works.
93                 #gct -s -t bool /desktop/gnome/sound/enable_esd false
94                 gct -s -t bool /desktop/gnome/interface/accessibility true
95                 gct -s -t bool /desktop/gnome/applications/at/visual/startup true
96                 gct -s -t bool /apps/gksu/disable-grab true
97                 ;;
98
99         braille=ask)
100                 # Braille
101                 gct -s -t bool /desktop/gnome/interface/accessibility true
102                 gct -s -t bool /desktop/gnome/applications/at/visual/startup true
103                 gct -s -t bool /apps/gksu/disable-grab true
104
105                 if [ -e /root/usr/share/pycentral/gnome-orca/site-packages/orca/settings.py ]
106                 then
107                         sed -i '/^enableSpeech\W/ s/True/False/;/^enableBraille/ s/False/True/' /root/usr/share/pycentral/gnome-orca/site-packages/orca/settings.py
108                 fi
109                 ;;
110
111         access=m1)
112                 # Minor Motor Difficulties
113                 gct -s -t bool /desktop/gnome/accessibility/keyboard/enable true
114                 gct -s -t bool /desktop/gnome/accessibility/keyboard/mousekeys_enable true
115                 gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_enable true
116                 gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_modifier_beep true
117                 gct -s -t bool /desktop/accessibility/gnome/keyboard/stickykeys_two_key_off false
118                 gct -s -t bool /desktop/gnome/peripherals/keyboard/repeat true
119                 gct -s -t int /desktop/gnome/peripherals/keyboard/delay 700
120                 gct -s -t int /desktop/gnome/peripherals/keyboard/rate 10
121                 gct -s -t bool /apps/gksu/disable-grab true
122
123                 kderc_addtoprefixes /usr/share/kubuntu-default-settings/kde-profile/minor-motor-difficulties/
124
125                 if [ -e /root/etc/xdg/xfce4/mcs_settings/keyboard.xml ]
126                 then
127                         sed -i 's/0/1/' /root/etc/xdg/xfce4/mcs_settings/keyboard.xml
128                 fi
129                 ;;
130
131         access=m2)
132                 # Motor Difficulties - pointing devices
133                 gct -s -t bool /desktop/gnome/accessibility/keyboard/enable true
134                 gct -s -t bool /desktop/gnome/interface/accessibility true
135                 gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_enable true
136                 gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_modifier_beep false
137                 gct -s -t bool /desktop/accessibility/gnome/keyboard/stickykeys_two_key_off false
138                 gct -s -t list --list-type=string /desktop/gnome/accessibility/startup/exec_ats [onboard]
139
140                 kderc_addtoprefixes /usr/share/kubuntu-default-settings/kde-profile/minor-motor-difficulties/,/usr/share/kubuntu-default-settings/kde-profile/motor-difficulties-pointing-devices/
141
142                 if [ -e /root/etc/xdg/xfce4/mcs_settings/keyboard.xml ]
143                 then
144                         sed -i '/Sticky/ s/0/1/' /root/etc/xdg/xfce4/mcs_settings/keyboard.xml
145                 fi
146                 ;;
147 esac
148
149 log_end_msg