~cyphermox/ubuntu/maverick/casper/netmount_if_conf_in_initrd

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
#!/bin/sh
# If you change this, please also change the copy in ubiquity-hooks/30accessibility.

PREREQ=""
DESCRIPTION="Configuring accessibility options..."

prereqs()
{
       echo "$PREREQ"
}

case $1 in
# get pre-requisites
prereqs)
       prereqs
       exit 0
       ;;
esac

. /scripts/casper-functions

log_begin_msg "$DESCRIPTION"

gconf_version=$(chroot /root /usr/bin/dpkg-query -W --showformat='${Version}' gconf2 2>/dev/null) || gconf_version=""

gct() {
    if [ "$gconf_version" ]; then
        chroot /root sudo -u "$USERNAME" gconftool-2 "$@"
    fi
}

kderc_addtoprefixes() {
    if [ -e "/root/etc/kde4rc" ]; then
        sed -i "s|\\(prefixes=/usr/share/kubuntu-default-settings/kde-profile/default/\\)|\\1,$1|" /root/etc/kde4rc
    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.
remove_applet()
{
	local line_no prior_line next_line

	line_no=$(grep -n "<string>$1</string>" /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
}

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

                        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
                        access=v2)
                        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
			if [ -x /root/usr/bin/orca ]; then
				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
                        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
                        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/interface/accessibility true
                        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 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                        
                        remove_applet fast_user_switch
                        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 [ -x /root/usr/bin/orca ]; then
				mkdir -p /root/home/$USERNAME/.orca
				chroot /root chown -R $USERNAME.$USERNAME /home/$USERNAME/.orca
			fi
                        ;;
                        # Braille
                        braille=ask)
                        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
			if [ -x /root/usr/bin/orca ]; then
				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
				chroot /root chown -R $USERNAME.$USERNAME /home/$USERNAME/.orca
			fi
                        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                        
                        remove_applet fast_user_switch
                        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
                        ;;
                        # 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
                        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
                        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/applications/at/mobility/startup true
                        gct -s -t string /desktop/gnome/applications/at/mobility/exec 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
done
log_end_msg