Adding casper 1.81+debian-4.
[live-boot-grml.git] / ubiquity-hooks / 30accessibility
index ab1c2e9..51f85e0 100755 (executable)
@@ -4,10 +4,17 @@
 
 PREREQ=""
 DESCRIPTION="Configuring accessibility options..."
-USERNAME=$(db_get passwd/username)
+db_get passwd/username
+USERNAME="$RET"
 
 gct() {
-    chroot /target su $USERNAME -- gconftool-2 "$@"
+    chroot /target sudo -u "$USERNAME" gconftool-2 "$@"
+}
+
+kderc_addtoprefixes() {
+    if [ -e "/target/etc/kderc" ]; then
+        sed -i "s|\\(prefixes=/usr/share/kubuntu-default-settings/kde-profile/default/\\)|\\1,$1|" /target/etc/kderc
+    fi
 }
 
 for x in $(cat /proc/cmdline); do
@@ -21,26 +28,40 @@ for x in $(cat /proc/cmdline); do
                         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/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 /target/usr/share/xubuntu-default-settings/accessibility ]; then
+                            cp -a /target/usr/share/xubuntu-default-settings/accessibility/* /target/etc/xdg/
+                        fi
                         ;;
                         # 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
+                        gct -s -t list --list-type=string /desktop/gnome/accessibility/startup/exec_ats [orca]
+
+                        if [ -d /usr/share/xubuntu-default-settings ]; then
+                          apt-install gnome-orca gnome-mag
+                        fi
+
+                        if [ -e /target/usr/share/python-support/gnome-orca/orca/settings.py ]; then
+                            sed -i '/^enableSpeech\W/ s/True/False/;/^enableMagnifier/ s/False/True/' /target/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
                         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
+                        gct -s -t list --list-type=string /desktop/gnome/accessibility/startup/exec_ats [orca]
+
+                        if [ -d /usr/share/xubuntu-default-settings ]; then
+                          apt-install gnome-orca
+                        fi
                         ;;
                         # Minor Motor Difficulties
                         access=m1)
@@ -52,15 +73,23 @@ for x in $(cat /proc/cmdline); do
                         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 /target/etc/xdg/xfce4/mcs_settings/keyboard.xml ]; then
+                            sed -i 's/0/1/' /target/etc/xdg/xfce4/mcs_settings/keyboard.xml
+                        fi
                         ;;
                         # Motor Difficulties - pointing devices
                         access=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 bool /desktop/gnome/interface/accessibility true
-                        gct -s -t list --list-type=string /desktop/gnome/accessibility/startup/exec_ats gok
+                        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 /target/etc/xdg/xfce4/mcs_settings/keyboard.xml ]; then
+                            sed -i '/Sticky/ s/0/1/' /target/etc/xdg/xfce4/mcs_settings/keyboard.xml
+                        fi
                         ;;
                esac
 done