Adding casper 1.79+debian-1.
[live-boot-grml.git] / scripts / casper-bottom / 30accessibility
index 8352fb6..8b6f875 100755 (executable)
@@ -3,7 +3,7 @@
 PREREQ=""
 DESCRIPTION="Configuring accessibility options..."
 
-. /scripts/functions
+. /scripts/casper-functions
 
 prereqs()
 {
@@ -20,62 +20,91 @@ esac
 
 log_begin_msg "$DESCRIPTION"
 
+gconf_version=$(chroot /root /usr/bin/dpkg-query -W --showformat='${Version}' gconf2 2>/dev/null) || gconf_version=""
+
 gct() {
-    chroot /root sudo -u "$USERNAME" gconftool-2 "$@"
+    if [ "$gconf_version" ]; then
+        chroot /root sudo -u "$USERNAME" gconftool-2 "$@"
+    fi
+}
+
+kderc_addtoprefixes() {
+    if [ -e "/root/etc/kderc" ]; then
+        sed -i "s|\\(prefixes=/usr/share/kubuntu-default-settings/kde-profile/default/\\)|\\1,$1|" /root/etc/kderc
+    fi
 }
 
-for x in $(cat /proc/cmdline); do
-                case $x in
-                        # Lesser Visual Impairment
-                        access=v1)
-                        gct -s -t string /desktop/gnome/interface/gtk_theme HighContrastLargePrint
-                        gct -s -t string /desktop/gnome/interface/icon_theme HighContrast
-                        gct -s -t string /desktop/gnome/interface/monospace_font_name "monospace 18"
-                        gct -s -t string /desktop/gnome/interface/font_name "sans 18"
-                        gct -s -t string /apps/metacity/general/theme Atlanta
-                        gct -s -t string /desktop/gnome/background/picture_filename ""
-                        gct -s -t string /desktop/gnome/background/picture_options none
-                        gct "-s -t string /desktop/gnome/background/primary_color \#666666"
-                        gct "-s -t string /desktop/gnome/background/secondary_color \#7F7F7F"
-                        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
-                        ;;
-                        # Moderate Visual Impairment
-                        access=v2)
-                        gct -s -t bool /desktop/gnome/interface/accessibility true
-                        gct -s -t list --list-type=string /desktop/gnome/accessibility/startup/exec_ats [gnopernicus]
-                        gct -s -t bool /apps/gnopernicus/srcore/mag_active true
-                        gct -s -t bool /apps/gnopernicus/srcore/sp_active false
-                        ;;
-                        # Blindness
-                        access=v3)
-                        gct -s -t bool /desktop/gnome/sound/enable_esd false
-                        gct -s -t bool /desktop/gnome/interface/accessibility true
-                        gct -s -t list --list-type=string /desktop/gnome/accessibility/startup/exec_ats [gnopernicus]
-                        gct -s -t bool /apps/gnopernicus/srcore/sp_active true
-                        gct -s -t bool /apps/gnopernicus/srcore/mag_active false
-                        ;;
-                        # Minor Motor Difficulties
-                        access=m1)
-                        gct -s -t bool /desktop/gnome/accessibility/keyboard/enable true
-                        gct -s -t bool /desktop/gnome/accessibility/keyboard/mousekeys_enable true
-                        gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_enable true
-                        gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_modifier_beep true
-                        gct -s -t bool /desktop/accessibility/gnome/keyboard/stickykeys_two_key_off false
-                        gct -s -t bool /desktop/gnome/peripherals/keyboard/repeat true
-                        gct -s -t int /desktop/gnome/peripherals/keyboard/delay 700
-                        gct -s -t int /desktop/gnome/peripherals/keyboard/rate 10
-                        ;;
-                        # Motor Difficulties - pointing devices
-                        access=m2)
-                        gct -s -t bool /desktop/gnome/accessibility/keyboard/enable true
-                        gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_enable true
-                        gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_modifier_beep false
-                        gct -s -t bool /desktop/accessibility/gnome/keyboard/stickykeys_two_key_off false
-                        gct -s -t bool /desktop/gnome/interface/accessibility true
-                        gct -s -t list --list-type=string /desktop/gnome/accessibility/startup/exec_ats gok
-                        ;;
-               esac
-done
+case ${ACCESS} in
+    # Lesser Visual Impairment
+    v1)
+        gct -s -t string /desktop/gnome/interface/gtk_theme HighContrastLargePrint
+        gct -s -t string /desktop/gnome/interface/icon_theme HighContrast
+        gct -s -t string /desktop/gnome/interface/monospace_font_name "monospace 18"
+        gct -s -t string /desktop/gnome/interface/font_name "sans 18"
+        gct -s -t string /apps/metacity/general/theme Atlanta
+        gct -s -t string /desktop/gnome/background/picture_filename ""
+        gct -s -t string /desktop/gnome/background/picture_options none
+        gct -s -t string /desktop/gnome/background/primary_color \#666666
+        gct -s -t string /desktop/gnome/background/secondary_color \#7F7F7F
+        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
+        ;;
+    # Moderate Visual Impairment
+    v2)
+        gct -s -t bool /desktop/gnome/interface/accessibility true
+        gct -s -t list --list-type=string /desktop/gnome/accessibility/startup/exec_ats [orca]
+        #gct -s -t bool /apps/gnopernicus/srcore/mag_active true
+        #gct -s -t bool /apps/gnopernicus/srcore/sp_active false
+        if [ -e /root/usr/share/python-support/gnome-orca/orca/settings.py ]; then
+            sed -i '/^enableSpeech\W/ s/True/False/;/^enableMagnifier/ s/False/True/' /root/usr/share/python-support/gnome-orca/orca/settings.py
+        fi
+        kderc_addtoprefixes /usr/share/kubuntu-default-settings/kde-profile/lesser-visual-impairment/,/usr/share/kubuntu-default-settings/kde-profile/moderate-visual-impairment/
+        ;;
+    # Blindness
+    v3)
+        gct -s -t bool /desktop/gnome/sound/enable_esd false
+        gct -s -t bool /desktop/gnome/interface/accessibility true
+        gct -s -t list --list-type=string /desktop/gnome/accessibility/startup/exec_ats [orca]
+        #gct -s -t bool /apps/gnopernicus/srcore/sp_active true
+        #gct -s -t bool /apps/gnopernicus/srcore/mag_active false
+        ;;
+        # Minor Motor Difficulties
+    m1)
+        gct -s -t bool /desktop/gnome/accessibility/keyboard/enable true
+        gct -s -t bool /desktop/gnome/accessibility/keyboard/mousekeys_enable true
+        gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_enable true
+        gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_modifier_beep true
+        gct -s -t bool /desktop/accessibility/gnome/keyboard/stickykeys_two_key_off false
+        gct -s -t bool /desktop/gnome/peripherals/keyboard/repeat true
+        gct -s -t int /desktop/gnome/peripherals/keyboard/delay 700
+        gct -s -t int /desktop/gnome/peripherals/keyboard/rate 10
+
+        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
+        fi
+
+        ;;
+    # Motor Difficulties - pointing devices
+    m2)
+        gct -s -t bool /desktop/gnome/accessibility/keyboard/enable true
+        gct -s -t bool /desktop/gnome/interface/accessibility true
+        gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_enable true
+        gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_modifier_beep false
+        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
+        fi
+        ;;
+esac
+
 log_end_msg