5 # initramfs-tools header
21 # live-initramfs header
23 if [ -n "${NOACCESSIBILITY}" ]
28 . /scripts/live-functions
30 if [ -z "${USERNAME}" ]
32 echo "No default user for accessibility options."
36 log_begin_msg "Configuring accessibility options"
38 # live-initramfs script
40 gconf_version=$(chroot /root /usr/bin/dpkg-query -W --showformat='${Version}' gconf2 2>/dev/null) || gconf_version=""
44 if [ "${gconf_version}" ]
46 chroot /root sudo -u "${USERNAME}" gconftool-2 "${@}"
52 # Code to remove an applet from the default panel setup
53 # This is rather hacky, but I can't think of a one or two line regular
54 # expression to do this any more efficiently. Patches welcome. In
55 # addition, setting these via gconf also doesn't work for some reason.
57 local line_no prior_line next_line
59 line_no="$(grep -n "<string>$1</string>" /root/usr/share/gconf/defaults/05_panel-default-setup.entries | cut -f 1 -d :)"
60 prior_line="$((line_no-1))"
61 next_line="$((line_no+1))"
63 sed -i -n "${prior_line},${next_line}!p" /root/usr/share/gconf/defaults/05_panel-default-setup.entries
65 chroot /root update-gconf-defaults
70 # Lesser Visual Impairment
71 gct -s -t string /desktop/gnome/interface/gtk_theme HighContrastLargePrint
72 gct -s -t string /desktop/gnome/interface/icon_theme HighContrast
73 gct -s -t string /desktop/gnome/interface/monospace_font_name "monospace 18"
74 gct -s -t string /desktop/gnome/interface/font_name "sans 18"
75 gct -s -t string /apps/metacity/general/theme Atlanta
76 gct -s -t string /desktop/gnome/background/picture_filename ""
77 gct -s -t string /desktop/gnome/background/picture_options none
78 gct -s -t string /desktop/gnome/background/primary_color \#666666
79 gct -s -t string /desktop/gnome/background/secondary_color \#7F7F7F
80 gct -s -t string /desktop/gnome/background/color_shading_type solid
81 gct -s -t int /desktop/gnome/peripherals/mouse/cursor_size 48
82 gct -s -t string /desktop/gnome/peripherals/mouse/cursor_theme whiteglass
86 # Moderate Visual Impairment
87 gct -s -t bool /desktop/gnome/interface/accessibility true
88 gct -s -t bool /desktop/gnome/applications/at/visual/startup true
89 gct -s -t string /desktop/gnome/applications/at/visual/exec orca
90 gct -s -t bool /apps/gksu/disable-grab true
91 gct -s -t string /desktop/gnome/applications/window_manager/default /usr/bin/metacity
92 sed -i -e 's/# Host alias specification/Defaults\tenv_keep = "ORBIT_SOCKETDIR XDG_SESSION_COOKIE GTK_MODULES"\n\n# Host alias specification/g' /root/etc/sudoers
94 if [ -x /root/usr/bin/orca ]
96 mkdir -p /root/home/${USERNAME}/.orca
97 echo "import orca.settings" >> /root/home/${USERNAME}/.orca/user-settings.py
98 echo "orca.settings.enableSpeech = False" >> /root/home/${USERNAME}/.orca/user-settings.py
99 echo "orca.settings.enableMagnifier = True" >> /root/home/${USERNAME}/.orca/user-settings.py
100 chroot /root chown -R ${USERNAME}:${USERNAME} /home/${USERNAME}/.orca
106 # Disabled for now, until we know eSpeak works.
107 #gct -s -t bool /desktop/gnome/sound/enable_esd false
108 gct -s -t bool /desktop/gnome/interface/accessibility true
109 gct -s -t bool /desktop/gnome/applications/at/visual/startup true
110 gct -s -t string /desktop/gnome/applications/at/visual/exec orca
111 gct -s -t bool /apps/gksu/disable-grab true
112 gct -s -t string /desktop/gnome/applications/window_manager/default /usr/bin/metacity
113 sed -i -e 's/# Host alias specification/Defaults\tenv_keep = "ORBIT_SOCKETDIR XDG_SESSION_COOKIE GTK_MODULES"\n\n# Host alias specification/g' /root/etc/sudoers
115 remove_applet fast_user_switch
116 if [ -x /root/usr/bin/pulse-session ]
118 touch /root/home/$USERNAME/.pulse_a11y_nostart
119 chroot /root chown $USERNAME.$USERNAME /home/$USERNAME/.pulse_a11y_nostart
120 mkdir -p /root/home/$USERNAME/.pulse
121 echo "autospawn = no" > /root/home/$USERNAME/.pulse/client.conf
122 chroot /root chown -R $USERNAME.$USERNAME /home/$USERNAME/.pulse
124 if [ -x /root/usr/bin/orca ]
126 mkdir -p /root/home/$USERNAME/.orca
127 chroot /root chown -R $USERNAME.$USERNAME /home/$USERNAME/.orca
133 gct -s -t bool /desktop/gnome/interface/accessibility true
134 gct -s -t bool /desktop/gnome/applications/at/visual/startup true
135 gct -s -t string /desktop/gnome/applications/at/visual/exec orca
136 gct -s -t bool /apps/gksu/disable-grab true
137 gct -s -t string /desktop/gnome/applications/window_manager/default /usr/bin/metacity
138 sed -i -e 's/# Host alias specification/Defaults\tenv_keep = "ORBIT_SOCKETDIR XDG_SESSION_COOKIE GTK_MODULES"\n\n# Host alias specification/g' /root/etc/sudoers
140 if [ -x /root/usr/bin/orca ]
142 mkdir -p /root/home/${USERNAME}/.orca
143 echo "import orca.settings" >> /root/home/${USERNAME}/.orca/user-settings.py
144 echo "orca.settings.enableSpeech = False" >> /root/home/${USERNAME}/.orca/user-settings.py
145 echo "orca.settings.enableBraille = True" >> /root/home/${USERNAME}/.orca/user-settings.py
147 chroot /root chown -R ${USERNAME}:${USERNAME} /home/${USERNAME}/.orca
150 if [ -x /root/usr/bin/pulse-session ]
152 touch /root/home/$USERNAME/.pulse_a11y_nostart
153 chroot /root chown $USERNAME.$USERNAME /home/$USERNAME/.pulse_a11y_nostart
154 mkdir -p /root/home/$USERNAME/.pulse
155 echo "autospawn = no" > /root/home/$USERNAME/.pulse/client.conf
156 chroot /root chown -R $USERNAME.$USERNAME /home/$USERNAME/.pulse
159 remove_applet fast_user_switch
163 # Minor Motor Difficulties
164 gct -s -t bool /desktop/gnome/accessibility/keyboard/enable true
165 gct -s -t bool /desktop/gnome/accessibility/keyboard/mousekeys_enable true
166 gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_enable true
167 gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_modifier_beep true
168 gct -s -t bool /desktop/accessibility/gnome/keyboard/stickykeys_two_key_off false
169 gct -s -t bool /desktop/gnome/peripherals/keyboard/repeat true
170 gct -s -t int /desktop/gnome/peripherals/keyboard/delay 700
171 gct -s -t int /desktop/gnome/peripherals/keyboard/rate 10
172 gct -s -t bool /apps/gksu/disable-grab true
174 if [ -e /root/etc/xdg/xfce4/mcs_settings/keyboard.xml ]
176 sed -i 's/0/1/' /root/etc/xdg/xfce4/mcs_settings/keyboard.xml
181 # Motor Difficulties - pointing devices
182 gct -s -t bool /desktop/gnome/accessibility/keyboard/enable true
183 gct -s -t bool /desktop/gnome/interface/accessibility true
184 gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_enable true
185 gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_modifier_beep false
186 gct -s -t bool /desktop/accessibility/gnome/keyboard/stickykeys_two_key_off false
187 gct -s -t list --list-type=string /desktop/gnome/accessibility/startup/exec_ats [onboard]
189 if [ -e /root/etc/xdg/xfce4/mcs_settings/keyboard.xml ]
191 sed -i '/Sticky/ s/0/1/' /root/etc/xdg/xfce4/mcs_settings/keyboard.xml