X-Git-Url: http://git.grml.org/?a=blobdiff_plain;f=scripts%2Flive-bottom%2F30accessibility;h=75bfae497ec88cb5f43f69446ca0a80d804e8d41;hb=c967ebfc4e43fb16a0c2c140c66900712be95ab7;hp=17defbf3ee8f48e8d4c8b271e91bf31cbb18d91d;hpb=fdd8036ba32ad88e83a61191cc4597ae060355d2;p=live-boot-grml.git diff --git a/scripts/live-bottom/30accessibility b/scripts/live-bottom/30accessibility index 17defbf..75bfae4 100755 --- a/scripts/live-bottom/30accessibility +++ b/scripts/live-bottom/30accessibility @@ -27,7 +27,13 @@ fi . /scripts/live-functions -log_begin_msg "Configuring accessibility options..." +if [ -z "${USERNAME}" ] +then + echo "No default user for accessibility options." + exit 0 +fi + +log_begin_msg "Configuring accessibility options" # live-initramfs script @@ -35,18 +41,29 @@ gconf_version=$(chroot /root /usr/bin/dpkg-query -W --showformat='${Version}' gc gct () { - if [ "$gconf_version" ] + if [ "${gconf_version}" ] then - chroot /root sudo -u "$USERNAME" gconftool-2 "$@" + chroot /root sudo -u "${USERNAME}" gconftool-2 "${@}" fi } -kderc_addtoprefixes () +remove_applet () { - if [ -e "/root/etc/kderc" ] - then - sed -i "s|\\(prefixes=/usr/share/kubuntu-default-settings/kde-profile/default/\\)|\\1,$1|" /root/etc/kderc - fi + # Code to remove an applet from the default panel setup + # This is rather hacky, but I can't think of a one or two line regular + # expression to do this any more efficiently. Patches welcome. In + # addition, setting these via gconf also doesn't work for some reason. + + local line_no prior_line next_line + + line_no="$(grep -n "$1" /root/usr/share/gconf/defaults/05_panel-default-setup.entries | cut -f 1 -d :)" + [ "$line_no" ] || return + prior_line="$((line_no-1))" + next_line="$((line_no+1))" + + sed -i -n "${prior_line},${next_line}!p" /root/usr/share/gconf/defaults/05_panel-default-setup.entries + + chroot /root update-gconf-defaults } case ${ACCESS} in @@ -64,27 +81,25 @@ case ${ACCESS} in gct -s -t string /desktop/gnome/background/color_shading_type solid gct -s -t int /desktop/gnome/peripherals/mouse/cursor_size 48 gct -s -t string /desktop/gnome/peripherals/mouse/cursor_theme whiteglass - - kderc_addtoprefixes /usr/share/kubuntu-default-settings/kde-profile/lesser-visual-impairment/ - - if [ -d /root/usr/share/xubuntu-default-settings/accessibility ] - then - cp -a /root/usr/share/xubuntu-default-settings/accessibility/* /root/etc/xdg/ - fi ;; access=v2) # Moderate Visual Impairment gct -s -t bool /desktop/gnome/interface/accessibility true gct -s -t bool /desktop/gnome/applications/at/visual/startup true + gct -s -t string /desktop/gnome/applications/at/visual/exec orca gct -s -t bool /apps/gksu/disable-grab true + gct -s -t string /desktop/gnome/applications/window_manager/default /usr/bin/metacity + 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 - if [ -e /root/usr/share/pycentral/gnome-orca/site-packages/orca/settings.py ] + if [ -x /root/usr/bin/orca ] then - sed -i '/^enableSpeech\W/ s/True/False/;/^enableMagnifier/ s/False/True/' /root/usr/share/pycentral/gnome-orca/site-packages/orca/settings.py + mkdir -p /root/home/${USERNAME}/.orca + echo "import orca.settings" >> /root/home/${USERNAME}/.orca/user-settings.py + echo "orca.settings.enableSpeech = False" >> /root/home/${USERNAME}/.orca/user-settings.py + echo "orca.settings.enableMagnifier = True" >> /root/home/${USERNAME}/.orca/user-settings.py + chroot /root chown -R ${USERNAME}:${USERNAME} /home/${USERNAME}/.orca fi - - kderc_addtoprefixes /usr/share/kubuntu-default-settings/kde-profile/lesser-visual-impairment/,/usr/share/kubuntu-default-settings/kde-profile/moderate-visual-impairment/ ;; access=v3) @@ -93,19 +108,41 @@ case ${ACCESS} in #gct -s -t bool /desktop/gnome/sound/enable_esd false gct -s -t bool /desktop/gnome/interface/accessibility true gct -s -t bool /desktop/gnome/applications/at/visual/startup true + gct -s -t string /desktop/gnome/applications/at/visual/exec orca + gct -s -t string /apps/empathy/conversation/theme classic gct -s -t bool /apps/gksu/disable-grab true + gct -s -t string /desktop/gnome/applications/window_manager/default /usr/bin/metacity + 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 + + remove_applet fast_user_switch + if [ -x /root/usr/bin/orca ] + then + mkdir -p /root/home/$USERNAME/.orca + chroot /root chown -R $USERNAME.$USERNAME /home/$USERNAME/.orca + fi ;; braille=ask) # Braille gct -s -t bool /desktop/gnome/interface/accessibility true gct -s -t bool /desktop/gnome/applications/at/visual/startup true + gct -s -t string /desktop/gnome/applications/at/visual/exec orca gct -s -t bool /apps/gksu/disable-grab true + gct -s -t string /desktop/gnome/applications/window_manager/default /usr/bin/metacity + gct -s -t string /apps/empathy/conversation/theme classic + 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 - if [ -e /root/usr/share/pycentral/gnome-orca/site-packages/orca/settings.py ] + if [ -x /root/usr/bin/orca ] then - sed -i '/^enableSpeech\W/ s/True/False/;/^enableBraille/ s/False/True/' /root/usr/share/pycentral/gnome-orca/site-packages/orca/settings.py + mkdir -p /root/home/${USERNAME}/.orca + echo "import orca.settings" >> /root/home/${USERNAME}/.orca/user-settings.py + echo "orca.settings.enableSpeech = False" >> /root/home/${USERNAME}/.orca/user-settings.py + echo "orca.settings.enableBraille = True" >> /root/home/${USERNAME}/.orca/user-settings.py + laptop_detect + chroot /root chown -R ${USERNAME}:${USERNAME} /home/${USERNAME}/.orca fi + + remove_applet fast_user_switch ;; access=m1) @@ -120,8 +157,6 @@ case ${ACCESS} in gct -s -t int /desktop/gnome/peripherals/keyboard/rate 10 gct -s -t bool /apps/gksu/disable-grab true - kderc_addtoprefixes /usr/share/kubuntu-default-settings/kde-profile/minor-motor-difficulties/ - if [ -e /root/etc/xdg/xfce4/mcs_settings/keyboard.xml ] then sed -i 's/0/1/' /root/etc/xdg/xfce4/mcs_settings/keyboard.xml @@ -137,8 +172,6 @@ case ${ACCESS} in gct -s -t bool /desktop/accessibility/gnome/keyboard/stickykeys_two_key_off false gct -s -t list --list-type=string /desktop/gnome/accessibility/startup/exec_ats [onboard] - kderc_addtoprefixes /usr/share/kubuntu-default-settings/kde-profile/minor-motor-difficulties/,/usr/share/kubuntu-default-settings/kde-profile/motor-difficulties-pointing-devices/ - if [ -e /root/etc/xdg/xfce4/mcs_settings/keyboard.xml ] then sed -i '/Sticky/ s/0/1/' /root/etc/xdg/xfce4/mcs_settings/keyboard.xml