Merge lp:~ivoks/casper/casper-virtio into lp:casper
- casper-virtio
- Merge into trunk
Status: | Superseded |
---|---|
Proposed branch: | lp:~ivoks/casper/casper-virtio |
Merge into: | lp:casper |
Diff against target: |
4049 lines (+2343/-759) (has conflicts) 52 files modified
.bzr-builddeb/default.conf (+2/-0) bin/casper-a11y-enable (+668/-0) bin/casper-preseed (+13/-6) bin/casper-set-selections (+92/-0) bin/casper-snapshot (+1/-1) bin/casper-update-initramfs (+25/-0) casper-md5check/Makefile (+2/-1) casper-md5check/casper-md5check.c (+115/-97) conf.d/compcache (+1/-1) debian/casper.init (+17/-11) debian/casper.install (+3/-0) debian/casper.postinst (+10/-0) debian/changelog (+769/-1) debian/control (+6/-6) debian/copyright (+11/-1) debian/manpage/casper.7 (+12/-0) debian/source/format (+1/-0) hooks/casper (+5/-1) scripts/casper (+107/-26) scripts/casper-bottom/05mountpoints (+4/-0) scripts/casper-bottom/07remove_oem_config (+32/-0) scripts/casper-bottom/10adduser (+16/-26) scripts/casper-bottom/15autologin (+53/-9) scripts/casper-bottom/19keyboard (+39/-11) scripts/casper-bottom/22gnome_panel_data (+0/-6) scripts/casper-bottom/22screensaver (+1/-3) scripts/casper-bottom/22sslcert (+1/-0) scripts/casper-bottom/23networking (+20/-15) scripts/casper-bottom/24preseed (+40/-15) scripts/casper-bottom/25configure_init (+2/-2) scripts/casper-bottom/26disable_user_menu (+28/-0) scripts/casper-bottom/30accessibility (+31/-151) scripts/casper-bottom/31disable_update_notifier (+8/-0) scripts/casper-bottom/32disable_hibernation (+6/-10) scripts/casper-bottom/34disable_kde_services.OTHER (+36/-0) scripts/casper-bottom/37kubuntu_netbook_installer_link (+0/-28) scripts/casper-bottom/40install_driver_updates (+7/-1) scripts/casper-bottom/41apt_cdrom (+9/-1) scripts/casper-bottom/42disable_apparmor (+0/-26) scripts/casper-bottom/43disable_updateinitramfs (+2/-7) scripts/casper-bottom/44pk_allow_ubuntu (+2/-23) scripts/casper-bottom/45disable_guest_account (+0/-25) scripts/casper-bottom/47unr_ubiquity (+0/-39) scripts/casper-bottom/48enable_kubuntu_netbook (+0/-27) scripts/casper-bottom/48kubuntu_disable_restart_notifications (+5/-0) scripts/casper-bottom/49kubuntu_mobile_session (+5/-0) scripts/casper-functions (+15/-1) scripts/casper-helpers (+34/-10) scripts/casper-premount/10driver_updates (+1/-1) ubiquity-hooks/30accessibility (+75/-162) ubiquity-hooks/48enable_kubuntu_netbook (+0/-8) ubiquity-hooks/49kubuntu_gnome_icon_cache (+11/-0) Contents conflict in scripts/casper-bottom/34disable_kde_services |
To merge this branch: | bzr merge lp:~ivoks/casper/casper-virtio |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Ubuntu Core Development Team | Pending | ||
Review via email: mp+78378@code.launchpad.net |
This proposal has been superseded by a proposal from 2011-10-06.
Commit message
Description of the change
At the moment, casper doesn't work with live system located on virtio device. This simple change makes that possible.
Colin Watson (cjwatson) wrote : | # |
Ante Karamatić (ivoks) wrote : | # |
Ups. Sorry about that.
Unmerged revisions
- 961. By Ante Karamatić
-
* scripts/casper:
- enable use of virtio devices in is_nice_device() - 960. By Luke Yelavich
-
releasing version 1.284
- 959. By Luke Yelavich
-
Make sure profile settings are not set up twice
- 958. By Luke Yelavich
-
* Fix typo
* Write session data if a starttup script is created - 957. By Luke Yelavich
-
* ubiquity-
hooks/30accessi bility:
- Make sure that accessibility profile settings are properly applied at
install time, even if the user decided to try Ubuntu first, and then
run the install from the desktop
- Copy any existing orca configuration to the target system - 956. By Luke Yelavich
-
Reformat the changelog to be easier to comprehend
- 955. By Luke Yelavich
-
* Set correct permissions for the orca config directory once the config files
have been created
* Make sure the startup script checks take into account the ability to be run
from the initramfs - 954. By Luke Yelavich
-
* Make sure that accessibility profile settings are properly applied at
install time, even if the user decided to try Ubuntu first, and then
run the install from the desktop
* Add some other needed settings for various profiles for use in the login
manager - 953. By Luke Yelavich
-
* bin/casper-
a11y-enable: Set the session by calling AccountService via dbus
instead of using lightdm commands, as we cannot run lightdm-set-defaults
as a user
* Add some extra spaces to make sure the startup scripts used to set a11y
settings are syntactically correct - 952. By Martin Pitt
-
releasing version 1.283
Preview Diff
1 | === added directory '.bzr-builddeb' |
2 | === added file '.bzr-builddeb/default.conf' |
3 | --- .bzr-builddeb/default.conf 1970-01-01 00:00:00 +0000 |
4 | +++ .bzr-builddeb/default.conf 2011-10-06 10:04:28 +0000 |
5 | @@ -0,0 +1,2 @@ |
6 | +[BUILDDEB] |
7 | +native = True |
8 | |
9 | === added file 'bin/casper-a11y-enable' |
10 | --- bin/casper-a11y-enable 1970-01-01 00:00:00 +0000 |
11 | +++ bin/casper-a11y-enable 2011-10-06 10:04:28 +0000 |
12 | @@ -0,0 +1,668 @@ |
13 | +#!/bin/sh |
14 | +# |
15 | +# casper-a11y-enable - Sets accessibility profile settings for the live session |
16 | +# or installed system. |
17 | +# |
18 | +# This script is called by several other scripts, as well as ubiquity itself to |
19 | +# set up accessibility profile settings for use in the live environment and on |
20 | +# an installed system. |
21 | +# |
22 | +# Copyright (C) 2011, Canonical Ltd. |
23 | +# |
24 | +# Author: |
25 | +# - Luke Yelavich <luke.yelavich@canonical.com> |
26 | +# |
27 | +# This script is free software; you can redistribute it and/or modify it under |
28 | +# the terms of the GNU General Public License as published by the Free |
29 | +# Software Foundation; either version 2 of the License, or at your option) |
30 | +# any later version. |
31 | +# |
32 | +# This program is distributed in the hope that it will be useful, |
33 | +# but WITHOUT ANY WARRANTY; without even the implied warranty of |
34 | +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
35 | +# GNU General Public License for more details. |
36 | +# |
37 | +# You should have received a copy of the GNU General Public License along |
38 | +# with this application; if not, write to the Free Software Foundation, Inc., 51 |
39 | +# Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
40 | +################################################################################## |
41 | + |
42 | +set -e |
43 | + |
44 | +### PROFILE SETTINGS METHODS BEGIN HERE ### |
45 | +# The methods that are used to set profile data have been placed as close to the |
46 | +# top of this file as possible, so they are easy to locate, and will hopefully |
47 | +# save time when making smaller changes. |
48 | + |
49 | +# Common settings for low vision profiles. Any change you make here will affect |
50 | +# all low vision profiles, for both the user session and login manager. |
51 | +set_common_lowvis() |
52 | +{ |
53 | + gset set org.gnome.desktop.interface toolkit-accessibility true |
54 | + gct -s -t bool /desktop/gnome/interface/accessibility true |
55 | + gct -s -t bool /apps/gksu/disable-grab true |
56 | + gset set org.gnome.yelp show-cursor true |
57 | + add_sudoers_file |
58 | +} |
59 | + |
60 | +# Common settings for motor profiles. Any change you make here will affect |
61 | +# all motor profiles, for both the user session and login manager. |
62 | +set_common_motor() |
63 | +{ |
64 | + gset set org.gnome.desktop.a11y.keyboard enable true |
65 | + gct -s -t bool /apps/gksu/disable-grab true |
66 | + gset set org.gnome.desktop.a11y.keyboard stickykeys-enable true |
67 | + gset set org.gnome.desktop.a11y.keyboard stickykeys-two-key-off false |
68 | +} |
69 | + |
70 | +# Settings for the high-contrast profile. |
71 | +set_high_contrast() |
72 | +{ |
73 | + gset set org.gnome.desktop.interface icon-theme HighContrast |
74 | + gset set org.gnome.desktop.interface monospace-font-name "monospace 18" |
75 | + gset set org.gnome.desktop.interface font-name "sans 18" |
76 | + gset set org.gnome.desktop.background picture-uri "" |
77 | + gset set org.gnome.desktop.background picture-options none |
78 | + gset set org.gnome.desktop.background primary-color \#666666 |
79 | + gset set org.gnome.desktop.background secondary-color \#7F7F7F |
80 | + gset set org.gnome.desktop.background color-shading-type solid |
81 | + gset set org.gnome.desktop.interface cursor-size 48 |
82 | + gset set org.gnome.desktop.interface cursor-theme whiteglass |
83 | + kderc_addtoprefixes /usr/share/kubuntu-default-settings/kde-profile/lesser-visual-impairment/ |
84 | + if [ -d $CHROOT_DIR/usr/share/xubuntu-default-settings/accessibility ]; then |
85 | + cp -a $CHROOT_DIR/usr/share/xubuntu-default-settings/accessibility/* $CHROOT_DIR/etc/xdg/ |
86 | + fi |
87 | +} |
88 | + |
89 | +set_magnifier() |
90 | +{ |
91 | + # Ubuntu |
92 | + gset set org.gnome.desktop.a11y.applications screen-magnifier-enabled true |
93 | + set_orca_config magnifier |
94 | + |
95 | + # Kubuntu |
96 | + kderc_addtoprefixes /usr/share/kubuntu-default-settings/kde-profile/lesser-visual-impairment/,/usr/share/kubuntu-default-settings/kde-profile/moderate-visual-impairment/ |
97 | +} |
98 | + |
99 | +set_blindness() |
100 | +{ |
101 | + gset set org.gnome.desktop.a11y.applications screen-reader-enabled true |
102 | + gset set org.gnome.Empathy.conversation theme classic |
103 | + set_orca_config speech |
104 | + set_session ubuntu-2d |
105 | + |
106 | + if [ -n "$SET_LOGIN" ]; then |
107 | + gset_lightdm set org.gnome.desktop.interface toolkit-accessibility true |
108 | + gset_lightdm set org.gnome.desktop.a11y.applications screen-reader-enabled true |
109 | + fi |
110 | +} |
111 | + |
112 | +set_braille() |
113 | +{ |
114 | + gset set org.gnome.desktop.a11y.applications screen-reader-enabled true |
115 | + gset set org.gnome.Empathy.conversation theme classic |
116 | + set_orca_config braille |
117 | + set_session ubuntu-2d |
118 | + |
119 | + if [ -n "$SET_LOGIN" ]; then |
120 | + gset_lightdm set org.gnome.desktop.interface toolkit-accessibility true |
121 | + gset_lightdm set org.gnome.desktop.a11y.applications screen-reader-enabled true |
122 | + fi |
123 | +} |
124 | + |
125 | +set_keyboard_modifiers() |
126 | +{ |
127 | + gset set org.gnome.desktop.a11y.keyboard mousekeys-enable true |
128 | + gset set org.gnome.desktop.a11y.keyboard stickykeys-modifier-beep true |
129 | + gset set org.gnome.settings-daemon.peripherals.keyboard repeat true |
130 | + gset set org.gnome.settings-daemon.peripherals.keyboard delay 700 |
131 | + gset set org.gnome.settings-daemon.peripherals.keyboard repeat-interval 10 |
132 | + kderc_addtoprefixes /usr/share/kubuntu-default-settings/kde-profile/minor-motor-difficulties/ |
133 | + if [ -e $CHROOT_DIR/etc/xdg/xfce4/mcs_settings/keyboard.xml ]; then |
134 | + sed -i 's/0/1/' $CHROOT_DIR/etc/xdg/xfce4/mcs_settings/keyboard.xml |
135 | + fi |
136 | +} |
137 | + |
138 | +set_onscreen_keyboard() |
139 | +{ |
140 | + gset set org.gnome.desktop.interface toolkit-accessibility true |
141 | + gset set org.gnome.desktop.a11y.keyboard stickykeys-modifier-beep false |
142 | + gset set org.gnome.desktop.a11y.applications screen-keyboard-enabled true |
143 | + |
144 | + if [ -n "$SET_LOGIN" ]; then |
145 | + gset_lightdm set org.gnome.desktop.interface toolkit-accessibility true |
146 | + gset_lightdm set org.gnome.desktop.a11y.applications screen-keyboard-enabled true |
147 | + fi |
148 | + |
149 | + kderc_addtoprefixes /usr/share/kubuntu-default-settings/kde-profile/minor-motor-difficulties/,/usr/share/kubuntu-default-settings/kde-profile/motor-difficulties-pointing-devices/ |
150 | + if [ -e $CHROOT_DIR/etc/xdg/xfce4/mcs_settings/keyboard.xml ]; then |
151 | + sed -i '/Sticky/ s/0/1/' $CHROOT_DIR/etc/xdg/xfce4/mcs_settings/keyboard.xml |
152 | + fi |
153 | +} |
154 | +### PROFILE SETTINGS METHODS END HERE ### |
155 | + |
156 | +help() |
157 | +{ |
158 | + cat <<EOF |
159 | +Usage: $0 [-chroot=<root>] [-user=<username>] [-l|-login] |
160 | + [-i|-initramfs] [-d|-debug] <profilename> |
161 | + |
162 | +-h, -help Display this help. |
163 | +-chroot=<root> Chroot into <root> to apply profile settings, requires a |
164 | + username to be specified, see below. |
165 | +-user=<username> The user where a profile is to be applied, requires the |
166 | + script to be run as root. If no username is given, it |
167 | + is assumed that you wish to apply profile settings for |
168 | + the current user. |
169 | +-l, -login Apply some of the selected profile settings to the |
170 | + login manager. Currently this is hard-coded to lightdm. |
171 | + This requires root privileges. |
172 | +-i, -initramfs Indicate that the script is being called from the |
173 | + initramfs. Allows the script to assume some values |
174 | + that can not otherwise be easily determined in an |
175 | + initramfs environment. Requires that a chroot dir and |
176 | + user name are specified. See above. |
177 | +-script Create a script to be run at system boot that will |
178 | + apply all settings for the specified user and for |
179 | + login. This script will then remove itself. This is |
180 | + needed to work around gsettings not working in a chroot |
181 | + environment with no dconf service running. |
182 | +-d|-debug Enable debugging output. |
183 | +<profilename> The name of the profile you wish to apply, see below. |
184 | + |
185 | +The profiles currently available are as follows: |
186 | +high-contrast For users with lesser visual impairments who only need a high |
187 | + contrast theme, mouse cursor and icons. |
188 | +magnifier For users with moderate visual impairments who require a screen |
189 | + magnifier. |
190 | +blindness Users who are partially or completely blind who require a screen |
191 | + reader. |
192 | +braille Users who are partially or completely blind who require a screen |
193 | + reader and wish to use a Braille display. |
194 | +keyboard-modifiers |
195 | + Users who have minor motor impairments who require slight |
196 | + changes to the way their keyboard behaves. |
197 | +onscreen-keyboard |
198 | + Users with motor impairments who require the use of an |
199 | + on-screen keyboard. |
200 | +EOF |
201 | +} |
202 | + |
203 | +gset() |
204 | +{ |
205 | + if [ -n "$GLIBBIN_VERSION" ]; then |
206 | + if [ -n "$STARTUP_SCRIPT" ]; then |
207 | + echo "gsettings " "$@" >> $CHROOT_DIR/usr/bin/a11y-profile-settings |
208 | + else |
209 | + $DO_CHROOT $DO_SUDO gsettings "$@" |
210 | + fi |
211 | + fi |
212 | +} |
213 | + |
214 | +gset_lightdm() |
215 | +{ |
216 | + if [ -n "$GLIBBIN_VERSION" ]; then |
217 | + if [ -n "$STARTUP_SCRIPT" ]; then |
218 | + echo "gsettings " "$@" >> $CHROOT_DIR/usr/bin/a11y-profile-settings-lightdm |
219 | + else |
220 | + $DO_CHROOT sudo -u lightdm gsettings "$@" |
221 | + fi |
222 | + fi |
223 | +} |
224 | + |
225 | +# Soon to be deprecated |
226 | +gct() |
227 | +{ |
228 | + if [ -n "$GCONF_VERSION" ]; then |
229 | + if [ -n "$STARTUP_SCRIPT" ]; then |
230 | + echo "gconftool-2 " "$@" >> $CHROOT_DIR/usr/bin/a11y-profile-settings |
231 | + else |
232 | + $DO_CHROOT $DO_SUDO gconftool-2 "$@" |
233 | + fi |
234 | + fi |
235 | +} |
236 | + |
237 | +gct_lightdm() |
238 | +{ |
239 | + if [ -n "$GCONF_VERSION" ]; then |
240 | + if [ -n "$STARTUP_SCRIPT" ]; then |
241 | + echo "gconftool-2 " "$@" >> $CHROOT_DIR/usr/bin/a11y-profile-settings-lightdm |
242 | + else |
243 | + $DO_CHROOT sudo -u lightdm gconftool-2 "$@" |
244 | + fi |
245 | + fi |
246 | +} |
247 | + |
248 | +kderc_addtoprefixes() |
249 | +{ |
250 | + if [ -e $CHROOT_DIR/etc/kde4rc ]; then |
251 | + sed -i "s|\\(prefixes=/usr/share/kubuntu-default-settings/kde-profile/default/\\)|\\1,$1|" $CHROOT_DIR/etc/kde4rc |
252 | + fi |
253 | +} |
254 | + |
255 | +add_sudoers_file() |
256 | +{ |
257 | + if [ "$HOME" = "/root" ] || [ -n "$IN_INITRAMFS" ]; then |
258 | + cat <<EOF > $CHROOT_DIR/etc/sudoers.d/a11y-sudo |
259 | +# To allow accessibility in GTK to work with sudo. |
260 | +Defaults env_keep = "ORBIT_SOCKETDIR XDG_SESSION_COOKIE GTK_MODULES" |
261 | +EOF |
262 | + chmod 0440 $CHROOT_DIR/etc/sudoers.d/a11y-sudo |
263 | + else |
264 | + echo "Warning: Could not create sudoers file due to no root privileges." |
265 | + fi |
266 | +} |
267 | + |
268 | +# Unfortunately this bloats this script somewhat, but orca doesn't seem to want |
269 | +# to deal with individual settings/a small config fragment. |
270 | +# Arguments: $1 = speech/magnifier/braille (which |
271 | +# accessibility feature to turn on) |
272 | +set_orca_config() |
273 | +{ |
274 | + # Yes, we could use $HOME, but enquiring about $HOME is not easy when |
275 | + # Outside the target environment, particularly when running from the |
276 | + # initramfs, and this script is not everything for everybody anyway. |
277 | + if [ -n "$ORCA_VERSION" ] && ! [ -f "$CHROOT_DIR/home/$USER_NAME/.local/share/orca/user-settings.conf" ]; then |
278 | + mkdir -p "$CHROOT_DIR/home/$USER_NAME/.local/share/orca" |
279 | + |
280 | + cat <<EOF > "$CHROOT_DIR/home/$USER_NAME/.local/share/orca/user-settings.conf" |
281 | +{ |
282 | + "pronunciations": {}, |
283 | + "keybindings": {}, |
284 | + "profiles": { |
285 | + "default": { |
286 | + "profile": [ |
287 | + "Default", |
288 | + "default" |
289 | + ], |
290 | + "pronunciations": {}, |
291 | + "keybindings": {} |
292 | + } |
293 | + }, |
294 | + "general": { |
295 | + "speakCellHeaders": true, |
296 | + "magEdgeMargin": 0, |
297 | + "brailleContractionTable": "", |
298 | + "magPointerFollowsFocus": false, |
299 | + "magTextTrackingMode": 2, |
300 | + "magZoomerBorderSize": 1, |
301 | + "brailleAlignmentStyle": 0, |
302 | + "enableEchoByWord": false, |
303 | + "enableMagZoomerColorInversion": false, |
304 | + "magCursorSize": 32, |
305 | + "magSmoothingMode": 0, |
306 | + "magZoomerLeft": 840, |
307 | + "showMainWindow": true, |
308 | + "sayAllStyle": 1, |
309 | + "brailleSelectorIndicator": 192, |
310 | + "presentDateFormat": "%x", |
311 | + "magContrastLevel": 0, |
312 | + "magMouseTrackingMode": 0, |
313 | + "speakCellSpan": true, |
314 | + "progressBarUpdateInterval": 10, |
315 | + "speakCellCoordinates": true, |
316 | + "enablePauseBreaks": true, |
317 | + "brailleEOLIndicator": " $l", |
318 | + "verbalizePunctuationStyle": 1, |
319 | + "progressBarVerbosity": 1, |
320 | + "enableSpeech": false, |
321 | + "enableBraille": false, |
322 | + "chatAnnounceBuddyTyping": false, |
323 | + "speakMultiCaseStringsAsWords": false, |
324 | + "enableBrailleGrouping": false, |
325 | + "readTableCellRow": true, |
326 | + "speechServerFactory": "speechdispatcherfactory", |
327 | + "textAttributesBrailleIndicator": 0, |
328 | + "enableMagCursorExplicitSize": false, |
329 | + "messageVerbosityLevel": 1, |
330 | + "enableMagLiveUpdating": true, |
331 | + "enableSpeechIndentation": false, |
332 | + "enableKeyEcho": true, |
333 | + "magHideCursor": false, |
334 | + "magZoomerBorderColor": "#000000", |
335 | + "magPointerFollowsZoomer": true, |
336 | + "mouseDwellDelay": 0, |
337 | + "magBrightnessLevelRed": 0, |
338 | + "enableMagnifier": false, |
339 | + "magZoomFactor": 4.0, |
340 | + "activeProfile": [ |
341 | + "Default", |
342 | + "default" |
343 | + ], |
344 | + "enableMagZoomerBorder": false, |
345 | + "flashVerbosityLevel": 1, |
346 | + "enableFlashMessages": true, |
347 | + "speechServerInfo": null, |
348 | + "presentToolTips": false, |
349 | + "flashIsPersistent": false, |
350 | + "skipBlankCells": false, |
351 | + "firstStart": false, |
352 | + "largeObjectTextLength": 75, |
353 | + "enableEchoBySentence": false, |
354 | + "magContrastLevelBlue": 0, |
355 | + "magContrastLevelRed": 0, |
356 | + "enableContractedBraille": false, |
357 | + "orcaModifierKeys": [ |
358 | + "Insert", |
359 | + "KP_Insert" |
360 | + ], |
361 | + "enableMagCursor": true, |
362 | + "speechRequiredStateString": "required", |
363 | + "quitOrcaNoConfirmation": false, |
364 | + "brailleRequiredStateString": "required", |
365 | + "magCursorColor": "#000000", |
366 | + "enablePositionSpeaking": false, |
367 | + "magZoomerType": 0, |
368 | + "onlySpeakDisplayedText": false, |
369 | + "enableProgressBarUpdates": true, |
370 | + "wrappedStructuralNavigation": true, |
371 | + "chatRoomHistories": false, |
372 | + "brailleVerbosityLevel": 1, |
373 | + "enableFunctionKeys": true, |
374 | + "enableModifierKeys": true, |
375 | + "magCrossHairColor": "#000000", |
376 | + "enableTutorialMessages": false, |
377 | + "enableActionKeys": true, |
378 | + "speakBlankLines": true, |
379 | + "magColorFilteringMode": 0, |
380 | + "magZoomerRight": 1680, |
381 | + "keyboardLayout": 1, |
382 | + "magTargetDisplay": "", |
383 | + "disableBrailleEOL": false, |
384 | + "magZoomerTop": 0, |
385 | + "magSourceDisplay": "", |
386 | + "enableDiacriticalKeys": false, |
387 | + "enableMnemonicSpeaking": false, |
388 | + "enabledBrailledTextAttributes": "size:; family-name:; weight:400; indent:0; underline:none; strikethrough:false; justification:left; style:normal; text-spelling:none;", |
389 | + "speechVerbosityLevel": 1, |
390 | + "enableMagCrossHair": true, |
391 | + "enableBrailleMonitor": false, |
392 | + "voices": { |
393 | + "default": { |
394 | + "established": false |
395 | + }, |
396 | + "uppercase": { |
397 | + "average-pitch": 5.6 |
398 | + }, |
399 | + "system": { |
400 | + "established": false |
401 | + }, |
402 | + "hyperlink": { |
403 | + "established": false |
404 | + } |
405 | + }, |
406 | + "magContrastLevelGreen": 0, |
407 | + "brailleFlashTime": 5000, |
408 | + "magCrossHairSize": 16, |
409 | + "enableMouseReview": false, |
410 | + "enableNavigationKeys": false, |
411 | + "magBrightnessLevelGreen": 0, |
412 | + "chatSpeakRoomName": false, |
413 | + "startingProfile": [ |
414 | + "Default", |
415 | + "default" |
416 | + ], |
417 | + "enableLockingKeys": true, |
418 | + "profile": [ |
419 | + "Default", |
420 | + "default" |
421 | + ], |
422 | + "brailleRolenameStyle": 1, |
423 | + "brailleLinkIndicator": 192, |
424 | + "enableEchoByCharacter": false, |
425 | + "magBrightnessLevelBlue": 0, |
426 | + "enableBrailleContext": true, |
427 | + "magControlTrackingMode": 2, |
428 | + "magZoomerBottom": 1050, |
429 | + "enablePrintableKeys": true, |
430 | + "enabledSpokenTextAttributes": "size:; family-name:; weight:400; indent:0; underline:none; strikethrough:false; justification:left; style:normal; paragraph-style:; text-spelling:none;", |
431 | + "chatMessageVerbosity": 0, |
432 | + "presentTimeFormat": "%X", |
433 | + "magBrightnessLevel": 0, |
434 | + "presentRequiredState": false, |
435 | + "enableMagCrossHairClip": false |
436 | + } |
437 | +} |
438 | +EOF |
439 | + |
440 | + case "$1" in |
441 | + magnifier) |
442 | + sed -i -e 's/\"enableMagnifier\": false/\"enableMagnifier\": true/' "$CHROOT_DIR/home/$USER_NAME/.local/share/orca/user-settings.conf" |
443 | + ;; |
444 | + speech) |
445 | + sed -i -e 's/\"enableSpeech\": false/\"enableSpeech\": true/' "$CHROOT_DIR/home/$USER_NAME/.local/share/orca/user-settings.conf" |
446 | + ;; |
447 | + braille) |
448 | + sed -i -e 's/\"enableBraille\": false/\"enableBraille\": true/' "$CHROOT_DIR/home/$USER_NAME/.local/share/orca/user-settings.conf" |
449 | + ;; |
450 | + *) |
451 | + ;; |
452 | + esac |
453 | + |
454 | + if [ "$HOME" = "/root" ] || [ -n "$IN_INITRAMFS" ]; then |
455 | + chmod 755 "$CHROOT_DIR/home/$USER_NAME/.local/share/orca" |
456 | + $DO_CHROOT chown $USER_NAME.$USER_NAME -R "/home/$USER_NAME/.local" |
457 | + fi |
458 | + fi |
459 | +} |
460 | + |
461 | +set_session() |
462 | +{ |
463 | + local uid=$($DO_CHROOT getent passwd $USER_NAME | awk -F: '{print $3}') |
464 | + |
465 | + # We need to start the accounts daemon somehow and wait for a half second |
466 | + # for it to get ready. Calling on AccountsService to set the X session with |
467 | + # only one call seems to error out, so querying the user by name seems to get |
468 | + # the daemon going. |
469 | + if [ -n "$STARTUP_SCRIPT" ]; then |
470 | + # I don't like having to write the file manually, but during testing I was |
471 | + # unable to get calls via dbus-send to work. |
472 | + cat <<EOF > $CHROOT_DIR/var/lib/AccountsService/users/$USER_NAME |
473 | + |
474 | +[User] |
475 | +XSession=ubuntu-2d |
476 | +EOF |
477 | + else |
478 | + dbus-send --type=method_call --system --dest=org.freedesktop.Accounts /org/freedesktop/Accounts org.freedesktop.Accounts.FindUserByName string:$USER_NAME |
479 | + sleep 1 |
480 | + dbus-send --type=method_call --system --reply-timeout=1000 --dest=org.freedesktop.Accounts /org/freedesktop/Accounts/User$uid org.freedesktop.Accounts.User.SetXSession string:$1 |
481 | + fi |
482 | +} |
483 | + |
484 | +create_conf() |
485 | +{ |
486 | + cat <<EOF > /tmp/casper-a11y.conf |
487 | +UBIQUITY_A11Y_PROFILE=$1 |
488 | +EOF |
489 | +} |
490 | + |
491 | +if [ "$#" = "0" ] || [ "$1" = "-h" ] || [ "$1" = "--help" ]; then |
492 | + help |
493 | + exit 1 |
494 | +fi |
495 | + |
496 | +while [ "$#" -gt 0 ]; |
497 | +do |
498 | + case "$1" in |
499 | + -chroot=*) |
500 | + CHROOT_DIR="${1#-chroot=}" |
501 | + DO_CHROOT="chroot $CHROOT_DIR" |
502 | + shift |
503 | + continue |
504 | + ;; |
505 | + -user=*) |
506 | + USER_NAME="${1#-user=}" |
507 | + DO_SUDO="sudo -u $USER_NAME" |
508 | + shift |
509 | + continue |
510 | + ;; |
511 | + -l|-login) |
512 | + SET_LOGIN=1 |
513 | + shift |
514 | + continue |
515 | + ;; |
516 | + -i|-initramfs) |
517 | + IN_INITRAMFS=1 |
518 | + shift |
519 | + continue |
520 | + ;; |
521 | + -d|-debug) |
522 | + set -x |
523 | + shift |
524 | + continue |
525 | + ;; |
526 | + -script) |
527 | + STARTUP_SCRIPT=1 |
528 | + shift |
529 | + continue |
530 | + ;; |
531 | + *) |
532 | + PROFILE_NAME="$1" |
533 | + shift |
534 | + continue |
535 | + ;; |
536 | + esac |
537 | +done |
538 | + |
539 | +if [ -n "$IN_INITRAMFS" ] && [ -z "$CHROOT_DIR" ]; then |
540 | + echo "Error: In initramfs, but no chroot directory specified." |
541 | + help |
542 | + exit 1 |
543 | +elif [ -n "$IN_INITRAMFS" ] && [ -z "$USER_NAME" ]; then |
544 | + echo "Error: In initramfs, but no username specified." |
545 | + help |
546 | + exit 1 |
547 | +fi |
548 | + |
549 | +if [ -n "$SET_LOGIN" ] && [ "$HOME" != "/root" ] && [ -z "$IN_INITRAMFS" ]; then |
550 | + echo "Error: Setting up accessibility for login requires root privileges." |
551 | + help |
552 | + exit 1 |
553 | +fi |
554 | + |
555 | + |
556 | +if [ -n "$CHROOT_DIR" ] || [ -n "$USER_NAME" ]; then |
557 | + if [ "$HOME" != "/root" ] && [ -z "$IN_INITRAMFS" ]; then |
558 | + echo "Error: You are not running as root." |
559 | + help |
560 | + exit 1 |
561 | + fi |
562 | +fi |
563 | + |
564 | +if [ -n "$CHROOT_DIR" ]; then |
565 | + if [ ! -d "$CHROOT_DIR" ]; then |
566 | + echo "Error: Target chroot directory does not exist, or you do not have permission to access it." |
567 | + exit 1 |
568 | + fi |
569 | + if [ -z "$IN_INITRAMFS" ] && ! type chroot >/dev/null 2>&1 ; then |
570 | + echo "Error: Chroot command not available in running environment." |
571 | + exit 1 |
572 | + fi |
573 | +fi |
574 | + |
575 | +if [ -n "$STARTUP_SCRIPT" ]; then |
576 | + if [ -z "$USER_NAME" ]; then |
577 | + echo "Error: You have requested to create a startup script, but no user was specified." |
578 | + exit 1 |
579 | + fi |
580 | + if [ "$HOME" != "/root" ] && [ -z "$IN_INITRAMFS" ]; then |
581 | + echo "Error: You have requested to create a startup script, but you do not have root" |
582 | + echo "privileges." |
583 | + exit 1 |
584 | + fi |
585 | + if [ -z "$CHROOT_DIR" ]; then |
586 | + echo "Error: You have requested to create a startup script, but you did not specify" |
587 | + echo "a target directory to chroot to." |
588 | + exit 1 |
589 | + fi |
590 | +fi |
591 | + |
592 | +# If no username was entered on the command line, grab the name of the current |
593 | +# user, so we can write files to their home directory. |
594 | +if [ -z "$USER_NAME" ]; then |
595 | + if [ -z "$USER" ]; then |
596 | + USER_NAME="${HOME#/home/}" |
597 | + else |
598 | + USER_NAME="$USER" |
599 | + fi |
600 | +fi |
601 | + |
602 | +# Check to see if a few necessary packages are present in the target |
603 | +# environment. |
604 | +GCONF_VERSION=$($DO_CHROOT /usr/bin/dpkg-query -W --showformat='${Version}' gconf2 2>/dev/null) || GCONF_VERSION="" |
605 | +GLIBBIN_VERSION=$($DO_CHROOT /usr/bin/dpkg-query -W --showformat='${Version}' libglib2.0-bin 2>/dev/null) || GLIBBIN_VERSION="" |
606 | +ORCA_VERSION=$($DO_CHROOT /usr/bin/dpkg-query -W --showformat='${Version}' gnome-orca 2>/dev/null) || ORCA_VERSION="" |
607 | + |
608 | +if [ -n "$STARTUP_SCRIPT" ]; then |
609 | + cat <<EOF > $CHROOT_DIR/etc/init/a11y-profile-settings.conf |
610 | +# a11y-profile-settings - A job to set up accessibility settings |
611 | + |
612 | +description "Accessib ility profile settings" |
613 | + |
614 | +start on runlevel [2345] |
615 | + |
616 | +umask 022 |
617 | + |
618 | +script |
619 | + sudo -u $USER_NAME /usr/bin/dbus-launch --exit-with-session /usr/bin/a11y-profile-settings |
620 | + sudo -u lightdm /usr/bin/dbus-launch --exit-with-session /usr/bin/a11y-profile-settings-lightdm |
621 | + rm /usr/bin/a11y-profile-settings /usr/bin/a11y-profile-settings-lightdm |
622 | + rm /etc/init/a11y-profile-settings.conf |
623 | +end script |
624 | +EOF |
625 | + cat <<EOF > $CHROOT_DIR/usr/bin/a11y-profile-settings |
626 | +#!/bin/sh |
627 | + |
628 | +# Created by the casper accessibility profile settings script on |
629 | +# $(date). |
630 | + |
631 | +# This script deletes itself once run. |
632 | + |
633 | +EOF |
634 | + cat <<EOF > $CHROOT_DIR/usr/bin/a11y-profile-settings-lightdm |
635 | +#!/bin/sh |
636 | + |
637 | +# Created by the casper accessibility profile settings script on |
638 | +# $(date). |
639 | + |
640 | +# This script deletes itself once run. |
641 | + |
642 | +EOF |
643 | +fi |
644 | + |
645 | +case $PROFILE_NAME in |
646 | + high-contrast) |
647 | + set_common_lowvis |
648 | + set_high_contrast |
649 | + create_conf $PROFILE_NAME |
650 | + ;; |
651 | + magnifier) |
652 | + set_common_lowvis |
653 | + set_magnifier |
654 | + create_conf $PROFILE_NAME |
655 | + ;; |
656 | + blindness) |
657 | + set_common_lowvis |
658 | + set_blindness |
659 | + create_conf screen-reader |
660 | + ;; |
661 | + braille) |
662 | + set_common_lowvis |
663 | + set_braille |
664 | + create_conf $PROFILE_NAME |
665 | + ;; |
666 | + keyboard-modifiers) |
667 | + set_common_motor |
668 | + set_keyboard_modifiers |
669 | + create_conf $PROFILE_NAME |
670 | + ;; |
671 | + onscreen-keyboard) |
672 | + set_common_motor |
673 | + set_onscreen_keyboard |
674 | + create_conf $PROFILE_NAME |
675 | + ;; |
676 | +esac |
677 | + |
678 | +if [ -n "$STARTUP_SCRIPT" ]; then |
679 | + chmod 755 $CHROOT_DIR/usr/bin/a11y-profile-settings* |
680 | +fi |
681 | |
682 | === modified file 'bin/casper-preseed' |
683 | --- bin/casper-preseed 2006-10-16 15:05:58 +0000 |
684 | +++ bin/casper-preseed 2011-10-06 10:04:28 +0000 |
685 | @@ -2,18 +2,25 @@ |
686 | set -e |
687 | PATH=/usr/sbin:/usr/bin:/sbin:/bin |
688 | |
689 | +# Only do this once. |
690 | +if [ -z "$DEBCONF_REDIR" ]; then |
691 | + exec <&4 |
692 | + export DEBIAN_HAS_FRONTEND=1 |
693 | + export DEBCONF_REDIR=1 |
694 | +fi |
695 | + |
696 | root="$1" |
697 | +. "$root/usr/share/debconf/confmodule" |
698 | + |
699 | question="$2" |
700 | value="$3" |
701 | seen="$4" |
702 | [ "$seen" ] || seen=true |
703 | |
704 | -if ! (echo "SET $question $value"; echo "FSET $question seen $seen") | chroot "$1" debconf-communicate -fnoninteractive casper >/dev/null; then |
705 | - chroot "$1" debconf-communicate -fnoninteractive casper >/dev/null <<EOF |
706 | -REGISTER debian-installer/dummy $question |
707 | -SET $question $value |
708 | -FSET $question seen $seen |
709 | -EOF |
710 | +if ! db_set "$question" "$value"; then |
711 | + db_register debian-installer/dummy "$question" |
712 | + db_set "$question" "$value" |
713 | fi |
714 | +db_fset "$question" seen "$seen" |
715 | |
716 | exit 0 |
717 | |
718 | === added file 'bin/casper-set-selections' |
719 | --- bin/casper-set-selections 1970-01-01 00:00:00 +0000 |
720 | +++ bin/casper-set-selections 2011-10-06 10:04:28 +0000 |
721 | @@ -0,0 +1,92 @@ |
722 | +#!/bin/sh |
723 | +# Cloned-and-hacked from preseed/debconf-set-selections for casper. |
724 | +set -e |
725 | + |
726 | +OLDIFS="$IFS" |
727 | +CR=$(echo -en "\r") |
728 | +NL=" |
729 | +" |
730 | + |
731 | +. /scripts/casper-functions |
732 | +load_confmodule |
733 | + |
734 | +# Returns the first field in the current line |
735 | +first_field() { |
736 | + echo "$line" | grep -q "[[:space:]]" || return 1 |
737 | + echo "$line" | sed -r 's/^([^[:space:]]*).*/\1/' |
738 | +} |
739 | + |
740 | +# Returns any fields after the first field in the current line |
741 | +rest_line() { |
742 | + if echo "$line" | grep -q "[[:space:]]"; then |
743 | + echo "$line" | sed 's/^[^[:space:]]*[[:space:]]*//' |
744 | + fi |
745 | +} |
746 | + |
747 | +SEEN=1 |
748 | +if [ "$1" = --unseen ]; then |
749 | + SEEN= |
750 | + shift |
751 | +fi |
752 | + |
753 | +file="$1" |
754 | + |
755 | +parse_error() { |
756 | + echo "Error parsing preconfiguration file: $*" >&2 |
757 | + exit 1 |
758 | +} |
759 | + |
760 | +IFS="$NL" |
761 | +multiline="" |
762 | +# TODO: this squashes \r elsewhere in the line too |
763 | +for line in $(grep -v '^#\|^[[:space:]]*$' "$file" | sed "s/$CR//g"); do |
764 | + IFS="$OLDIFS" |
765 | + |
766 | + line="$(echo "$line" | sed 's/^[[:space:]]*//')" |
767 | + if echo "$line" | grep -q '\\$'; then |
768 | + multiline="${multiline:+$multiline }$(echo "$line" | \ |
769 | + sed 's/[[:space:]]*\\$//')" |
770 | + continue |
771 | + elif [ -n "$multiline" ]; then |
772 | + line="$multiline $line" |
773 | + multiline="" |
774 | + fi |
775 | + |
776 | + package="" |
777 | + var="" |
778 | + type="" |
779 | + val="" |
780 | + if ! package="$(first_field)"; then |
781 | + parse_error "Syntax error: unable to determine template owner" |
782 | + fi |
783 | + line="$(rest_line)" |
784 | + if ! var="$(first_field)"; then |
785 | + parse_error "Syntax error: unable to determine template name" |
786 | + fi |
787 | + line="$(rest_line)" |
788 | + if ! type="$(first_field)"; then |
789 | + # Allow for lines without separator before an empty value |
790 | + if [ "$line" ]; then |
791 | + type="$line" |
792 | + else |
793 | + parse_error "Syntax error: unable to determine template type" |
794 | + fi |
795 | + fi |
796 | + line="$(rest_line)" |
797 | + val="$line" |
798 | + |
799 | + if [ "$type" = seen ]; then |
800 | + # Set seen flag. |
801 | + db_fset "$var" "$type" "$val" || true # how to handle this error? |
802 | + else |
803 | + if ! db_set "$var" "$val"; then |
804 | + # Question does not exist yet. |
805 | + db_register debian-installer/dummy "$var" |
806 | + db_set "$var" "$val" |
807 | + db_subst "$var" ID "$var" |
808 | + fi |
809 | + if [ "$SEEN" ]; then |
810 | + db_fset "$var" seen true |
811 | + fi |
812 | + fi |
813 | +done |
814 | |
815 | === modified file 'bin/casper-snapshot' |
816 | --- bin/casper-snapshot 2009-06-12 11:46:49 +0000 |
817 | +++ bin/casper-snapshot 2011-10-06 10:04:28 +0000 |
818 | @@ -215,7 +215,7 @@ |
819 | fi |
820 | else |
821 | if [ -b "${dev}" ] ; then |
822 | - try_mount "${dev}" "${MOUNTP}" rw |
823 | + try_mount "${dev}" "${MOUNTP}" rw || panic "failed to mount ${dev}" |
824 | fi |
825 | fi |
826 | } |
827 | |
828 | === added file 'bin/casper-update-initramfs' |
829 | --- bin/casper-update-initramfs 1970-01-01 00:00:00 +0000 |
830 | +++ bin/casper-update-initramfs 2011-10-06 10:04:28 +0000 |
831 | @@ -0,0 +1,25 @@ |
832 | +#! /bin/sh |
833 | +set -e |
834 | +update-initramfs.distrib "$@" |
835 | +if [ -e /initrd.img ]; then |
836 | + bootdir= |
837 | +else |
838 | + bootdir=/boot |
839 | +fi |
840 | +# initrd.img may exist when vmlinuz doesn't; for example, if |
841 | +# update-initramfs is run on a fresh live USB stick without upgrading the |
842 | +# kernel. |
843 | +if [ -e "$bootdir/initrd.img" ]; then |
844 | + if [ -e /cdrom/casper/initrd.lz ]; then |
845 | + zcat "$bootdir/initrd.img" | lzma -9c >/cdrom/casper/initrd.lz.new |
846 | + mv /cdrom/casper/initrd.lz.new /cdrom/casper/initrd.lz |
847 | + else |
848 | + cp "$bootdir/initrd.img" /cdrom/casper/initrd.gz.new |
849 | + mv /cdrom/casper/initrd.gz.new /cdrom/casper/initrd.gz |
850 | + fi |
851 | +fi |
852 | +if [ -e "$bootdir/vmlinuz" ]; then |
853 | + cp "$bootdir/vmlinuz" /cdrom/casper/vmlinuz.new |
854 | + mv /cdrom/casper/vmlinuz.new /cdrom/casper/vmlinuz |
855 | +fi |
856 | +exit 0 |
857 | |
858 | === modified file 'casper-md5check/Makefile' |
859 | --- casper-md5check/Makefile 2009-01-30 11:27:37 +0000 |
860 | +++ casper-md5check/Makefile 2011-10-06 10:04:28 +0000 |
861 | @@ -1,6 +1,7 @@ |
862 | |
863 | CC=gcc |
864 | -CFLAGS=$(getconf LFS_CFLAGS) -Wall -O2 |
865 | +CFLAGS := $(shell getconf LFS_CFLAGS) -Wall -O2 -g $(shell pkg-config --cflags ply-boot-client) |
866 | +LDLIBS=$(shell pkg-config --libs ply-boot-client) |
867 | |
868 | casper-md5check: casper-md5check.c md5.c |
869 | |
870 | |
871 | === modified file 'casper-md5check/casper-md5check.c' |
872 | --- casper-md5check/casper-md5check.c 2009-01-30 11:27:37 +0000 |
873 | +++ casper-md5check/casper-md5check.c 2011-10-06 10:04:28 +0000 |
874 | @@ -1,6 +1,7 @@ |
875 | -/* casper-md5check - a tool to check md5sums and talk to usplash |
876 | - (C) Canonical Ltd 2006 |
877 | +/* casper-md5check - a tool to check md5sums and talk to plymouth |
878 | + (C) Canonical Ltd 2006, 2010 |
879 | Written by Tollef Fog Heen <tfheen@ubuntu.com> |
880 | + Ported to plymouth by Steve Langasek <steve.langasek@ubuntu.com> |
881 | |
882 | This program is free software; you can redistribute it and/or |
883 | modify it under the terms of the GNU General Public License as |
884 | @@ -32,13 +33,17 @@ |
885 | #include <math.h> |
886 | #include <termios.h> |
887 | |
888 | -#define USPLASH_FIFO "/dev/.initramfs/usplash_fifo" |
889 | -#define MAXTRIES 5 |
890 | +#include <ply-boot-client.h> |
891 | +#include <ply-event-loop.h> |
892 | + |
893 | #include "md5.h" |
894 | #define DEBUG |
895 | |
896 | static int verbose = 1; |
897 | -static int got_usplash = 0; |
898 | +static int got_plymouth = 0; |
899 | +static ply_event_loop_t *ply_event_loop = NULL; |
900 | + |
901 | +int set_nocanonical_tty(int fd); |
902 | |
903 | void parse_cmdline(void) { |
904 | FILE *cmdline = fopen("/proc/cmdline", "r"); |
905 | @@ -60,73 +65,54 @@ |
906 | fclose(cmdline); |
907 | } |
908 | |
909 | -int write_and_retry(int fd, char *s) { |
910 | - int try = 0, ret = 0; |
911 | - char *end; |
912 | - |
913 | -#ifdef DEBUG |
914 | - fprintf(stderr, "-> %s\n", s); |
915 | -#endif |
916 | - |
917 | - end = s + strlen(s)+1; |
918 | - |
919 | - ret = write(fd, s, end - s); |
920 | - while (s + ret < end && try < MAXTRIES) { |
921 | - sleep(1); |
922 | - s += ret; |
923 | - ret = write(fd, s, strlen(s)+1); |
924 | - try++; |
925 | - } |
926 | - return (s+ret == end ? 0 : 1); |
927 | -} |
928 | - |
929 | -void usplash_timeout(int fd, int timeout) { |
930 | +void plymouth_disconnected(void *user_data, ply_boot_client_t *client) { |
931 | + printf("Disconnected from Plymouth\n"); |
932 | + got_plymouth = 0; |
933 | + ply_event_loop_exit(ply_event_loop, 0); |
934 | +} |
935 | + |
936 | +void plymouth_answer(void *user_data, const char *keys, |
937 | + ply_boot_client_t *client) |
938 | +{ |
939 | + ply_event_loop_exit(ply_event_loop, 0); |
940 | +} |
941 | + |
942 | +void plymouth_response(void *user_data, ply_boot_client_t *client) { |
943 | + /* No response */ |
944 | +} |
945 | + |
946 | +void plymouth_failure(ply_boot_client_t *client, char *format, ...) { |
947 | char *s; |
948 | - |
949 | - if (!got_usplash) |
950 | - return; |
951 | - |
952 | - asprintf(&s, "TIMEOUT %d", timeout); |
953 | - |
954 | - write_and_retry(fd, s); |
955 | - |
956 | - free(s); |
957 | -} |
958 | - |
959 | -void usplash_failure(int fd, char *format, ...) { |
960 | - char *s, *s1; |
961 | va_list argp; |
962 | |
963 | va_start(argp, format); |
964 | vasprintf(&s, format, argp); |
965 | va_end(argp); |
966 | |
967 | - if (got_usplash) { |
968 | - asprintf(&s1, "FAILURE %s", s); |
969 | - |
970 | - write_and_retry(fd, s1); |
971 | - |
972 | - free(s1); |
973 | + if (got_plymouth) { |
974 | + ply_boot_client_tell_daemon_to_display_message(client, s, |
975 | + plymouth_response, |
976 | + plymouth_response, NULL); |
977 | + ply_event_loop_process_pending_events(ply_event_loop); |
978 | } else if (verbose) |
979 | printf("%s\n", s); |
980 | |
981 | free(s); |
982 | } |
983 | |
984 | -void usplash_text(int fd, char *format, ...) { |
985 | - char *s, *s1; |
986 | +void plymouth_text(ply_boot_client_t *client, char *format, ...) { |
987 | + char *s; |
988 | va_list argp; |
989 | |
990 | va_start(argp, format); |
991 | vasprintf(&s, format, argp); |
992 | va_end(argp); |
993 | |
994 | - if (got_usplash) { |
995 | - asprintf(&s1, "TEXT %s", s); |
996 | - |
997 | - write_and_retry(fd, s1); |
998 | - |
999 | - free(s1); |
1000 | + if (got_plymouth) { |
1001 | + ply_boot_client_tell_daemon_to_display_message(client, s, |
1002 | + plymouth_response, |
1003 | + plymouth_response, NULL); |
1004 | + ply_event_loop_process_pending_events(ply_event_loop); |
1005 | } else if (verbose) { |
1006 | printf("%s...", s); |
1007 | fflush(stdout); |
1008 | @@ -135,7 +121,7 @@ |
1009 | free(s); |
1010 | } |
1011 | |
1012 | -void usplash_urgent(int fd, char *format, ...) { |
1013 | +void plymouth_prompt(ply_boot_client_t *client, char *format, ...) { |
1014 | char *s, *s1; |
1015 | va_list argp; |
1016 | |
1017 | @@ -143,12 +129,41 @@ |
1018 | vasprintf(&s, format, argp); |
1019 | va_end(argp); |
1020 | |
1021 | - if (got_usplash) { |
1022 | - asprintf(&s1, "TEXT-URGENT %s", s); |
1023 | - |
1024 | - write_and_retry(fd, s1); |
1025 | - |
1026 | - free(s1); |
1027 | + if (got_plymouth) { |
1028 | + asprintf(&s1, "keys:%s", s); |
1029 | + ply_boot_client_tell_daemon_to_display_message(client, s1, |
1030 | + plymouth_response, |
1031 | + plymouth_response, NULL); |
1032 | + |
1033 | + ply_boot_client_ask_daemon_to_watch_for_keystroke(client, NULL, |
1034 | + plymouth_answer, |
1035 | + (ply_boot_client_response_handler_t)plymouth_answer, NULL); |
1036 | + ply_event_loop_run(ply_event_loop); |
1037 | + ply_boot_client_attach_to_event_loop(client, ply_event_loop); |
1038 | + ply_boot_client_tell_daemon_to_quit(client, 1, plymouth_response, |
1039 | + plymouth_response, NULL); |
1040 | + ply_event_loop_run(ply_event_loop); |
1041 | + } else { |
1042 | + printf("%s\n", s); |
1043 | + set_nocanonical_tty(0); |
1044 | + getchar(); |
1045 | + } |
1046 | + free(s); |
1047 | +} |
1048 | + |
1049 | +void plymouth_urgent(ply_boot_client_t *client, char *format, ...) { |
1050 | + char *s; |
1051 | + va_list argp; |
1052 | + |
1053 | + va_start(argp, format); |
1054 | + vasprintf(&s, format, argp); |
1055 | + va_end(argp); |
1056 | + |
1057 | + if (got_plymouth) { |
1058 | + ply_boot_client_tell_daemon_to_display_message(client, s, |
1059 | + plymouth_response, |
1060 | + plymouth_response, NULL); |
1061 | + ply_event_loop_process_pending_events(ply_event_loop); |
1062 | } else |
1063 | printf("%s\n", s); |
1064 | |
1065 | @@ -156,27 +171,26 @@ |
1066 | } |
1067 | |
1068 | |
1069 | -void usplash_success(int fd, char *format, ...) { |
1070 | - char *s, *s1; |
1071 | +void plymouth_success(ply_boot_client_t *client, char *format, ...) { |
1072 | + char *s; |
1073 | va_list argp; |
1074 | |
1075 | va_start(argp, format); |
1076 | vasprintf(&s, format, argp); |
1077 | va_end(argp); |
1078 | |
1079 | - if (got_usplash) { |
1080 | - asprintf(&s1, "SUCCESS %s", s); |
1081 | - |
1082 | - write_and_retry(fd, s1); |
1083 | - |
1084 | - free(s1); |
1085 | + if (got_plymouth) { |
1086 | + ply_boot_client_tell_daemon_to_display_message(client, s, |
1087 | + plymouth_response, |
1088 | + plymouth_response, NULL); |
1089 | + ply_event_loop_process_pending_events(ply_event_loop); |
1090 | } else if (verbose) |
1091 | printf("%s\n", s); |
1092 | |
1093 | free(s); |
1094 | } |
1095 | |
1096 | -void usplash_progress(int fd, int progress) { |
1097 | +void plymouth_progress(ply_boot_client_t *client, int progress) { |
1098 | static int prevprogress = -1; |
1099 | char *s; |
1100 | |
1101 | @@ -184,11 +198,11 @@ |
1102 | return; |
1103 | prevprogress = progress; |
1104 | |
1105 | - if (got_usplash) { |
1106 | - asprintf(&s, "PROGRESS %d", progress); |
1107 | - |
1108 | - write_and_retry(fd, s); |
1109 | - |
1110 | + if (got_plymouth) { |
1111 | + asprintf(&s, "md5check:verifying:%d", progress); |
1112 | + ply_boot_client_update_daemon(client, s, plymouth_response, |
1113 | + plymouth_response, NULL); |
1114 | + ply_event_loop_process_pending_events(ply_event_loop); |
1115 | free(s); |
1116 | } else { |
1117 | printf("%d%%...", progress); |
1118 | @@ -210,7 +224,7 @@ |
1119 | |
1120 | int main(int argc, char **argv) { |
1121 | |
1122 | - int pipe_fd, check_fd; |
1123 | + int check_fd; |
1124 | int failed = 0; |
1125 | |
1126 | FILE *md5_file; |
1127 | @@ -219,6 +233,7 @@ |
1128 | char hex_output[16*2 + 1]; |
1129 | char *checksum, *checkfile; |
1130 | ssize_t tsize, csize; |
1131 | + ply_boot_client_t *client = NULL; |
1132 | |
1133 | tsize = 0; |
1134 | csize = 0; |
1135 | @@ -236,18 +251,23 @@ |
1136 | |
1137 | parse_cmdline(); |
1138 | |
1139 | - pipe_fd = open(USPLASH_FIFO, O_WRONLY|O_NONBLOCK); |
1140 | - |
1141 | - if (pipe_fd == -1) { |
1142 | + client = ply_boot_client_new(); |
1143 | + if (client) |
1144 | + ply_event_loop = ply_event_loop_new(); |
1145 | + if (ply_event_loop) |
1146 | + ply_boot_client_attach_to_event_loop(client, ply_event_loop); |
1147 | + |
1148 | + if (!client || !ply_event_loop || !ply_boot_client_connect(client, plymouth_disconnected, NULL)) |
1149 | + { |
1150 | /* Fall back to text output */ |
1151 | - perror("Opening pipe"); |
1152 | - got_usplash = 0; |
1153 | + perror("Connecting to plymouth"); |
1154 | + got_plymouth = 0; |
1155 | } else |
1156 | - got_usplash = 1; |
1157 | - |
1158 | - |
1159 | - usplash_progress(pipe_fd, 0); |
1160 | - usplash_urgent(pipe_fd, "Checking integrity, this may take some time"); |
1161 | + got_plymouth = 1; |
1162 | + |
1163 | + |
1164 | + plymouth_progress(client, 0); |
1165 | + plymouth_urgent(client, "Checking integrity, this may take some time"); |
1166 | md5_file = fopen(argv[2], "r"); |
1167 | if (!md5_file) { |
1168 | perror("fopen md5_file"); |
1169 | @@ -272,12 +292,11 @@ |
1170 | |
1171 | md5_init(&state); |
1172 | |
1173 | - usplash_text(pipe_fd, "Checking %s", checkfile); |
1174 | + plymouth_text(client, "Checking %s", checkfile); |
1175 | |
1176 | check_fd = open(checkfile, O_RDONLY); |
1177 | if (check_fd < 0) { |
1178 | - usplash_timeout(pipe_fd, 300); |
1179 | - usplash_failure(pipe_fd, "%s", strerror(errno)); |
1180 | + plymouth_failure(client, "%s: %s", checkfile, strerror(errno)); |
1181 | sleep(10); |
1182 | } |
1183 | |
1184 | @@ -285,7 +304,7 @@ |
1185 | |
1186 | while (rsize > 0) { |
1187 | csize += rsize; |
1188 | - usplash_progress(pipe_fd, 100*((long double)csize)/tsize); |
1189 | + plymouth_progress(client, 100*((long double)csize)/tsize); |
1190 | |
1191 | md5_append(&state, (const md5_byte_t *)buf, rsize); |
1192 | rsize = read(check_fd, buf, sizeof(buf)); |
1193 | @@ -298,9 +317,9 @@ |
1194 | sprintf(hex_output + i * 2, "%02x", digest[i]); |
1195 | |
1196 | if (strncmp(hex_output, checksum, strlen(hex_output)) == 0) { |
1197 | - usplash_success(pipe_fd, "OK"); |
1198 | + plymouth_success(client, "%s: OK", checkfile); |
1199 | } else { |
1200 | - usplash_failure(pipe_fd, "mismatch"); |
1201 | + plymouth_failure(client, "%s: mismatch", checkfile); |
1202 | failed++; |
1203 | } |
1204 | free(checksum); |
1205 | @@ -308,14 +327,13 @@ |
1206 | } |
1207 | fclose(md5_file); |
1208 | if (failed) { |
1209 | - usplash_urgent(pipe_fd, "Check finished: errors found in %d files!", failed); |
1210 | + plymouth_urgent(client, "Check finished: errors found in %d files!", failed); |
1211 | } else { |
1212 | - usplash_urgent(pipe_fd, "Check finished: no errors found"); |
1213 | + plymouth_urgent(client, "Check finished: no errors found"); |
1214 | } |
1215 | - usplash_urgent(pipe_fd, "Press any key to reboot your system"); |
1216 | - usplash_timeout(pipe_fd, 86400); |
1217 | - set_nocanonical_tty(0); |
1218 | - getchar(); |
1219 | + |
1220 | + plymouth_prompt(client, "Press any key to reboot your system"); |
1221 | + |
1222 | reboot(LINUX_REBOOT_CMD_RESTART); |
1223 | return 0; |
1224 | |
1225 | |
1226 | === modified file 'conf.d/compcache' |
1227 | --- conf.d/compcache 2008-09-12 08:13:38 +0000 |
1228 | +++ conf.d/compcache 2011-10-06 10:04:28 +0000 |
1229 | @@ -1,1 +1,1 @@ |
1230 | -COMPCACHE_SIZE="25%" |
1231 | +COMPCACHE_SIZE="50%" |
1232 | |
1233 | === modified file 'debian/casper.init' |
1234 | --- debian/casper.init 2009-10-09 14:59:34 +0000 |
1235 | +++ debian/casper.init 2011-10-06 10:04:28 +0000 |
1236 | @@ -46,7 +46,7 @@ |
1237 | find "$path" -type f | xargs cat > /dev/null 2>&1 |
1238 | elif [ -f "$path" ]; then |
1239 | if [ -x "$path" ]; then |
1240 | - if file "$path" | grep -q 'dynamically linked'; then |
1241 | + if file -L "$path" | grep -q 'dynamically linked'; then |
1242 | for lib in $(ldd "$path" | awk '{ print $3 }'); do |
1243 | cache_path "$lib" |
1244 | done |
1245 | @@ -89,7 +89,7 @@ |
1246 | prompt= |
1247 | fi |
1248 | |
1249 | - for path in $(which halt) $(which reboot) /etc/rc?.d /etc/default $(which stty); do |
1250 | + for path in $(which halt) $(which reboot) /etc/rc?.d /etc/default $(which stty) /bin/plymouth /sbin/usplash_write; do |
1251 | cache_path "$path" |
1252 | done |
1253 | |
1254 | @@ -97,17 +97,23 @@ |
1255 | |
1256 | [ "$prompt" ] || return 0 |
1257 | |
1258 | - stty sane < /dev/console |
1259 | - |
1260 | # XXX - i18n |
1261 | - echo "Please remove the disc and close the tray (if any) then press ENTER: " > /dev/console |
1262 | - if [ -x /sbin/usplash_write ]; then |
1263 | - /sbin/usplash_write "TIMEOUT 86400" |
1264 | - /sbin/usplash_write "TEXT-URGENT Please remove the disc, close the tray (if any)" |
1265 | - /sbin/usplash_write "TEXT-URGENT and press ENTER to continue" |
1266 | + MSG="Please remove installation media and close the tray (if any) then press ENTER: " |
1267 | + |
1268 | + if [ -x /bin/plymouth ] && plymouth --ping; then |
1269 | + plymouth message --text="$MSG" |
1270 | + plymouth watch-keystroke > /dev/null |
1271 | + else |
1272 | + stty sane < /dev/console |
1273 | + |
1274 | + echo $MSG > /dev/console |
1275 | + if [ -x /sbin/usplash_write ]; then |
1276 | + /sbin/usplash_write "TIMEOUT 86400" |
1277 | + /sbin/usplash_write "TEXT-URGENT Please remove installation media, close the tray" |
1278 | + /sbin/usplash_write "TEXT-URGENT (if any) and press ENTER to continue" |
1279 | + fi |
1280 | + read x < /dev/console |
1281 | fi |
1282 | - |
1283 | - read x < /dev/console |
1284 | } |
1285 | |
1286 | case "$1" in |
1287 | |
1288 | === modified file 'debian/casper.install' |
1289 | --- debian/casper.install 2009-09-23 14:21:43 +0000 |
1290 | +++ debian/casper.install 2011-10-06 10:04:28 +0000 |
1291 | @@ -1,9 +1,12 @@ |
1292 | +bin/casper-a11y-enable usr/bin |
1293 | bin/casper-getty sbin |
1294 | bin/casper-login sbin |
1295 | bin/casper-new-uuid sbin |
1296 | bin/casper-preseed usr/share/casper |
1297 | bin/casper-reconfigure usr/share/casper |
1298 | +bin/casper-set-selections usr/share/casper |
1299 | bin/casper-snapshot sbin |
1300 | +bin/casper-update-initramfs usr/share/casper |
1301 | hooks usr/share/initramfs-tools |
1302 | scripts usr/share/initramfs-tools |
1303 | conf.d usr/share/initramfs-tools |
1304 | |
1305 | === modified file 'debian/casper.postinst' |
1306 | --- debian/casper.postinst 2006-07-21 11:19:15 +0000 |
1307 | +++ debian/casper.postinst 2011-10-06 10:04:28 +0000 |
1308 | @@ -1,5 +1,15 @@ |
1309 | #! /bin/sh |
1310 | |
1311 | +# If running from writable media, make sure that update-initramfs is |
1312 | +# properly a symlink. |
1313 | +if [ "$1" = configure ] && dpkg --compare-versions "$2" lt-nl 1.253 && \ |
1314 | + [ -w /cdrom ] && [ -e /usr/sbin/update-initramfs.distrib ] && \ |
1315 | + [ ! -L /usr/sbin/update-initramfs ] && \ |
1316 | + fgrep -qs update-initramfs.distrib /usr/sbin/update-initramfs; then |
1317 | + ln -nsf /usr/share/casper/casper-update-initramfs \ |
1318 | + /usr/sbin/update-initramfs |
1319 | +fi |
1320 | + |
1321 | update-initramfs -u |
1322 | |
1323 | #DEBHELPER# |
1324 | |
1325 | === modified file 'debian/changelog' |
1326 | --- debian/changelog 2010-09-28 23:07:27 +0000 |
1327 | +++ debian/changelog 2011-10-06 10:04:28 +0000 |
1328 | @@ -1,4 +1,732 @@ |
1329 | -casper (1.211) UNRELEASED; urgency=low |
1330 | +casper (1.285) UNRELEASED; urgency=low |
1331 | + |
1332 | + * scripts/casper: |
1333 | + - enable use of virtio devices in is_nice_device() |
1334 | + |
1335 | + -- Ante Karamatic <ivoks@ubuntu.com> Thu, 06 Oct 2011 05:29:13 -0400 |
1336 | + |
1337 | +casper (1.284) oneiric; urgency=low |
1338 | + |
1339 | + * bin/casper-a11y-enable: |
1340 | + - Set the session by calling AccountService via dbus instead of using |
1341 | + lightdm commands, as we cannot run lightdm-set-defaults as a user |
1342 | + - Add some extra spaces to make sure the startup scripts used to set a11y |
1343 | + settings are syntactically correct |
1344 | + - Add some other needed settings for various profiles for use in the login |
1345 | + manager |
1346 | + - Set correct permissions for the orca config directory once the config |
1347 | + files have been created |
1348 | + - Make sure the startup script checks take into account the ability to be |
1349 | + run from the initramfs |
1350 | + * ubiquity-hooks/30accessibility: |
1351 | + - Make sure that accessibility profile settings are properly applied at |
1352 | + install time, even if the user decided to try Ubuntu first, and then |
1353 | + run the install from the desktop |
1354 | + - Copy any existing orca configuration to the target system |
1355 | + - Make sure profile settings are not set up twice |
1356 | + |
1357 | + -- Luke Yelavich <themuso@ubuntu.com> Wed, 14 Sep 2011 16:19:59 +1000 |
1358 | + |
1359 | +casper (1.283) oneiric; urgency=low |
1360 | + |
1361 | + * scripts/casper-bottom/22screensaver: Set gsettings key instead of gconf. |
1362 | + * scripts/casper-bottom/44pk_allow_ubuntu: Drop old PolicyKit stuff, it's |
1363 | + gone for a long time. |
1364 | + * Drop scripts/casper-bottom/45disable_guest_account: We are not using gdm |
1365 | + any more, and lightdm implements that differently. |
1366 | + * Drop scripts/casper-bottom/47une_ubiquity, UNE/netbook-launcher are |
1367 | + history. |
1368 | + * Add scripts/casper-bottom/26disable_user_menu: Disable the user indicator |
1369 | + menu. (LP: #834137) |
1370 | + |
1371 | + -- Martin Pitt <martin.pitt@ubuntu.com> Wed, 07 Sep 2011 12:33:57 +0200 |
1372 | + |
1373 | +casper (1.282) oneiric; urgency=low |
1374 | + |
1375 | + * bin/casper-a11y-enable: Fix typo/syntax error in the set_session function |
1376 | + |
1377 | + -- Luke Yelavich <themuso@ubuntu.com> Wed, 07 Sep 2011 15:20:05 +1000 |
1378 | + |
1379 | +casper (1.281) oneiric; urgency=low |
1380 | + |
1381 | + * bin/casper-a11y-enable: |
1382 | + - Change all remaining references of gdm to lightdm, particularly in the |
1383 | + usage help text, and the username of the login manager |
1384 | + - Set the default login session to ubuntu-2d for screen reader and braille |
1385 | + profiles |
1386 | + |
1387 | + -- Luke Yelavich <themuso@ubuntu.com> Mon, 05 Sep 2011 15:02:31 +1000 |
1388 | + |
1389 | +casper (1.280) oneiric; urgency=low |
1390 | + |
1391 | + * Don't fail to set up autologin on a commented out autologin-user line |
1392 | + in lightdm custom conf. (LP: #836727) |
1393 | + |
1394 | + -- Mario Limonciello <Mario_Limonciello@Dell.com> Mon, 29 Aug 2011 09:16:00 -0500 |
1395 | + |
1396 | +casper (1.279) oneiric; urgency=low |
1397 | + |
1398 | + * hooks/casper: pull in overlayfs kernel module to allow use of overlayfs |
1399 | + as the union mount during install. |
1400 | + |
1401 | + -- Andy Whitcroft <apw@canonical.com> Fri, 19 Aug 2011 13:03:27 +0100 |
1402 | + |
1403 | +casper (1.278) oneiric; urgency=low |
1404 | + |
1405 | + * scripts/casper-bottom/15autologin: |
1406 | + - handling lightdm.conf in the case we already have a configuration file (to |
1407 | + avoid overwriting it on the cd if we don't have the default gtk greeter |
1408 | + installed if greeter not specified). Flavors should now use |
1409 | + set-lightdm-defaults to set the default session and greeter, even if |
1410 | + this still works with current alternatives method. |
1411 | + |
1412 | + -- Didier Roche <didrocks@ubuntu.com> Thu, 11 Aug 2011 09:05:43 +0200 |
1413 | + |
1414 | +casper (1.277) oneiric; urgency=low |
1415 | + |
1416 | + * Add an extra command-line argument to casper-a11y-helper which will |
1417 | + create a startup script that will be executed either on first boot after |
1418 | + install, or once we switch out of the initramfs to boot the live |
1419 | + session. This is needed to work around gsettings not working when |
1420 | + chrooting to the target environment with no dbus running. |
1421 | + * Add extra checks to the ubiquity accessibility target-config hook to |
1422 | + determine whether accessibility was enabled during the running of |
1423 | + ubiquity, and act accordingly. |
1424 | + * Call the casper a11y helper script with the newly added -script argument |
1425 | + as per above. |
1426 | + * Determine whether we are root by checking the $HOME variable. |
1427 | + * Do not call the a11y profile script in debug mode |
1428 | + |
1429 | + -- Luke Yelavich <themuso@ubuntu.com> Fri, 05 Aug 2011 15:22:27 +1000 |
1430 | + |
1431 | +casper (1.276) oneiric; urgency=low |
1432 | + |
1433 | + * If lightdm.conf exists, remove it first to avoid issues with symlinks. |
1434 | + |
1435 | + -- Stéphane Graber <stgraber@ubuntu.com> Thu, 04 Aug 2011 12:26:08 -0400 |
1436 | + |
1437 | +casper (1.275) oneiric; urgency=low |
1438 | + |
1439 | + * Update 15autologin to overwrite any existing lightdm configuration. |
1440 | + This should fix lightdm autologin for everyone. |
1441 | + Any custom lightdm configuration won't apply to the live environment. |
1442 | + |
1443 | + -- Stéphane Graber <stgraber@ubuntu.com> Wed, 03 Aug 2011 10:10:48 -0400 |
1444 | + |
1445 | +casper (1.274) oneiric; urgency=low |
1446 | + |
1447 | + * Remove log_end_message call (LP: #820284). |
1448 | + |
1449 | + -- Evan Dandrea <ev@ubuntu.com> Wed, 03 Aug 2011 12:01:57 +0100 |
1450 | + |
1451 | +casper (1.273) oneiric; urgency=low |
1452 | + |
1453 | + [ Mario Limonciello ] |
1454 | + * scripts/casper: Add support for SAS controllers now that 575297 is fixed. |
1455 | + (LP: #819564) |
1456 | + |
1457 | + [ Stéphane Graber ] |
1458 | + * lightdm no longer ships with /etc/lightdm/lightdm.conf in its package. |
1459 | + Updating 15autologin casper hook to create one when missing. (LP: #819609) |
1460 | + |
1461 | + -- Stéphane Graber <stgraber@ubuntu.com> Tue, 02 Aug 2011 17:47:10 -0400 |
1462 | + |
1463 | +casper (1.272) oneiric; urgency=low |
1464 | + |
1465 | + [ Andy Whitcroft ] |
1466 | + * scripts/casper: add support for overlayfs for union mounts of the liveCD |
1467 | + |
1468 | + [ Luke Yelavich ] |
1469 | + * Port the rest of the accessibility profile settings to gsettings, except |
1470 | + where gconf settings are required, eg firefox and gksu |
1471 | + * bin/casper-a11y-enable: Extract the username from the $HOME environment |
1472 | + variable, as $USER is not set when ubiquity calls the script, even with |
1473 | + all privileges dropped |
1474 | + |
1475 | + -- Luke Yelavich <themuso@ubuntu.com> Wed, 27 Jul 2011 15:20:11 +1000 |
1476 | + |
1477 | +casper (1.271) oneiric; urgency=low |
1478 | + |
1479 | + * bin/casper-a11y-enable: |
1480 | + - Use -x when enabling debug mode |
1481 | + - Adjust some variable quoting when checking for package versions |
1482 | + - Do not break out of the command-line checking loop at all, let it run its |
1483 | + course until there are no command-line values left to parse |
1484 | + |
1485 | + -- Luke Yelavich <themuso@ubuntu.com> Fri, 01 Jul 2011 11:47:31 +0100 |
1486 | + |
1487 | +casper (1.270) oneiric; urgency=low |
1488 | + |
1489 | + * Depend on lzma for our diverted update-initramfs (LP: #790794). |
1490 | + |
1491 | + -- Colin Watson <cjwatson@ubuntu.com> Thu, 30 Jun 2011 10:30:49 +0100 |
1492 | + |
1493 | +casper (1.269) oneiric; urgency=low |
1494 | + |
1495 | + [ Luke Yelavich ] |
1496 | + * bin/casper-a11y-helper: |
1497 | + - Migrate blindness and braille accessibility profiles to gsettings for |
1498 | + all except gksu, which still uses gconf to store settings. |
1499 | + |
1500 | + [ Colin Watson ] |
1501 | + * Add LightDM autologin support (LP: #797669). |
1502 | + |
1503 | + -- Colin Watson <cjwatson@ubuntu.com> Fri, 17 Jun 2011 12:52:44 +0100 |
1504 | + |
1505 | +casper (1.268) oneiric; urgency=low |
1506 | + |
1507 | + The big accessibility profile code refactor: |
1508 | + * debian/copyright: Update Canonical copyright years to include 2011 |
1509 | + * bin/casper-a11y-helper: Create a new script that will be callable from |
1510 | + casper/the initramfs, ubiquity at the maybe-ubiquity screen, and ubiquity |
1511 | + when running through ubiquity-hooks during the installation process. |
1512 | + - Copy accessibility profile settings from both |
1513 | + scripts/casper-bottom/30accessibility and ubiquity-hooks/30accessibility |
1514 | + - Refactor profile settings into groups of common settings for low vision |
1515 | + and motor profiles, with the rest of the settings broken up into |
1516 | + individual methods for each profile |
1517 | + - Add options to allow for calling the script from within the initramfs |
1518 | + - Do a few more package checks to make sure the target environment has the |
1519 | + commands we need to set things up |
1520 | + * scripts/casper-bottom/30accessibility && ubiquity-hooks/30accessibility: |
1521 | + - Remove old profile settings and support code, and make use of the new |
1522 | + a11y helper script |
1523 | + - Call the helper with debugging enabled for now, to help with testing |
1524 | + to make sure the new helper is executing properly |
1525 | + * debian/casper.install: Add casper-a11y-helper |
1526 | + |
1527 | + -- Luke Yelavich <themuso@ubuntu.com> Wed, 08 Jun 2011 15:35:39 +1000 |
1528 | + |
1529 | +casper (1.267) oneiric; urgency=low |
1530 | + |
1531 | + * scripts/casper-bottom/32disable_hibernation: Drop obsolete |
1532 | + gnome-power-manager and kde-profile configuration, and just globally |
1533 | + disable hibernation via policykit. (LP: #610351) |
1534 | + |
1535 | + -- Martin Pitt <martin.pitt@ubuntu.com> Wed, 08 Jun 2011 07:25:43 +0200 |
1536 | + |
1537 | +casper (1.266) oneiric; urgency=low |
1538 | + |
1539 | + * Disable release-upgrade prompts in the live session (LP: #777759). |
1540 | + |
1541 | + -- Colin Watson <cjwatson@ubuntu.com> Thu, 05 May 2011 12:28:33 +0100 |
1542 | + |
1543 | +casper (1.265) natty; urgency=low |
1544 | + |
1545 | + * scripts/casper-bottom/30accessibility && ubiquity-hooks/30accessibility: |
1546 | + - Use gsettings to adjust yelp caret navigation, as properly fixed in |
1547 | + yelp 3.0.1 |
1548 | + * ubiquity-hooks/30accessibility: Fix the gset function to set settings for |
1549 | + the target username, and not the username of the live user |
1550 | + |
1551 | + -- Luke Yelavich <themuso@ubuntu.com> Mon, 11 Apr 2011 16:47:46 +1000 |
1552 | + |
1553 | +casper (1.264) natty; urgency=low |
1554 | + |
1555 | + * scripts/casper-bottom/30accessibility && ubiquity-hooks/30accessibility: |
1556 | + - Enable yelp carrot navigation by default in the moderate visual |
1557 | + impairment, blindness, and Braille profiles, thanks to Attila Hammer |
1558 | + for the patch (LP: #752503) |
1559 | + |
1560 | + -- Luke Yelavich <themuso@ubuntu.com> Thu, 07 Apr 2011 10:17:52 +1000 |
1561 | + |
1562 | +casper (1.263) natty; urgency=low |
1563 | + |
1564 | + [ Evan Dandrea ] |
1565 | + * Suppress Log Out item in the live session (LP: #750140). |
1566 | + |
1567 | + [ Martin Pitt ] |
1568 | + * scripts/casper-helpers, find_cow_device(): Do not ever probe floppy |
1569 | + devices. There are lots of computers which still have a floppy controller |
1570 | + (and thus a /dev/fd0), but no actual floppy. Trying to send anything to |
1571 | + /dev/fd0 will result in very long timeouts. Here this causes booting the |
1572 | + live CD to take more than 30 minutes. (See also LP #539515 for the |
1573 | + corresponding bug in udev/udisks). (LP: #739774) |
1574 | + |
1575 | + -- Martin Pitt <martin.pitt@ubuntu.com> Mon, 04 Apr 2011 16:12:34 +0200 |
1576 | + |
1577 | +casper (1.262) natty; urgency=low |
1578 | + |
1579 | + * scripts/casper-bottom/30accessibility: |
1580 | + - Don't blindly assume that there are no orca config files/directories in |
1581 | + the created user's home directory. A derivative may have placed something |
1582 | + in /etc/skel as part of the live filesystem, and we shouldn't be |
1583 | + clobbering it, thanks to Attila Hammer for the pointer (LP: #744227) |
1584 | + |
1585 | + -- Luke Yelavich <themuso@ubuntu.com> Mon, 04 Apr 2011 17:32:40 +1000 |
1586 | + |
1587 | +casper (1.261) natty; urgency=low |
1588 | + |
1589 | + * scripts/casper-bottom/30accessibility && ubiquity-hooks/30accessibility: |
1590 | + - Also use classic GNOME for the "motor difficulties, pointing devices" |
1591 | + profile, due to issues with on-screen keyboards and unity search |
1592 | + |
1593 | + -- Luke Yelavich <themuso@ubuntu.com> Mon, 04 Apr 2011 16:15:59 +1000 |
1594 | + |
1595 | +casper (1.260) natty; urgency=low |
1596 | + |
1597 | + [ Colin Watson ] |
1598 | + * Force apt-cdrom's mount point to /cdrom (LP: #723357). I've left the |
1599 | + /media/cdrom symlink introduced in 1.259 in place anyway, as it's |
1600 | + harmless on the live CD and may save some effort elsewhere. |
1601 | + |
1602 | + [ Luke Yelavich ] |
1603 | + * scripts/casper-bottom/30accessibility && ubiquity-hooks/30accessibility: |
1604 | + - Set the default session to classic GNOME for moderate visual |
1605 | + impairement, blindness, and braille accessibility profiles (LP: #734659) |
1606 | + - Fix a few dangling references to user-settings.py (LP: #744214) |
1607 | + - Don't set /desktop/gnome/accessibility/keyboard/enable for vision |
1608 | + related profiles (LP: #711131) |
1609 | + |
1610 | + -- Luke Yelavich <themuso@ubuntu.com> Fri, 01 Apr 2011 16:13:07 +1100 |
1611 | + |
1612 | +casper (1.259) natty; urgency=low |
1613 | + |
1614 | + * scripts/casper-bottom/05mountpoints: Create a /media/cdrom -> /cdrom |
1615 | + symlink, to work around apt's changed default mount point for Alpha-3. |
1616 | + (LP: #727783) |
1617 | + |
1618 | + -- Martin Pitt <martin.pitt@ubuntu.com> Thu, 03 Mar 2011 11:52:38 +0100 |
1619 | + |
1620 | +casper (1.258) natty; urgency=low |
1621 | + |
1622 | + * scripts/casper-bottom/30accessibility && ubiquity-hooks/30accessibility: |
1623 | + - Remove code that removes applets from the panel. Indicators are the |
1624 | + way forward, and we have unity, which works differently. |
1625 | + - Write orca configuration in json format |
1626 | + - Set some settings in gsettings parallel to gconf, next cycle there |
1627 | + will be a full migration to gsettings. |
1628 | + - Do not change the default window manager setting, this will be done |
1629 | + according to what is detected with unity/compiz et al. |
1630 | + |
1631 | + -- Luke Yelavich <themuso@ubuntu.com> Wed, 23 Feb 2011 15:18:23 +1100 |
1632 | + |
1633 | +casper (1.257) natty; urgency=low |
1634 | + |
1635 | + * Handle $cow_backing already being mounted elsewhere (LP: #683260). |
1636 | + |
1637 | + -- Evan Dandrea <ev@ubuntu.com> Fri, 11 Feb 2011 16:41:11 +0000 |
1638 | + |
1639 | +casper (1.256) natty; urgency=low |
1640 | + |
1641 | + * Add scripts/casper-bottom/49kubuntu_mobile_session to run Kubuntu |
1642 | + mobile session |
1643 | + |
1644 | + -- Jonathan Riddell <jriddell@ubuntu.com> Thu, 10 Feb 2011 17:42:34 +0000 |
1645 | + |
1646 | +casper (1.255) natty; urgency=low |
1647 | + |
1648 | + [ Evan Dandrea ] |
1649 | + * Don't disable the free space notifier if using persistent storage. |
1650 | + |
1651 | + [ Daniel Manrique ] |
1652 | + * scripts/casper-bottom/23networking: Strip quotes from DNSDOMAIN as |
1653 | + returned by ipconfig, and sanitize the domain entry to ensure the |
1654 | + generated /etc/resolv.conf is formatted correctly (LP: #709364). |
1655 | + |
1656 | + -- Colin Watson <cjwatson@ubuntu.com> Tue, 01 Feb 2011 11:05:13 +0000 |
1657 | + |
1658 | +casper (1.254) natty; urgency=low |
1659 | + |
1660 | + * More fixes to the USB update-initramfs shim (LP: #591207): |
1661 | + - Make the shim a proper executable in |
1662 | + /usr/share/casper/casper-update-initramfs and symlink to it if |
1663 | + necessary at boot time, so that new versions of this shim are |
1664 | + automatically installed when casper is upgraded. |
1665 | + - $bootdir/initrd.img may exist when $bootdir/vmlinuz doesn't; for |
1666 | + example, if we're running off a fresh live USB stick and the kernel |
1667 | + hasn't yet been upgraded. |
1668 | + |
1669 | + -- Colin Watson <cjwatson@ubuntu.com> Thu, 20 Jan 2011 14:18:59 +0000 |
1670 | + |
1671 | +casper (1.253) natty; urgency=low |
1672 | + |
1673 | + * Don't try to process the initramfs and kernel if the real update- |
1674 | + initramfs hasn't generated anything (LP: #557023). |
1675 | + |
1676 | + -- Evan Dandrea <ev@ubuntu.com> Wed, 05 Jan 2011 12:07:47 +0000 |
1677 | + |
1678 | +casper (1.252) natty; urgency=low |
1679 | + |
1680 | + * Cope with forthcoming console-setup changes: handle |
1681 | + /etc/default/keyboard if present, and in that case preseed |
1682 | + keyboard-configuration/* templates. |
1683 | + |
1684 | + -- Colin Watson <cjwatson@ubuntu.com> Tue, 21 Dec 2010 16:44:54 +0000 |
1685 | + |
1686 | +casper (1.251) natty; urgency=low |
1687 | + |
1688 | + * scripts/casper-bottom/44pk_allow_ubuntu: Tweak the default PolicyKit |
1689 | + policy to avoid dropping wireless connections when a user switches to |
1690 | + another VT (LP: #656757) |
1691 | + |
1692 | + -- Mathieu Trudel-Lapierre <mathieu-tl@ubuntu.com> Sat, 04 Dec 2010 13:11:23 +0000 |
1693 | + |
1694 | +casper (1.250) natty; urgency=low |
1695 | + |
1696 | + * Use LDLIBS rather than LDFLAGS for 'pkg-config --libs ply-boot-client', |
1697 | + fixing link line ordering. |
1698 | + |
1699 | + -- Colin Watson <cjwatson@ubuntu.com> Mon, 29 Nov 2010 13:28:17 +0000 |
1700 | + |
1701 | +casper (1.249) natty; urgency=low |
1702 | + |
1703 | + [ arky ] |
1704 | + * Add universal access preferences taskbar icon in all accessibility |
1705 | + profiles (LP: #621561). |
1706 | + |
1707 | + [ Serge Hallyn ] |
1708 | + * change scripts/casper-helpers:try_mount() to not panic when regular |
1709 | + mounts fail. Instead, return an error code so the caller can decide. |
1710 | + (LP: #624632) |
1711 | + |
1712 | + [ Evan Broder ] |
1713 | + * scripts/casper: Check for uuid= command line parameter in addition to |
1714 | + /conf/uuid.conf file in initrd. (LP: #671786) |
1715 | + |
1716 | + [ Colin Watson ] |
1717 | + * Document new uuid= option in casper(7). |
1718 | + |
1719 | + -- Colin Watson <cjwatson@ubuntu.com> Mon, 29 Nov 2010 12:49:36 +0000 |
1720 | + |
1721 | +casper (1.248) maverick; urgency=low |
1722 | + |
1723 | + * ubiquity-hooks/30accessibility: Create .local/share subdirectory structure |
1724 | + before copying files. Also copy orca files to ~/.local/share, instead |
1725 | + ~/. Thanks to Attila Hammer for the patch. (LP: #650846) |
1726 | + |
1727 | + -- Luke Yelavich <themuso@ubuntu.com> Tue, 05 Oct 2010 15:35:35 +1100 |
1728 | + |
1729 | +casper (1.247) maverick; urgency=low |
1730 | + |
1731 | + * Check for the existance of a kubuntu-default-settings directory before |
1732 | + running scripts/casper-bottom/48kubuntu_disable_restart_notifications |
1733 | + |
1734 | + -- Jonathan Thomas <echidnaman@kubuntu.org> Mon, 04 Oct 2010 17:43:21 -0400 |
1735 | + |
1736 | +casper (1.246) maverick; urgency=low |
1737 | + |
1738 | + * Added scripts/casper-bottom/07remove_oem_config |
1739 | + - Added new script to remove oem-config if installed on the image on ARM, |
1740 | + as it should never be installed on a non-preinstalled image. This is |
1741 | + necessary because we can't exclude oem-config on the seed on a |
1742 | + per-subarchitecture basis |
1743 | + * scripts/casper/47une_ubiquity |
1744 | + - Cause gconf changes to be made to both the 2D & 3D UNE launchers so |
1745 | + ubiquity properly shows up in favorites regardless of which launcher is |
1746 | + used (LP: #643791) |
1747 | + |
1748 | + -- Michael Casadevall <mcasadevall@ubuntu.com> Mon, 27 Sep 2010 17:52:50 -0400 |
1749 | + |
1750 | +casper (1.245) maverick; urgency=low |
1751 | + |
1752 | + * Add scripts/casper-bottom/49disable_kubuntu_restart_notify for a more |
1753 | + surgical solution at disabling restart notifications on the Live CD |
1754 | + * Don't remove the notificationhelper.desktop file in 34disable_kde_services |
1755 | + |
1756 | + -- Jonathan Thomas <echidnaman@kubuntu.org> Tue, 28 Sep 2010 19:20:26 -0400 |
1757 | + |
1758 | +casper (1.244) maverick; urgency=low |
1759 | + |
1760 | + * scripts/casper-bottom/30accessibility && ubiquity-hooks/30accessibility: |
1761 | + - Use orca's new settings location in ~/.local/share, as orca is now |
1762 | + more XDG compliant |
1763 | + |
1764 | + -- Luke Yelavich <themuso@ubuntu.com> Thu, 16 Sep 2010 09:38:21 +1000 |
1765 | + |
1766 | +casper (1.243) maverick; urgency=low |
1767 | + |
1768 | + * Backport from live-initramfs 1.154.6-1: |
1769 | + - Adding patch from Thierry Walrant <debian.tgc@walrant.net> to allow |
1770 | + setting a path for the persistence files through persistent-path boot |
1771 | + parameter (Closes: #512661). |
1772 | + * Follow symlinks when checking for dynamically linked files at reboot. |
1773 | + |
1774 | + -- Colin Watson <cjwatson@ubuntu.com> Tue, 07 Sep 2010 10:53:32 +0100 |
1775 | + |
1776 | +casper (1.242) maverick; urgency=low |
1777 | + |
1778 | + * Update scripts/casper-bottom/34disable_kde_services to stop some new |
1779 | + akonadi services |
1780 | + |
1781 | + -- Jonathan Riddell <jriddell@ubuntu.com> Mon, 06 Sep 2010 14:20:54 +0100 |
1782 | + |
1783 | +casper (1.241) maverick; urgency=low |
1784 | + |
1785 | + [ Mathieu Trudel-Lapierre ] |
1786 | + * Use configure_networking at do_netmount; it's at least more resilient |
1787 | + than a simple ipconfig call since it retries, and it properly parses |
1788 | + BOOTIF to know which devices to configure. (LP: #602273) |
1789 | + |
1790 | + [ Colin Watson ] |
1791 | + * Parse the machine-readable file written out by ipconfig rather than |
1792 | + trying to parse its human-readable output. |
1793 | + |
1794 | + -- Colin Watson <cjwatson@ubuntu.com> Fri, 20 Aug 2010 13:37:56 +0100 |
1795 | + |
1796 | +casper (1.240) maverick; urgency=high |
1797 | + |
1798 | + * scripts/casper |
1799 | + - Added platform-sata_mv to is_nice_device() to allow Marvell |
1800 | + Dove A0 and AVD1 to properly boot live media (LP: #618489) |
1801 | + |
1802 | + -- Michael Casadevall <mcasadevall@ubuntu.com> Mon, 16 Aug 2010 19:36:56 +0800 |
1803 | + |
1804 | +casper (1.239) maverick; urgency=low |
1805 | + |
1806 | + * scripts/casper-bottom/30accessibility && ubiquity-hooks/30accessibility: |
1807 | + - Instead of mangling the main sudoers file, create a new file in |
1808 | + /etc/sudoers.d and set permissions appropriately |
1809 | + |
1810 | + -- Luke Yelavich <themuso@ubuntu.com> Wed, 11 Aug 2010 13:46:03 +1000 |
1811 | + |
1812 | +casper (1.238) maverick; urgency=low |
1813 | + |
1814 | + [ Alex Chiang ] |
1815 | + * Disable ureadahead-other job as well as ureadahead (LP: #605695). |
1816 | + |
1817 | + -- Colin Watson <cjwatson@ubuntu.com> Thu, 15 Jul 2010 11:49:36 +0100 |
1818 | + |
1819 | +casper (1.237) maverick; urgency=low |
1820 | + |
1821 | + [ Colin Watson ] |
1822 | + * Add btrfs support. |
1823 | + * Make ip=* command-line parsing more precise (thanks, Bill Nickless; |
1824 | + LP: #586553). |
1825 | + * Make the USB update-initramfs shim cope with vmlinuz and initrd.img |
1826 | + being in /boot rather than / (LP: #591207). |
1827 | + * Depend on file for /etc/init.d/casper (thanks, Alon Swartz; |
1828 | + LP: #591213). |
1829 | + * Conflict with live-initramfs, as they overlap and people can pick one or |
1830 | + the other (LP: #453476). |
1831 | + |
1832 | + [ Martin Pitt ] |
1833 | + * debian/casper.init: Change shutdown splash message to refer to |
1834 | + "installation media" instead of "disc"; a lot of installs happen |
1835 | + from USB sticks these days. Thanks to Debbie Beliveau for the idea. |
1836 | + |
1837 | + -- Colin Watson <cjwatson@ubuntu.com> Mon, 28 Jun 2010 16:53:17 +0100 |
1838 | + |
1839 | +casper (1.236) lucid; urgency=low |
1840 | + |
1841 | + * Check for LTS in the release name (LP: #558488). |
1842 | + |
1843 | + -- Evan Dandrea <evand@ubuntu.com> Wed, 21 Apr 2010 11:12:32 +0100 |
1844 | + |
1845 | +casper (1.235) lucid; urgency=low |
1846 | + |
1847 | + * Unbreak early command from previous commit. |
1848 | + |
1849 | + -- Mario Limonciello <Mario_Limonciello@Dell.com> Thu, 15 Apr 2010 02:54:15 -0500 |
1850 | + |
1851 | +casper (1.234) lucid; urgency=low |
1852 | + |
1853 | + * Only bring the network up while running preseed/early_command if |
1854 | + preseed/allow-network=true. |
1855 | + |
1856 | + -- Colin Watson <cjwatson@ubuntu.com> Wed, 14 Apr 2010 15:56:40 +0100 |
1857 | + |
1858 | +casper (1.233) lucid; urgency=low |
1859 | + |
1860 | + * Bring the network up while running preseed/early_command. |
1861 | + * Fix use of debconf passthrough frontend; DEBCONF_READFD and |
1862 | + DEBCONF_WRITEFD were backwards, and DEBIAN_HAS_FRONTEND and |
1863 | + DEBCONF_REDIR needed to be unset or else confmodule scripts would end up |
1864 | + trying to talk to closed file descriptors. |
1865 | + * Run debconf-communicate with a read-only template database and separate |
1866 | + config databases, and copy any changed values back to the master |
1867 | + databases at the end. This allows us to use the noninteractive frontend |
1868 | + rather than passthrough when running apt-get in preseed/early_command or |
1869 | + dpkg to install driver updates, thereby ensuring that the template |
1870 | + database is properly initialised (LP: #557011). |
1871 | + |
1872 | + -- Colin Watson <cjwatson@ubuntu.com> Mon, 12 Apr 2010 23:41:09 +0100 |
1873 | + |
1874 | +casper (1.232) lucid; urgency=low |
1875 | + |
1876 | + * bump compcache size to 50% on live images for machines with less than |
1877 | + 512MiB. This makes sure we don't hit OOM errors on systems with only |
1878 | + 256MiB of RAM. |
1879 | + |
1880 | + -- Oliver Grawert <ogra@ubuntu.com> Mon, 12 Apr 2010 08:10:06 +0200 |
1881 | + |
1882 | +casper (1.231) lucid; urgency=low |
1883 | + |
1884 | + [ Jonathan Riddell ] |
1885 | + * Remove 37kubuntu_netbook_installer_link, now done with a patch in |
1886 | + kdebase-workspace |
1887 | + |
1888 | + [ Colin Watson ] |
1889 | + * If copying live media to RAM or disk, explicitly copy .disk, since * |
1890 | + won't expand to include it (LP: #526305). |
1891 | + * Cache /bin/plymouth and /sbin/usplash_write before ejecting the CD, in |
1892 | + the hope that that helps with I/O errors on reboot (see LP #539027). |
1893 | + |
1894 | + [ Luke Yelavich ] |
1895 | + * ubiquity-hooks/30accessibility: Copy the orca settings directory to the |
1896 | + gdm home directory, to allow for preferred orca settings to be used in |
1897 | + gdm (LP: #551515). |
1898 | + |
1899 | + -- Luke Yelavich <themuso@ubuntu.com> Fri, 09 Apr 2010 14:00:51 +1000 |
1900 | + |
1901 | +casper (1.230) lucid; urgency=low |
1902 | + |
1903 | + * Don't save the hardware clock on live CD reboot; we used to do this in |
1904 | + the sysvinit world, but it regressed when we switched to Upstart |
1905 | + (thanks, Norm Pierce; LP: #436535). |
1906 | + * When running update-initramfs on writable media, update initrd.lz rather |
1907 | + than initrd.gz if it's present, and make the update process a bit safer |
1908 | + while we're there (LP: #489736). |
1909 | + * Handle toram and todisk=DEVICE options on command line (LP: #526305). |
1910 | + * Policy version 3.8.4: no changes required. |
1911 | + * Convert to source format 3.0 (native). |
1912 | + |
1913 | + -- Colin Watson <cjwatson@ubuntu.com> Tue, 30 Mar 2010 11:41:24 +0100 |
1914 | + |
1915 | +casper (1.229) lucid; urgency=low |
1916 | + |
1917 | + [ Jonathan Riddell ] |
1918 | + * Update scripts/casper-bottom/34disable_kde_services for lucid |
1919 | + |
1920 | + [ Evan Dandrea ] |
1921 | + * Don't let apt try to auto-detect the CD-ROM device using udev. We |
1922 | + already know what it is, and using udev to find it again wont work |
1923 | + for USB disks. |
1924 | + |
1925 | + -- Evan Dandrea <evand@ubuntu.com> Tue, 23 Mar 2010 11:42:00 +0000 |
1926 | + |
1927 | +casper (1.228) lucid; urgency=low |
1928 | + |
1929 | + * Update for the new libplymouth2. |
1930 | + |
1931 | + -- Steve Langasek <steve.langasek@ubuntu.com> Fri, 12 Mar 2010 18:37:02 -0800 |
1932 | + |
1933 | +casper (1.227) lucid; urgency=low |
1934 | + |
1935 | + * casper-md5check: port from usplash to plymouth. LP: #500198 |
1936 | + * fix up our reliance on usplash, /dev/console elsewhere. LP: #506418. |
1937 | + |
1938 | + -- Steve Langasek <steve.langasek@ubuntu.com> Fri, 12 Mar 2010 01:12:28 -0800 |
1939 | + |
1940 | +casper (1.226) lucid; urgency=low |
1941 | + |
1942 | + [ Colin Watson ] |
1943 | + * Stop using removed nfsro option for NFS/unionfs (thanks, Bernhard |
1944 | + Seibold; LP: #460781). |
1945 | + |
1946 | + [ Jonathan Riddell ] |
1947 | + * Remove scripts/casper-bottom/48enable_kubuntu_netbook and ubiquity- |
1948 | + hooks/48enable_kubuntu_netbook now enabled in kubuntu-netbook- |
1949 | + default-settings |
1950 | + |
1951 | + -- Jonathan Riddell <jriddell@ubuntu.com> Wed, 10 Mar 2010 22:23:04 +0000 |
1952 | + |
1953 | +casper (1.225) lucid; urgency=low |
1954 | + |
1955 | + * Add ubiquity-hooks/49kubuntu_gnome_icon_cache to recreate the Gnome |
1956 | + icon cache on Kubuntu CDs, removed by livecd-rootfs |
1957 | + |
1958 | + -- Jonathan Riddell <jriddell@ubuntu.com> Mon, 08 Mar 2010 11:47:01 +0000 |
1959 | + |
1960 | +casper (1.224) lucid; urgency=low |
1961 | + |
1962 | + * Remove ubiquity-hooks/35copy_wallpaper_cache as now implement it in |
1963 | + ubiquity itself (LP: #530024) |
1964 | + |
1965 | + -- Didier Roche <didrocks@ubuntu.com> Mon, 01 Mar 2010 19:41:45 +0100 |
1966 | + |
1967 | +casper (1.223) lucid; urgency=low |
1968 | + |
1969 | + * Bind-mount /dev, /proc, and /sys into /root while running apt-cdrom. |
1970 | + * Copy /lib/udev/rules.d/60-cdrom_id.rules into the initramfs to go with |
1971 | + /lib/udev/cdrom_id, so that apt-cdrom will be able to find ID_CDROM=1 |
1972 | + entries when we run it. This should stop update-notifier from |
1973 | + repeatedly popping up during the live session. |
1974 | + |
1975 | + -- Colin Watson <cjwatson@ubuntu.com> Tue, 23 Feb 2010 01:35:30 +0000 |
1976 | + |
1977 | +casper (1.222) lucid; urgency=low |
1978 | + |
1979 | + * scripts/casper-bottom/47une_ubiquity: |
1980 | + - get back ubiquity favorite icon in UNE live (LP: #524381) |
1981 | + - rename the script from 47unr_ubiquity to 47une_ubiquity as well |
1982 | + as "UNR" mention |
1983 | + |
1984 | + -- Didier Roche <didrocks@ubuntu.com> Mon, 22 Feb 2010 14:01:25 +0100 |
1985 | + |
1986 | +casper (1.221) lucid; urgency=low |
1987 | + |
1988 | + * Remove the rest of the mythbuntu delta from 10adduser. It will be |
1989 | + maintained in the mythbuntu-live-autostart package instead so that |
1990 | + users from ~mythbuntu-dev can administer it. |
1991 | + |
1992 | + -- Mario Limonciello <superm1@ubuntu.com> Sun, 21 Feb 2010 20:22:00 -0600 |
1993 | + |
1994 | +casper (1.220) lucid; urgency=low |
1995 | + |
1996 | + * scripts/casper: calculate memory without "head" utility, thanks to |
1997 | + Petar Bogdanovic (LP: #25496). |
1998 | + |
1999 | + -- Kees Cook <kees@ubuntu.com> Fri, 19 Feb 2010 14:04:18 -0800 |
2000 | + |
2001 | +casper (1.219) lucid; urgency=low |
2002 | + |
2003 | + [ Mario Limonciello ] |
2004 | + * Disable casper-reconfigure from 22gnome_panel_data. It doesn't (appear) to |
2005 | + serve a functional purpose as the postinst does nothing different for laptops. |
2006 | + |
2007 | + [ Didier Roche ] |
2008 | + * add 35copy_wallpaper_cache to copy the wallpaper cache created at boot time |
2009 | + to the main user's directory. First boot will take it into account in |
2010 | + ureadahead profiling |
2011 | + |
2012 | + -- Didier Roche <didrocks@ubuntu.com> Wed, 17 Feb 2010 19:14:53 +0100 |
2013 | + |
2014 | +casper (1.218) lucid; urgency=low |
2015 | + |
2016 | + * Allow dpkg and apt-get to be installed from within commands that operate |
2017 | + in the chroot via early_command or driver updates. (LP: #521218) |
2018 | + |
2019 | + -- Mario Limonciello <Mario_Limonciello@Dell.com> Tue, 16 Feb 2010 13:38:48 -0600 |
2020 | + |
2021 | +casper (1.217) lucid; urgency=low |
2022 | + |
2023 | + [ Luke Yelavich ] |
2024 | + * ubiquity-hooks/30accessibility: Enable accessible login for the blindness |
2025 | + and braile accessibility profiles. |
2026 | + |
2027 | + [ Colin Watson ] |
2028 | + * Use egrep rather than 'grep -E' (LP: #512386). |
2029 | + |
2030 | + [ Julien Lavergne ] |
2031 | + * 15autologin: Add support for LXDM autologin (LP: #511976). |
2032 | + |
2033 | + [ Evan Dandrea ] |
2034 | + * Properly shut down debconf-communicate so that its database gets |
2035 | + written (LP: #518272). |
2036 | + |
2037 | + -- Evan Dandrea <evand@ubuntu.com> Thu, 11 Feb 2010 08:25:53 +0000 |
2038 | + |
2039 | +casper (1.216) lucid; urgency=low |
2040 | + |
2041 | + [ Luke Yelavich ] |
2042 | + * scripts/casper-bottom/30accessibility && ubiquity-hooks/30accessibility: |
2043 | + - Remove code to disable pulseaudio, as it is no longer needed, and |
2044 | + the supporting code in the pulseaudio package was removed a long time |
2045 | + ago. |
2046 | + - Set the default empathy theme to classic for blindness and braille |
2047 | + accessibility profiles. |
2048 | + |
2049 | + [ Jamie Bennett ] |
2050 | + * Speed up work around debconf-communicate. Replace several calls to |
2051 | + debconf-communicate with one persistent invocation followed by |
2052 | + confmodule calls. |
2053 | + * Disable guest account by rm'ing rather than waiting for dpkg to |
2054 | + remove it. |
2055 | + |
2056 | + -- Colin Watson <cjwatson@ubuntu.com> Wed, 03 Feb 2010 16:41:57 -0800 |
2057 | + |
2058 | +casper (1.215) lucid; urgency=low |
2059 | |
2060 | [ Mario Limonciello ] |
2061 | * Support multiple preseed file/urlarguments on the kernel commandline |
2062 | @@ -18,6 +746,46 @@ |
2063 | |
2064 | -- Jonathan Riddell <jriddell@ubuntu.com> Wed, 27 Jan 2010 13:55:42 +0000 |
2065 | |
2066 | +casper (1.214) lucid; urgency=low |
2067 | + |
2068 | + * 15autologin: simplify the code with escape character evaluation |
2069 | + (LP: #505140) |
2070 | + |
2071 | + -- Didier Roche <didrocks@ubuntu.com> Tue, 12 Jan 2010 08:57:05 +0100 |
2072 | + |
2073 | +casper (1.213) lucid; urgency=low |
2074 | + |
2075 | + * printf does not evaluate escape characters in the argument string. |
2076 | + |
2077 | + -- Evan Dandrea <evand@ubuntu.com> Mon, 11 Jan 2010 11:02:12 +0000 |
2078 | + |
2079 | +casper (1.212) lucid; urgency=low |
2080 | + |
2081 | + [ Martin Pitt ] |
2082 | + * debian/control: Add ${misc:Depends}. |
2083 | + * debian/control: Bump Standards-Version to 3.8.3 (no changes necessary). |
2084 | + |
2085 | + [ Colin Watson ] |
2086 | + * 15autologin: Use printf rather than echo -e, since its behaviour is |
2087 | + portable across shells. |
2088 | + |
2089 | + [ Evan Dandrea ] |
2090 | + * Remove scripts/casper-bottom/42disable_apparmor. Apparmor |
2091 | + 2.3.1+bzr1312-0ubuntu3 and ifupdown 0.6.8ubuntu26 now no-op when |
2092 | + they detect the live CD environment. |
2093 | + |
2094 | + -- Evan Dandrea <evand@ubuntu.com> Fri, 08 Jan 2010 20:31:26 +0000 |
2095 | + |
2096 | +casper (1.211) lucid; urgency=low |
2097 | + |
2098 | + * Readd scripts/casper-bottom/15autologin changes: derivatives have |
2099 | + now a custom.conf file and still need autologin in live version. |
2100 | + Merge with my previous fix proposed for sponsoring one week ago: |
2101 | + use echo -e to enable \n interpretation (/bin/sh is busybox ash |
2102 | + which behavior differs from vanilla ash interpretor) (LP: #500786) |
2103 | + |
2104 | + -- Didier Roche <didrocks@ubuntu.com> Tue, 05 Jan 2010 20:05:26 +0100 |
2105 | + |
2106 | casper (1.210) lucid; urgency=low |
2107 | |
2108 | [ Scott James Remnant ] |
2109 | |
2110 | === modified file 'debian/control' |
2111 | --- debian/control 2010-01-20 23:35:11 +0000 |
2112 | +++ debian/control 2011-10-06 10:04:28 +0000 |
2113 | @@ -2,23 +2,23 @@ |
2114 | Section: misc |
2115 | Priority: optional |
2116 | Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@lists.ubuntu.com> |
2117 | -Build-Depends: debhelper (>= 7.0.50~), lsb-release |
2118 | -Standards-Version: 3.6.1 |
2119 | -Vcs-Bzr: http://bazaar.launchpad.net/~ubuntu-core-dev/casper/trunk/ |
2120 | +Build-Depends: debhelper (>= 7.0.50~), lsb-release, libplymouth-dev (>= 0.8.0~-13), pkg-config |
2121 | +Standards-Version: 3.8.4 |
2122 | +Vcs-Bzr: lp:ubuntu/casper |
2123 | |
2124 | Package: casper |
2125 | Architecture: any |
2126 | Section: misc |
2127 | Priority: extra |
2128 | -Depends: ${shlibs:Depends}, initramfs-tools (>= 0.92bubuntu55), busybox-initramfs (>= 1:1.1.3-4ubuntu3), dmsetup, user-setup, sudo, eject, uuid-runtime, localechooser-data (>= 2.03ubuntu1), util-linux (>= 2.15-1) |
2129 | -Conflicts: usplash (<< 0.4-43) |
2130 | +Depends: ${shlibs:Depends}, ${misc:Depends}, initramfs-tools (>= 0.92bubuntu55), busybox-initramfs (>= 1:1.1.3-4ubuntu3), dmsetup, user-setup, sudo, eject, uuid-runtime, localechooser-data (>= 2.03ubuntu1), util-linux (>= 2.15-1), file, lzma |
2131 | +Conflicts: usplash (<< 0.4-43), live-initramfs |
2132 | Breaks: genext2fs (<< 1.4.1) |
2133 | Tag: admin::boot, admin::filesystem, implemented-in::shell, protocol::smb, role::plugin, scope::utility, special::completely-tagged, works-with-format::iso9660 |
2134 | Description: Run a "live" preinstalled system from read-only media |
2135 | |
2136 | Package: ubiquity-casper |
2137 | Architecture: all |
2138 | -Depends: laptop-detect, sudo |
2139 | +Depends: laptop-detect, sudo, ${misc:Depends} |
2140 | Conflicts: espresso-casper |
2141 | Replaces: espresso-casper |
2142 | Enhances: ubiquity |
2143 | |
2144 | === modified file 'debian/copyright' |
2145 | --- debian/copyright 2009-01-13 18:56:31 +0000 |
2146 | +++ debian/copyright 2011-10-06 10:04:28 +0000 |
2147 | @@ -28,10 +28,20 @@ |
2148 | 3. This notice may not be removed or altered from any source |
2149 | distribution. |
2150 | |
2151 | +License (bin/casper-set-selections): |
2152 | + |
2153 | + The Debian installer preseeder is copyright 2004 by Joey Hess |
2154 | + <joeyh@debian.org> and others. |
2155 | + |
2156 | + This program is free software; you can redistribute it and/or modify |
2157 | + it under the terms of the GNU General Public License as published by |
2158 | + the Free Software Foundation; either version 2 of the License, or |
2159 | + (at your option) any later version. |
2160 | + |
2161 | License (everything else): |
2162 | |
2163 | Copyright (C) 2006 Marco Amadori <marco.amadori@gmail.com> |
2164 | - Copyright (C) 2005-2008 Canonical Ltd. <http://www.canonical.com/> |
2165 | + Copyright (C) 2005-2011 Canonical Ltd. <http://www.canonical.com/> |
2166 | Copyright (C) 2008 Dell Inc. |
2167 | |
2168 | This program is free software; you can redistribute it and/or modify |
2169 | |
2170 | === modified file 'debian/manpage/casper.7' |
2171 | --- debian/manpage/casper.7 2009-06-02 13:57:02 +0000 |
2172 | +++ debian/manpage/casper.7 2011-10-06 10:04:28 +0000 |
2173 | @@ -51,6 +51,9 @@ |
2174 | .B nopersistent |
2175 | disables the above mentioned "persistent" feature, useful if the bootloader (like syslinux) has been installed with persistent enabled. |
2176 | .TP |
2177 | +.BI "persistent-path=" PATH |
2178 | +Casper will look for persistency files in the root directory of a partition. With this parameter, the path can be configured so that you can have multiple directories on the same partition to store persistency files. |
2179 | +.TP |
2180 | .B "showmounts" |
2181 | This parameter will make casper to show on "/" the ro filesystems (mostly compressed) on /casper. This is not enabled by default because could lead to problems by applications like "mono" which store binary paths on installation. |
2182 | .TP |
2183 | @@ -66,9 +69,18 @@ |
2184 | .BI "{preseed/file|file}=" FILE |
2185 | A path to a file present on the rootfs could be used to preseed debconf database. |
2186 | .TP |
2187 | +.B preseed/allow-network=true |
2188 | +Bring up the network while running |
2189 | +.BR preseed/early_command . |
2190 | +.TP |
2191 | .BI "package/question=" VALUE |
2192 | All debian installed packages could be preseeded from command-line that way, beware of blanks spaces, they will interfere with parsing, use a preseed file in this case. |
2193 | .TP |
2194 | +.BI "uuid=" UUID |
2195 | +Check that the discovered medium matches |
2196 | +.I UUID |
2197 | +rather than the default UUID embedded in the initramfs. |
2198 | +.TP |
2199 | .BI ignore_uuid |
2200 | Do not check that any UUID embedded in the initramfs matches the discovered medium. |
2201 | .B casper |
2202 | |
2203 | === added directory 'debian/source' |
2204 | === added file 'debian/source/format' |
2205 | --- debian/source/format 1970-01-01 00:00:00 +0000 |
2206 | +++ debian/source/format 2011-10-06 10:04:28 +0000 |
2207 | @@ -0,0 +1,1 @@ |
2208 | +3.0 (native) |
2209 | |
2210 | === modified file 'hooks/casper' |
2211 | --- hooks/casper 2009-05-23 22:30:56 +0000 |
2212 | +++ hooks/casper 2011-10-06 10:04:28 +0000 |
2213 | @@ -20,6 +20,7 @@ |
2214 | |
2215 | manual_add_modules unionfs |
2216 | manual_add_modules aufs |
2217 | +manual_add_modules overlayfs |
2218 | |
2219 | # unionfs-fuse, if available |
2220 | if [ -x /usr/bin/unionfs-fuse ]; then |
2221 | @@ -33,8 +34,10 @@ |
2222 | mkdir -p ${DESTDIR}/lib/casper |
2223 | copy_exec /usr/share/casper/casper-reconfigure /bin |
2224 | copy_exec /usr/share/casper/casper-preseed /bin |
2225 | +copy_exec /usr/share/casper/casper-set-selections /bin |
2226 | |
2227 | -mkdir -p ${DESTDIR}/lib/udev |
2228 | +mkdir -p ${DESTDIR}/lib/udev/rules.d |
2229 | +cp -p /lib/udev/rules.d/60-cdrom_id.rules ${DESTDIR}/lib/udev/rules.d/ |
2230 | copy_exec /lib/udev/cdrom_id /lib/udev |
2231 | copy_exec /lib/udev/path_id /lib/udev |
2232 | copy_exec /usr/bin/eject /bin |
2233 | @@ -55,6 +58,7 @@ |
2234 | manual_add_modules vfat |
2235 | manual_add_modules ext3 |
2236 | manual_add_modules ext4 |
2237 | +manual_add_modules btrfs |
2238 | # needed for vfat. :-/ |
2239 | manual_add_modules nls_cp437 |
2240 | manual_add_modules nls_utf8 |
2241 | |
2242 | === modified file 'scripts/casper' |
2243 | --- scripts/casper 2009-10-06 12:07:52 +0000 |
2244 | +++ scripts/casper 2011-10-06 10:04:28 +0000 |
2245 | @@ -6,6 +6,7 @@ |
2246 | |
2247 | mountpoint=/cdrom |
2248 | LIVE_MEDIA_PATH=casper |
2249 | +[ -f /conf/uuid.conf ] && UUID="$(cat /conf/uuid.conf)" |
2250 | |
2251 | root_persistence="casper-rw" |
2252 | home_persistence="home-rw" |
2253 | @@ -38,24 +39,32 @@ |
2254 | export PERSISTENT="Yes" ;; |
2255 | nopersistent) |
2256 | export PERSISTENT="" ;; |
2257 | + persistent-path=*) |
2258 | + export PERSISTENT_PATH="${x#persistent-path=}" ;; |
2259 | union=*) |
2260 | export UNIONFS="${x#union=}";; |
2261 | - ip*) |
2262 | + ip=*) |
2263 | STATICIP=${x#ip=} |
2264 | if [ "${STATICIP}" = "" ]; then |
2265 | STATICIP="frommedia" |
2266 | fi |
2267 | export STATICIP ;; |
2268 | + uuid=*) |
2269 | + UUID=${x#uuid=} ;; |
2270 | ignore_uuid) |
2271 | - IGNORE_UUID="Yes" ;; |
2272 | + UUID="" ;; |
2273 | live-media-path=*) |
2274 | LIVE_MEDIA_PATH="${x#live-media-path=}" |
2275 | export LIVE_MEDIA_PATH |
2276 | echo "export LIVE_MEDIA_PATH=\"$LIVE_MEDIA_PATH\"" >> /etc/casper.conf ;; |
2277 | + toram) |
2278 | + export TORAM="Yes" ;; |
2279 | + todisk=*) |
2280 | + export TODISK="${x#todisk=}" ;; |
2281 | esac |
2282 | done |
2283 | if [ "${UNIONFS}" = "" ]; then |
2284 | - export UNIONFS="aufs" |
2285 | + export UNIONFS="DEFAULT" |
2286 | fi |
2287 | } |
2288 | |
2289 | @@ -72,15 +81,14 @@ |
2290 | } |
2291 | |
2292 | matches_uuid() { |
2293 | - if [ "$IGNORE_UUID" ] || [ ! -e /conf/uuid.conf ]; then |
2294 | + if [ -z "$UUID" ]; then |
2295 | return 0 |
2296 | fi |
2297 | path="$1" |
2298 | - uuid="$(cat /conf/uuid.conf)" |
2299 | for try_uuid_file in "$path/.disk/casper-uuid"*; do |
2300 | [ -e "$try_uuid_file" ] || continue |
2301 | try_uuid="$(cat "$try_uuid_file")" |
2302 | - if [ "$uuid" = "$try_uuid" ]; then |
2303 | + if [ "$UUID" = "$try_uuid" ]; then |
2304 | return 0 |
2305 | fi |
2306 | done |
2307 | @@ -125,7 +133,7 @@ |
2308 | |
2309 | is_nice_device() { |
2310 | sysfs_path="${1#/sys}" |
2311 | - if /lib/udev/path_id "${sysfs_path}" | grep -E -q "ID_PATH=(usb|pci-[^-]*-(ide|scsi|usb)|platform-orion-ehci|platform-mmc|platform-mxsdhci)"; then |
2312 | + if /lib/udev/path_id "${sysfs_path}" | egrep -q "ID_PATH=(usb|pci-[^-]*-(ide|sas|scsi|usb|virtio)|platform-sata_mv|platform-orion-ehci|platform-mmc|platform-mxsdhci)"; then |
2313 | return 0 |
2314 | fi |
2315 | if echo ${sysfs_path} | grep -q "^/block/dm-"; then |
2316 | @@ -143,7 +151,7 @@ |
2317 | |
2318 | if [ "${copytodev}" = "ram" ]; then |
2319 | # copying to ram: |
2320 | - freespace=$( expr $(awk '/MemFree/{print $2}' /proc/meminfo) + $( cat /proc/meminfo | grep Cached | head -n 1 | awk '/Cached/{print $2}' - ) ) |
2321 | + freespace=$(awk '/^MemFree:/{f=$2} /^Cached:/{c=$2} END{print f+c}' /proc/meminfo) |
2322 | mount_options="-o size=${size}k" |
2323 | free_string="memory" |
2324 | fstype="tmpfs" |
2325 | @@ -169,7 +177,10 @@ |
2326 | mkdir "${copyto}" |
2327 | echo "mount -t ${fstype} ${mount_options} ${dev} ${copyto}" |
2328 | mount -t "${fstype}" ${mount_options} "${dev}" "${copyto}" |
2329 | - cp -a ${copyfrom}/* ${copyto} # "cp -a" from busybox also copies hidden files |
2330 | + cp -a ${copyfrom}/* ${copyto} |
2331 | + if [ -e ${copyfrom}/.disk ]; then |
2332 | + cp -a ${copyfrom}/.disk ${copyto} |
2333 | + fi |
2334 | umount ${copyfrom} |
2335 | mount -r -o move ${copyto} ${copyfrom} |
2336 | rmdir ${copyto} |
2337 | @@ -184,7 +195,8 @@ |
2338 | /sbin/udevadm trigger |
2339 | /sbin/udevadm settle |
2340 | |
2341 | - ipconfig ${DEVICE} /tmp/net-${DEVICE}.conf | tee /netboot.config |
2342 | + configure_networking |
2343 | + export DEVICE |
2344 | |
2345 | if [ "${NFSROOT}" = "auto" ]; then |
2346 | NFSROOT=${ROOTSERVER}:${ROOTPATH} |
2347 | @@ -255,7 +267,7 @@ |
2348 | todev=$(cat /proc/mounts | grep -s " $(base_path ${todir}) " | awk '{print $1}' ) |
2349 | freespace=$(df -k | grep -s ${todev} | awk '{print $4}') |
2350 | else |
2351 | - freespace=$( expr $(awk '/MemFree/{print $2}' /proc/meminfo) + $( cat /proc/meminfo | grep Cached | head -n 1 | awk '/Cached/{print $2}' - )) |
2352 | + freespace=$(awk '/^MemFree:/{f=$2} /^Cached:/{c=$2} END{print f+c}' /proc/meminfo) |
2353 | fi |
2354 | |
2355 | tomount="/mnt/tmpsnap" |
2356 | @@ -355,15 +367,23 @@ |
2357 | image_directory="$1" |
2358 | rootmnt="$2" |
2359 | |
2360 | - case ${UNIONFS} in |
2361 | - aufs|unionfs) |
2362 | - modprobe "${MP_QUIET}" -b ${UNIONFS} || true |
2363 | - if ! cut -f2 /proc/filesystems | grep -q "^${UNIONFS}\$" && \ |
2364 | - [ -x /bin/unionfs-fuse ]; then |
2365 | - UNIONFS="unionfs-fuse" |
2366 | - fi |
2367 | - ;; |
2368 | - esac |
2369 | + if [ "${UNIONFS}" = 'DEFAULT' ]; then |
2370 | + for union in 'overlayfs' 'aufs' 'unionfs' |
2371 | + do |
2372 | + modprobe "${MP_QUIET}" -b ${union} || true |
2373 | + if cut -f2 /proc/filesystems | grep -q "^${union}\$"; then |
2374 | + UNIONFS="${union}" |
2375 | + break |
2376 | + fi |
2377 | + done |
2378 | + fi |
2379 | + if [ "${UNIONFS}" = 'DEFAULT' -a -x /bin/unionfs-fuse ]; then |
2380 | + UNIONFS="unionfs-fuse" |
2381 | + fi |
2382 | + # If all else fails fall back to aufs. |
2383 | + if [ "${UNIONFS}" = 'DEFAULT' ]; then |
2384 | + UNIONFS='aufs' |
2385 | + fi |
2386 | |
2387 | # run-init can't deal with images in a subdir, but we're going to |
2388 | # move all of these away before it runs anyway. No, we're not, |
2389 | @@ -375,9 +395,7 @@ |
2390 | # Let's just mount the read-only file systems first |
2391 | rofsstring="" |
2392 | rofslist="" |
2393 | - if [ "${NETBOOT}" = "nfs" ] ; then |
2394 | - roopt="nfsro" # work around a bug in nfs-unionfs locking |
2395 | - elif [ "${UNIONFS}" = "aufs" ]; then |
2396 | + if [ "${UNIONFS}" = "aufs" ]; then |
2397 | roopt="rr" |
2398 | elif [ "${UNIONFS}" = "unionfs-fuse" ]; then |
2399 | roopt="RO" |
2400 | @@ -431,9 +449,29 @@ |
2401 | mkdir -p /dev/.initramfs/varrun |
2402 | pidof unionfs-fuse >> /dev/.initramfs/varrun/sendsigs.omit || true |
2403 | ;; |
2404 | - *) |
2405 | + aufs|unionfs) |
2406 | mount -t ${UNIONFS} -o noatime,dirs=/cow=rw:$rofsstring ${UNIONFS} "$rootmnt" || panic "${UNIONFS} mount failed" |
2407 | ;; |
2408 | + overlayfs) |
2409 | + # Mount the layers pairwise from the bottom onto rootmnt, |
2410 | + # for the second and later layers rootmnt forms the lower layer. |
2411 | + mounts="" |
2412 | + for mount in /cow $rofslist |
2413 | + do |
2414 | + mounts="$mount $mounts" |
2415 | + done |
2416 | + lower="" |
2417 | + for mount in $mounts |
2418 | + do |
2419 | + if [ "$lower" = "" ]; then |
2420 | + lower="$mount" |
2421 | + continue |
2422 | + fi |
2423 | + mount -t overlayfs -o "upperdir=$mount,lowerdir=$lower" \ |
2424 | + "$mount" "$rootmnt" |
2425 | + lower="$rootmnt" |
2426 | + done |
2427 | + ;; |
2428 | esac |
2429 | |
2430 | # Adding other custom mounts |
2431 | @@ -545,7 +583,7 @@ |
2432 | fi |
2433 | fi |
2434 | # or do the scan of block devices |
2435 | - for sysblock in $(echo /sys/block/* | tr ' ' '\n' | grep -vE "/(loop|ram|fd)"); do |
2436 | + for sysblock in $(echo /sys/block/* | tr ' ' '\n' | egrep -v "/(loop|ram|fd)"); do |
2437 | devname=$(sys2dev "${sysblock}") |
2438 | [ -e "$devname" ] || continue |
2439 | fstype=$(get_fstype "${devname}") |
2440 | @@ -562,7 +600,8 @@ |
2441 | elif [ "${fstype}" = "squashfs" -o \ |
2442 | "${fstype}" = "ext4" -o \ |
2443 | "${fstype}" = "ext3" -o \ |
2444 | - "${fstype}" = "ext2" ]; then |
2445 | + "${fstype}" = "ext2" -o \ |
2446 | + "${fstype}" = "btrfs" ]; then |
2447 | # This is an ugly hack situation, the block device has |
2448 | # an image directly on it. It's hopefully |
2449 | # casper, so take it and run with it. |
2450 | @@ -651,6 +690,34 @@ |
2451 | mount -n -o bind /dev "${rootmnt}/dev" |
2452 | fi |
2453 | |
2454 | + # Open up two fifo's fd's for debconf-communicate to use. Speeds up |
2455 | + # the Casper process considerably. |
2456 | + log_begin_msg "Creating debconf-communicate fifo mechanism" |
2457 | + mkfifo /tmp/debconf-in.fifo |
2458 | + mkfifo /tmp/debconf-out.fifo |
2459 | + |
2460 | + # Make the template database read-only, so that passthrough debconf |
2461 | + # instances can write to it directly; otherwise templates are only |
2462 | + # passed through when necessary. Use temporary config databases as |
2463 | + # well; we'll copy their contents back at the end. |
2464 | + DEBCONF_TMPDIR="$(chroot /root mktemp -dt debconf.XXXXXX)" |
2465 | + cp -a /root/var/cache/debconf/config.dat "/root$DEBCONF_TMPDIR/" |
2466 | + cp -a /root/var/cache/debconf/passwords.dat "/root$DEBCONF_TMPDIR/" |
2467 | + sed "s,^Filename: /var/cache/debconf/\(config\|passwords\).dat$,Filename: $DEBCONF_TMPDIR/\1.dat,; /^Name: templatedb/a\ |
2468 | +Readonly: true" /root/etc/debconf.conf >"/root$DEBCONF_TMPDIR/debconf.conf" |
2469 | + |
2470 | + DEBCONF_SYSTEMRC="$DEBCONF_TMPDIR/debconf.conf" chroot /root debconf-communicate -fnoninteractive casper > /tmp/debconf-out.fifo < /tmp/debconf-in.fifo & |
2471 | + |
2472 | + if [ ! -p /tmp/debconf-in.fifo ] || [ ! -p /tmp/debconf-out.fifo ]; then |
2473 | + log_warning_msg "failed to setup debconf-communicate channel" |
2474 | + fi |
2475 | + log_end_msg |
2476 | + |
2477 | + # Order matters! |
2478 | + # These file descriptors must stay open until we're finished with |
2479 | + # debconf-communicate. |
2480 | + exec 4</tmp/debconf-out.fifo 3>/tmp/debconf-in.fifo |
2481 | + |
2482 | maybe_break casper-bottom |
2483 | [ "$quiet" != "y" ] && log_begin_msg "Running /scripts/casper-bottom" |
2484 | |
2485 | @@ -661,6 +728,20 @@ |
2486 | umount "${rootmnt}/dev" |
2487 | fi |
2488 | |
2489 | + # Close the fd's associated with debconf-communicate. |
2490 | + exec 3>&- 4<&- |
2491 | + rm -f /tmp/debconf-in.fifo |
2492 | + rm -f /tmp/debconf-out.fifo |
2493 | + |
2494 | + # Copy config database changes back to the master files. |
2495 | + chroot /root debconf-copydb tmpdb config \ |
2496 | + --config=Name:tmpdb --config=Driver:File \ |
2497 | + --config="Filename:$DEBCONF_TMPDIR/config.dat" |
2498 | + chroot /root debconf-copydb tmpdb passwords \ |
2499 | + --config=Name:tmpdb --config=Driver:File \ |
2500 | + --config="Filename:$DEBCONF_TMPDIR/passwords.dat" |
2501 | + rm -rf "$DEBCONF_TMPDIR" |
2502 | + |
2503 | exec 1>&6 6>&- |
2504 | exec 2>&7 7>&- |
2505 | kill "$tailpid" |
2506 | |
2507 | === modified file 'scripts/casper-bottom/05mountpoints' |
2508 | --- scripts/casper-bottom/05mountpoints 2010-01-05 16:54:40 +0000 |
2509 | +++ scripts/casper-bottom/05mountpoints 2011-10-06 10:04:28 +0000 |
2510 | @@ -24,4 +24,8 @@ |
2511 | mkdir -p /root/cdrom |
2512 | mount -n -o move /cdrom /root/cdrom |
2513 | |
2514 | +# temporary hack for LP#727783 |
2515 | +mkdir -p /root/media |
2516 | +ln -s /cdrom /root/media/cdrom |
2517 | + |
2518 | log_end_msg |
2519 | |
2520 | === added file 'scripts/casper-bottom/07remove_oem_config' |
2521 | --- scripts/casper-bottom/07remove_oem_config 1970-01-01 00:00:00 +0000 |
2522 | +++ scripts/casper-bottom/07remove_oem_config 2011-10-06 10:04:28 +0000 |
2523 | @@ -0,0 +1,32 @@ |
2524 | +#!/bin/sh |
2525 | + |
2526 | +PREREQ="" |
2527 | +DESCRIPTION="Removing oem-config if installed..." |
2528 | + |
2529 | +prereqs() |
2530 | +{ |
2531 | + echo "$PREREQ" |
2532 | +} |
2533 | + |
2534 | +case $1 in |
2535 | +# get pre-requisites |
2536 | +prereqs) |
2537 | + prereqs |
2538 | + exit 0 |
2539 | + ;; |
2540 | +esac |
2541 | + |
2542 | +. /scripts/casper-functions |
2543 | + |
2544 | +# Only do this on ARM |
2545 | +if ! uname -m | grep -q arm; then exit 0; fi |
2546 | + |
2547 | +log_begin_msg "$DESCRIPTION" |
2548 | + |
2549 | +# if oem-config is installed, we need to remove it to remove the desktop |
2550 | +# file diversion, and to remove the OEM icons from showing up before we |
2551 | +# install the image. |
2552 | + |
2553 | +chroot /root apt-get -y --purge remove oem-config </dev/null || true |
2554 | + |
2555 | +log_end_msg |
2556 | |
2557 | === modified file 'scripts/casper-bottom/10adduser' |
2558 | --- scripts/casper-bottom/10adduser 2010-01-05 16:54:40 +0000 |
2559 | +++ scripts/casper-bottom/10adduser 2011-10-06 10:04:28 +0000 |
2560 | @@ -17,28 +17,25 @@ |
2561 | esac |
2562 | |
2563 | . /scripts/casper-functions |
2564 | +load_confmodule |
2565 | |
2566 | log_begin_msg "$DESCRIPTION" |
2567 | |
2568 | # U6aMy0wojraho is just a blank password |
2569 | -chroot /root debconf-communicate -fnoninteractive casper > /dev/null <<EOF |
2570 | -set passwd/root-password-crypted * |
2571 | -set passwd/user-password-crypted U6aMy0wojraho |
2572 | -set passwd/user-fullname $USERFULLNAME |
2573 | -set passwd/username $USERNAME |
2574 | -set passwd/user-uid 999 |
2575 | -EOF |
2576 | +db_set passwd/root-password-crypted '*' |
2577 | +db_set passwd/user-password-crypted U6aMy0wojraho |
2578 | +db_set passwd/user-fullname "$USERFULLNAME" |
2579 | +db_set passwd/username "$USERNAME" |
2580 | +db_set passwd/user-uid 999 |
2581 | |
2582 | chroot /root /usr/lib/user-setup/user-setup-apply > /dev/null |
2583 | |
2584 | # Clear out debconf database again to avoid confusing ubiquity later. |
2585 | -chroot /root debconf-communicate -fnoninteractive casper > /dev/null <<EOF |
2586 | -set passwd/root-password-crypted |
2587 | -set passwd/user-password-crypted |
2588 | -set passwd/user-fullname |
2589 | -set passwd/username |
2590 | -set passwd/user-uid |
2591 | -EOF |
2592 | +db_set passwd/root-password-crypted |
2593 | +db_set passwd/user-password-crypted |
2594 | +db_set passwd/user-fullname |
2595 | +db_set passwd/username |
2596 | +db_set passwd/user-uid |
2597 | |
2598 | if [ -f /root/etc/sudoers ]; then |
2599 | if [ "${BUILD_SYSTEM}" = "Ubuntu" ]; then |
2600 | @@ -55,7 +52,11 @@ |
2601 | # XXX - awful hack to stop xscreensaver locking the screen (#7150) |
2602 | echo 'RUNNING_UNDER_GDM="yes"' >> /root/etc/environment |
2603 | |
2604 | -RELEASE="$(cut -d' ' -f1-2 /root/cdrom/.disk/info 2>/dev/null)" || RELEASE="" |
2605 | +LTS="$(cut -d' ' -f3 /root/cdrom/.disk/info 2>/dev/null)" || LTS= |
2606 | +RELEASE="$(cut -d' ' -f1-2 /root/cdrom/.disk/info 2>/dev/null)" || RELEASE= |
2607 | +if [ "$LTS" = "LTS" ] && [ -n "$RELEASE" ]; then |
2608 | + RELEASE="$RELEASE LTS" |
2609 | +fi |
2610 | for file in /usr/share/applications/ubiquity-gtkui.desktop /usr/share/applications/kde4/ubiquity-kdeui.desktop; do |
2611 | if [ -f "/root/$file" ]; then |
2612 | sed -i "s/RELEASE/$RELEASE/" "/root$file" |
2613 | @@ -97,15 +98,4 @@ |
2614 | fi |
2615 | fi |
2616 | |
2617 | -#Mythbuntu |
2618 | -if [ -d "/root/usr/share/mythbuntu" ]; then |
2619 | - if [ -f "/root/usr/share/applications/mythbuntu-live-frontend.desktop" ]; then |
2620 | - chroot /root install -d -o $USERNAME -g $USERNAME /home/$USERNAME/Desktop |
2621 | - chroot /root install -D -o $USERNAME -g $USERNAME /usr/share/applications/mythbuntu-live-frontend.desktop /home/$USERNAME/Desktop/mythbuntu-live-frontend.desktop |
2622 | - fi |
2623 | - if [ -f "/root/etc/xdg/mythbuntu/xfce4/mcs_settings/desktop.xml" ]; then |
2624 | - sed -i "s/<\/mcs/\t<option\ name=\"showremovable\"\ type=\"int\"\ value=\"0\"\/>\n<\/mcs/" /root/etc/xdg/mythbuntu/xfce4/mcs_settings/desktop.xml |
2625 | - fi |
2626 | -fi |
2627 | - |
2628 | log_end_msg |
2629 | |
2630 | === modified file 'scripts/casper-bottom/15autologin' |
2631 | --- scripts/casper-bottom/15autologin 2010-01-05 16:54:40 +0000 |
2632 | +++ scripts/casper-bottom/15autologin 2011-10-06 10:04:28 +0000 |
2633 | @@ -20,16 +20,24 @@ |
2634 | |
2635 | log_begin_msg "$DESCRIPTION" |
2636 | |
2637 | -if [ -d /root/etc/gdm ] && [ ! -e /root/etc/gdm/custom.conf ]; then |
2638 | +if [ -d /root/etc/gdm ]; then |
2639 | # Configure GDM autologin |
2640 | - cat > /root/etc/gdm/custom.conf <<EOF |
2641 | -[daemon] |
2642 | -AutomaticLoginEnable=true |
2643 | -AutomaticLogin=$USERNAME |
2644 | -TimedLoginEnable=true |
2645 | -TimedLogin=$USERNAME |
2646 | -TimedLoginDelay=10 |
2647 | -EOF |
2648 | + GDMCustomFile=/root/etc/gdm/custom.conf |
2649 | + AutologinParameters="AutomaticLoginEnable=true\n\ |
2650 | +AutomaticLogin=$USERNAME\n\ |
2651 | +TimedLoginEnable=true\n\ |
2652 | +TimedLogin=$USERNAME\n\ |
2653 | +TimedLoginDelay=10" |
2654 | + |
2655 | + # Prevent from updating if parameters already present (persistent usb key) |
2656 | + if ! `grep -qs 'AutomaticLoginEnable' $GDMCustomFile` ; then |
2657 | + if ! `grep -qs '\[daemon\]' $GDMCustomFile` ; then |
2658 | + echo '[daemon]' >> $GDMCustomFile |
2659 | + fi |
2660 | + sed -i "s/\[daemon\]/\[daemon\]\n$AutologinParameters/" $GDMCustomFile |
2661 | + chroot /root sudo -u "$USERNAME" gconftool-2 -s -t bool \ |
2662 | + /apps/indicator-session/suppress_logout_menuitem true |
2663 | + fi |
2664 | fi |
2665 | |
2666 | if [ -f /root/etc/kde4/kdm/kdmrc ]; then |
2667 | @@ -41,4 +49,40 @@ |
2668 | /root/etc/kde4/kdm/kdmrc |
2669 | fi |
2670 | |
2671 | +if [ -f /root/etc/lxdm/lxdm.conf ]; then |
2672 | + # Configure LXDM autologin with LXDE session |
2673 | + sed -i -r \ |
2674 | + -e "s/^# autologin=dgod/autologin=$USERNAME/" \ |
2675 | + -e "s/^# session/session/" \ |
2676 | + -e "s/startlxde/startlubuntu/" \ |
2677 | + /root/etc/lxdm/lxdm.conf |
2678 | +fi |
2679 | + |
2680 | +if [ -f /root/etc/xdg/lubuntu/lxdm/lxdm.conf ]; then |
2681 | + # Configure LXDM autologin with Lubuntu session |
2682 | + sed -i -r \ |
2683 | + -e "s/^# autologin=dgod/autologin=$USERNAME/" \ |
2684 | + -e "s/^# session/session/" \ |
2685 | + -e "s/startlxde/startlubuntu/" \ |
2686 | + /root/etc/xdg/lubuntu/lxdm/lxdm.conf |
2687 | +fi |
2688 | + |
2689 | +if [ -d /root/etc/lightdm ]; then |
2690 | + # Configure LightDM autologin |
2691 | + LightDMCustomFile=/root/etc/lightdm/lightdm.conf |
2692 | + AutologinParameters="allow-guest=false\n\ |
2693 | +autologin-guest=false\n\ |
2694 | +autologin-user=$USERNAME\n\ |
2695 | +autologin-user-timeout=0\n\ |
2696 | +autologin-session=lightdm-autologin" |
2697 | + |
2698 | + # Prevent from updating if parameters already present (persistent usb key) |
2699 | + if ! `grep -qs '^autologin-user' $LightDMCustomFile` ; then |
2700 | + if ! `grep -qs '\[SeatDefaults\]' $LightDMCustomFile` ; then |
2701 | + echo '[SeatDefaults]' >> $LightDMCustomFile |
2702 | + fi |
2703 | + sed -i "s/\[SeatDefaults\]/\[SeatDefaults\]\n$AutologinParameters/" $LightDMCustomFile |
2704 | + fi |
2705 | +fi |
2706 | + |
2707 | log_end_msg |
2708 | |
2709 | === modified file 'scripts/casper-bottom/19keyboard' |
2710 | --- scripts/casper-bottom/19keyboard 2010-01-05 16:54:40 +0000 |
2711 | +++ scripts/casper-bottom/19keyboard 2011-10-06 10:04:28 +0000 |
2712 | @@ -48,6 +48,24 @@ |
2713 | console-setup/modelcode\?=*) |
2714 | csmodel=${x#console-setup/modelcode\?=} |
2715 | ;; |
2716 | + keyboard-configuration/layoutcode=*) |
2717 | + cslayout=${x#keyboard-configuration/layoutcode=} |
2718 | + ;; |
2719 | + keyboard-configuration/layoutcode\?=*) |
2720 | + cslayout=${x#keyboard-configuration/layoutcode\?=} |
2721 | + ;; |
2722 | + keyboard-configuration/variantcode=*) |
2723 | + csvariant=${x#keyboard-configuration/variantcode=} |
2724 | + ;; |
2725 | + keyboard-configuration/variantcode\?=*) |
2726 | + csvariant=${x#keyboard-configuration/variantcode\?=} |
2727 | + ;; |
2728 | + keyboard-configuration/modelcode=*) |
2729 | + csmodel=${x#keyboard-configuration/modelcode=} |
2730 | + ;; |
2731 | + keyboard-configuration/modelcode\?=*) |
2732 | + csmodel=${x#keyboard-configuration/modelcode\?=} |
2733 | + ;; |
2734 | esac |
2735 | done |
2736 | |
2737 | @@ -151,35 +169,45 @@ |
2738 | fi |
2739 | } |
2740 | |
2741 | -if [ -x /root/bin/setupcon ] && [ -f /root/etc/default/console-setup ]; then |
2742 | +PREFIX= |
2743 | +CONFIGFILE= |
2744 | +if [ -f /root/etc/default/keyboard ]; then |
2745 | + PREFIX=keyboard-configuration |
2746 | + CONFIGFILE=/etc/default/keyboard |
2747 | +elif [ -f /root/etc/default/console-setup ]; then |
2748 | + PREFIX=console-setup |
2749 | + CONFIGFILE=/etc/default/console-setup |
2750 | +fi |
2751 | +if [ -x /root/bin/setupcon ] && [ "$PREFIX" ] && [ "$CONFIGFILE" ]; then |
2752 | if [ "$cslayout" ]; then |
2753 | csoptions= |
2754 | adjust_console_setup |
2755 | |
2756 | chroot /root sed -i "s/^XKBLAYOUT=.*/XKBLAYOUT=\"$cslayout\"/" \ |
2757 | - /etc/default/console-setup |
2758 | + "$CONFIGFILE" |
2759 | if [ "$csvariant" ]; then |
2760 | chroot /root sed -i "s/^XKBVARIANT=.*/XKBVARIANT=\"$csvariant\"/" \ |
2761 | - /etc/default/console-setup |
2762 | + "$CONFIGFILE" |
2763 | else |
2764 | - casper-preseed /root console-setup/variantcode '' false |
2765 | + casper-preseed /root "$PREFIX/variantcode" '' false |
2766 | fi |
2767 | if [ "$csmodel" ]; then |
2768 | chroot /root sed -i "s/^XKBMODEL=.*/XKBMODEL=\"$csmodel\"/" \ |
2769 | - /etc/default/console-setup |
2770 | + "$CONFIGFILE" |
2771 | else |
2772 | - casper-preseed /root console-setup/modelcode '' false |
2773 | + casper-preseed /root "$PREFIX/modelcode" '' false |
2774 | fi |
2775 | if [ "$csoptions" ]; then |
2776 | chroot /root sed -i "s/^XKBOPTIONS=.*/XKBOPTIONS=\"$csoptions\"/" \ |
2777 | - /etc/default/console-setup |
2778 | + "$CONFIGFILE" |
2779 | fi |
2780 | else |
2781 | - casper-preseed /root console-setup/layoutcode '' false |
2782 | - casper-preseed /root console-setup/variantcode '' false |
2783 | - casper-preseed /root console-setup/modelcode '' false |
2784 | + casper-preseed /root "$PREFIX/layoutcode" '' false |
2785 | + casper-preseed /root "$PREFIX/variantcode" '' false |
2786 | + casper-preseed /root "$PREFIX/modelcode" '' false |
2787 | fi |
2788 | - casper-preseed /root console-setup/optionscode '' false |
2789 | + casper-preseed /root "$PREFIX/optionscode" '' false |
2790 | + # prefix remains console-setup even with keyboard-configuration |
2791 | casper-preseed /root console-setup/codesetcode '' false |
2792 | |
2793 | if [ -f /root/etc/init.d/usplash ]; then |
2794 | |
2795 | === modified file 'scripts/casper-bottom/22gnome_panel_data' |
2796 | --- scripts/casper-bottom/22gnome_panel_data 2010-01-05 16:54:40 +0000 |
2797 | +++ scripts/casper-bottom/22gnome_panel_data 2011-10-06 10:04:28 +0000 |
2798 | @@ -20,12 +20,6 @@ |
2799 | |
2800 | log_begin_msg "$DESCRIPTION" |
2801 | |
2802 | -if [ -x /root/usr/sbin/laptop-detect ]; then |
2803 | - if chroot /root laptop-detect; then |
2804 | - casper-reconfigure /root gnome-panel-data |
2805 | - fi |
2806 | -fi |
2807 | - |
2808 | panel_version=$(chroot /root /usr/bin/dpkg-query -W --showformat='${Version}' gnome-panel-data 2>/dev/null) || panel_version="" |
2809 | if [ -n "$panel_version" ]; then |
2810 | chroot /root sudo -u "$USERNAME" gconftool-2 -s -t bool /apps/panel/global/disable_lock_screen true |
2811 | |
2812 | === modified file 'scripts/casper-bottom/22screensaver' |
2813 | --- scripts/casper-bottom/22screensaver 2010-01-05 16:54:40 +0000 |
2814 | +++ scripts/casper-bottom/22screensaver 2011-10-06 10:04:28 +0000 |
2815 | @@ -22,9 +22,7 @@ |
2816 | |
2817 | gnome_screensaver_version=$(chroot /root dpkg-query -W --showformat='${Version}' gnome-screensaver 2>/dev/null) || gnome_screensaver_version="" |
2818 | if [ -n "$gnome_screensaver_version" ]; then |
2819 | - # Support legacy gconf value |
2820 | - chroot /root sudo -u "$USERNAME" gconftool-2 -t bool -s /apps/gnome-screensaver/lock false |
2821 | - chroot /root sudo -u "$USERNAME" gconftool-2 -t bool -s /apps/gnome-screensaver/lock_enabled false |
2822 | + chroot /root sudo -u "$USERNAME" gsettings set org.gnome.desktop.screensaver lock-enabled false |
2823 | fi |
2824 | |
2825 | if [ -d /root/usr/share/kubuntu-default-settings/kde-profile/default/share/config ]; then |
2826 | |
2827 | === modified file 'scripts/casper-bottom/22sslcert' |
2828 | --- scripts/casper-bottom/22sslcert 2010-01-05 16:54:40 +0000 |
2829 | +++ scripts/casper-bottom/22sslcert 2011-10-06 10:04:28 +0000 |
2830 | @@ -17,6 +17,7 @@ |
2831 | esac |
2832 | |
2833 | . /scripts/casper-functions |
2834 | +load_confmodule |
2835 | |
2836 | log_begin_msg "$DESCRIPTION" |
2837 | |
2838 | |
2839 | === modified file 'scripts/casper-bottom/23networking' |
2840 | --- scripts/casper-bottom/23networking 2010-01-05 16:54:40 +0000 |
2841 | +++ scripts/casper-bottom/23networking 2011-10-06 10:04:28 +0000 |
2842 | @@ -73,27 +73,32 @@ |
2843 | EOF |
2844 | done |
2845 | fi |
2846 | - if [ ! -f /root/etc/resolv.conf -a -f /netboot.config ] ; then |
2847 | - # create a resolv.conf if it is not present |
2848 | - cp /netboot.config /root/var/log/netboot.config |
2849 | - rc_search=$(cat netboot.config | awk '/domain/{print $3}') |
2850 | - rc_server0=$(cat netboot.config | awk '/dns0/{print $5}') |
2851 | - rc_server1=$(cat netboot.config | awk '/dns0/{print $8}') |
2852 | - rc_server0="nameserver ${rc_server0}" |
2853 | - if [ "${rc_server1}" = "0.0.0.0" ]; then |
2854 | - rc_server1="" |
2855 | - else |
2856 | - rc_server1="nameserver ${rc_server1}" |
2857 | - fi |
2858 | - cat > /root/etc/resolv.conf <<EOF |
2859 | + if [ ! -f /root/etc/resolv.conf ] || [ -z "$(cat /root/etc/resolv.conf)" ]; then |
2860 | + if [ -n "${DEVICE}" ] && [ -e /tmp/net-"${DEVICE}".conf ]; then |
2861 | + # create a resolv.conf if it is not present |
2862 | + cp /tmp/net-"${DEVICE}".conf /root/var/log/netboot.config |
2863 | + #ipconfig quotes DNSDOMAIN, quotes need to be removed for a correct resolv.conf |
2864 | + rc_search="$(sed -n 's/"//g;s/^DNSDOMAIN=//p' /tmp/net-"${DEVICE}".conf)" |
2865 | + #search might contain multiple entries but domain should only have one. |
2866 | + rc_domain="$(sed -n -e 's/"//g;s/^DNSDOMAIN=\([^ ]\+\) *.*/\1/p' /tmp/net-"${DEVICE}".conf)" |
2867 | + rc_server0="$(sed -n 's/^IPV4DNS0=//p' /tmp/net-"${DEVICE}".conf)" |
2868 | + rc_server1="$(sed -n 's/^IPV4DNS1=//p' /tmp/net-"${DEVICE}".conf)" |
2869 | + rc_server0="nameserver ${rc_server0}" |
2870 | + if [ "${rc_server1}" = "0.0.0.0" ]; then |
2871 | + rc_server1="" |
2872 | + else |
2873 | + rc_server1="nameserver ${rc_server1}" |
2874 | + fi |
2875 | + cat > /root/etc/resolv.conf <<EOF |
2876 | # /etc/resolv.conf |
2877 | # Autogenerated by casper |
2878 | search ${rc_search} |
2879 | -domain ${rc_search} |
2880 | +domain ${rc_domain} |
2881 | ${rc_server0} |
2882 | ${rc_server1} |
2883 | EOF |
2884 | - cat /root/etc/resolv.conf >> /root/var/log/netboot.config |
2885 | + cat /root/etc/resolv.conf >> /root/var/log/netboot.config |
2886 | + fi |
2887 | fi |
2888 | fi |
2889 | |
2890 | |
2891 | === modified file 'scripts/casper-bottom/24preseed' |
2892 | --- scripts/casper-bottom/24preseed 2010-01-20 23:33:29 +0000 |
2893 | +++ scripts/casper-bottom/24preseed 2011-10-06 10:04:28 +0000 |
2894 | @@ -17,13 +17,40 @@ |
2895 | esac |
2896 | |
2897 | . /scripts/casper-functions |
2898 | +load_confmodule |
2899 | |
2900 | log_begin_msg "$DESCRIPTION" |
2901 | |
2902 | if [ -e /preseed.cfg ]; then |
2903 | - chroot /root debconf-set-selections < /preseed.cfg |
2904 | + casper-set-selections /preseed.cfg |
2905 | fi |
2906 | |
2907 | +network_started= |
2908 | + |
2909 | +start_network () { |
2910 | + [ -z "$network_started" ] || return |
2911 | + [ -z "$NETBOOT" ] || return |
2912 | + |
2913 | + mount -n -o bind /sys /root/sys |
2914 | + mount -n -o bind /proc /root/proc |
2915 | + mount -n -o bind /dev /root/dev |
2916 | + mkdir -p /root/var/run/network |
2917 | + # Close inherited fd's to prevent debconf-communicate from |
2918 | + # continuing to run post-casper. |
2919 | + chroot /root dhclient eth0 3>&- 4<&- |
2920 | + |
2921 | + network_started=1 |
2922 | +} |
2923 | + |
2924 | +stop_network () { |
2925 | + [ "$network_started" ] || return |
2926 | + |
2927 | + chroot /root ifconfig eth0 down |
2928 | + umount /root/sys |
2929 | + umount /root/proc |
2930 | + umount /root/dev |
2931 | +} |
2932 | + |
2933 | locations= |
2934 | for x in $(cat /proc/cmdline); do |
2935 | case $x in |
2936 | @@ -35,16 +62,8 @@ |
2937 | ;; |
2938 | url=*) |
2939 | url_location="${x#url=}" |
2940 | - mount -n -o bind /sys /root/sys |
2941 | - mount -n -o bind /proc /root/proc |
2942 | - mount -n -o bind /dev /root/dev |
2943 | - mkdir -p /root/var/run/network |
2944 | - [ "$NETBOOT" ] || chroot /root dhclient eth0 |
2945 | + start_network |
2946 | chroot /root wget -P /tmp "$url_location" |
2947 | - [ "$NETBOOT" ] || chroot /root ifconfig eth0 down |
2948 | - umount /root/sys |
2949 | - umount /root/proc |
2950 | - umount /root/dev |
2951 | locations="/tmp/$(basename "$url_location") $locations" |
2952 | ;; |
2953 | */*\?=*) |
2954 | @@ -66,16 +85,22 @@ |
2955 | |
2956 | if [ "$locations" ]; then |
2957 | for item in $locations; do |
2958 | - chroot /root debconf-set-selections < "/root$item" |
2959 | + casper-set-selections "/root$item" |
2960 | done |
2961 | fi |
2962 | |
2963 | -reply="$(echo "GET preseed/early_command" | chroot /root debconf-communicate -fnoninteractive casper)" |
2964 | -if [ "${reply#0 }" != "$reply" ]; then |
2965 | - reply="${reply#0 }" |
2966 | - sh -c "$reply" |
2967 | +if db_get preseed/early_command && [ "$RET" ]; then |
2968 | + EARLY="$RET" |
2969 | + if db_get preseed/allow-network && [ "$RET" = true ]; then |
2970 | + start_network |
2971 | + fi |
2972 | + DEBIAN_HAS_FRONTEND= DEBCONF_REDIR= \ |
2973 | + DEBIAN_FRONTEND=noninteractive \ |
2974 | + sh -c "$EARLY" |
2975 | fi |
2976 | |
2977 | +stop_network |
2978 | + |
2979 | # Clear out debconf database backup files to save memory. |
2980 | rm -f /root/var/cache/debconf/*.dat-old |
2981 | |
2982 | |
2983 | === modified file 'scripts/casper-bottom/25configure_init' |
2984 | --- scripts/casper-bottom/25configure_init 2010-01-05 16:54:40 +0000 |
2985 | +++ scripts/casper-bottom/25configure_init 2011-10-06 10:04:28 +0000 |
2986 | @@ -54,7 +54,7 @@ |
2987 | rm -f /root/etc/rc?.d/[SK]??postfix |
2988 | |
2989 | # Avoid clobbering the user's clock |
2990 | -rm -f /root/etc/rc?.d/K??hwclock.sh |
2991 | +rm -f /root/etc/rc?.d/K??hwclock.sh /root/etc/init/hwclock-save.conf |
2992 | |
2993 | # Disable readahead since it doesn't play well with squashfs + unionfs |
2994 | # use chmod instead of mv to not trigger unionfs bugs. |
2995 | @@ -65,7 +65,7 @@ |
2996 | # Disable ureadahead too since we don't ship a pack file for it anyway, so |
2997 | # all we'll end up doing is profiling the live CD boot. ureadahead also |
2998 | # breaks partman occasionally by reading from its synchronisation FIFOs. |
2999 | -rm -f /root/etc/init/ureadahead.conf |
3000 | +rm -f /root/etc/init/ureadahead*.conf |
3001 | |
3002 | log_end_msg |
3003 | |
3004 | |
3005 | === added file 'scripts/casper-bottom/26disable_user_menu' |
3006 | --- scripts/casper-bottom/26disable_user_menu 1970-01-01 00:00:00 +0000 |
3007 | +++ scripts/casper-bottom/26disable_user_menu 2011-10-06 10:04:28 +0000 |
3008 | @@ -0,0 +1,28 @@ |
3009 | +#!/bin/sh |
3010 | + |
3011 | +PREREQ="" |
3012 | +DESCRIPTION="Disabling user menu..." |
3013 | + |
3014 | +prereqs() |
3015 | +{ |
3016 | + echo "$PREREQ" |
3017 | +} |
3018 | + |
3019 | +case $1 in |
3020 | +# get pre-requisites |
3021 | +prereqs) |
3022 | + prereqs |
3023 | + exit 0 |
3024 | + ;; |
3025 | +esac |
3026 | + |
3027 | +. /scripts/casper-functions |
3028 | + |
3029 | +log_begin_msg "$DESCRIPTION" |
3030 | + |
3031 | +indicator_session_version=$(chroot /root dpkg-query -W --showformat='${Version}' indicator-session 2>/dev/null) || indicator_session_version="" |
3032 | +if [ -n "$indicator_session_version=" ]; then |
3033 | + chroot /root sudo -u "$USERNAME" gsettings set com.canonical.indicator.session user-show-menu false |
3034 | +fi |
3035 | + |
3036 | +log_end_msg |
3037 | |
3038 | === modified file 'scripts/casper-bottom/30accessibility' |
3039 | --- scripts/casper-bottom/30accessibility 2010-01-05 16:54:40 +0000 |
3040 | +++ scripts/casper-bottom/30accessibility 2011-10-06 10:04:28 +0000 |
3041 | @@ -1,172 +1,52 @@ |
3042 | #!/bin/sh |
3043 | -# If you change this, please also change the copy in ubiquity-hooks/30accessibility. |
3044 | +# If you are looking to change accessibility profile settings, plesae look in |
3045 | +# bin/casper-a11y-enable. |
3046 | |
3047 | PREREQ="" |
3048 | DESCRIPTION="Configuring accessibility options..." |
3049 | |
3050 | prereqs() |
3051 | { |
3052 | - echo "$PREREQ" |
3053 | + echo "$PREREQ" |
3054 | } |
3055 | |
3056 | case $1 in |
3057 | # get pre-requisites |
3058 | -prereqs) |
3059 | - prereqs |
3060 | - exit 0 |
3061 | - ;; |
3062 | + prereqs) |
3063 | + prereqs |
3064 | + exit 0 |
3065 | + ;; |
3066 | esac |
3067 | |
3068 | . /scripts/casper-functions |
3069 | |
3070 | log_begin_msg "$DESCRIPTION" |
3071 | |
3072 | -gconf_version=$(chroot /root /usr/bin/dpkg-query -W --showformat='${Version}' gconf2 2>/dev/null) || gconf_version="" |
3073 | - |
3074 | -gct() { |
3075 | - if [ "$gconf_version" ]; then |
3076 | - chroot /root sudo -u "$USERNAME" gconftool-2 "$@" |
3077 | - fi |
3078 | -} |
3079 | - |
3080 | -kderc_addtoprefixes() { |
3081 | - if [ -e "/root/etc/kde4rc" ]; then |
3082 | - sed -i "s|\\(prefixes=/usr/share/kubuntu-default-settings/kde-profile/default/\\)|\\1,$1|" /root/etc/kde4rc |
3083 | - fi |
3084 | -} |
3085 | - |
3086 | -# Code to remove an applet from the default panel setup |
3087 | -# This is rather hacky, but I can't think of a one or two line regular |
3088 | -# expression to do this any more efficiently. Patches welcome. |
3089 | -# In addition, setting these via gconf also doesn't work for some reason. |
3090 | -remove_applet() |
3091 | -{ |
3092 | - local line_no prior_line next_line |
3093 | - |
3094 | - line_no=$(grep -n "<string>$1</string>" /root/usr/share/gconf/defaults/05_panel-default-setup.entries | cut -f 1 -d :) |
3095 | - [ "$line_no" ] || return |
3096 | - prior_line=$((line_no-1)) |
3097 | - next_line=$((line_no+1)) |
3098 | - sed -i -n "${prior_line},${next_line}!p" /root/usr/share/gconf/defaults/05_panel-default-setup.entries |
3099 | - chroot /root update-gconf-defaults |
3100 | -} |
3101 | - |
3102 | for x in $(cat /proc/cmdline); do |
3103 | - case $x in |
3104 | - # Lesser Visual Impairment |
3105 | - access=v1) |
3106 | - gct -s -t string /desktop/gnome/interface/gtk_theme HighContrastLargePrint |
3107 | - gct -s -t string /desktop/gnome/interface/icon_theme HighContrast |
3108 | - gct -s -t string /desktop/gnome/interface/monospace_font_name "monospace 18" |
3109 | - gct -s -t string /desktop/gnome/interface/font_name "sans 18" |
3110 | - gct -s -t string /apps/metacity/general/theme Atlanta |
3111 | - gct -s -t string /desktop/gnome/background/picture_filename "" |
3112 | - gct -s -t string /desktop/gnome/background/picture_options none |
3113 | - gct -s -t string /desktop/gnome/background/primary_color \#666666 |
3114 | - gct -s -t string /desktop/gnome/background/secondary_color \#7F7F7F |
3115 | - gct -s -t string /desktop/gnome/background/color_shading_type solid |
3116 | - gct -s -t int /desktop/gnome/peripherals/mouse/cursor_size 48 |
3117 | - gct -s -t string /desktop/gnome/peripherals/mouse/cursor_theme whiteglass |
3118 | - |
3119 | - kderc_addtoprefixes /usr/share/kubuntu-default-settings/kde-profile/lesser-visual-impairment/ |
3120 | - if [ -d /root/usr/share/xubuntu-default-settings/accessibility ]; then |
3121 | - cp -a /root/usr/share/xubuntu-default-settings/accessibility/* /root/etc/xdg/ |
3122 | - fi |
3123 | - ;; |
3124 | - # Moderate Visual Impairment |
3125 | - access=v2) |
3126 | - gct -s -t bool /desktop/gnome/interface/accessibility true |
3127 | - gct -s -t bool /desktop/gnome/applications/at/visual/startup true |
3128 | - gct -s -t string /desktop/gnome/applications/at/visual/exec orca |
3129 | - if [ -x /root/usr/bin/orca ]; then |
3130 | - mkdir -p /root/home/$USERNAME/.orca |
3131 | - echo "import orca.settings" >> /root/home/$USERNAME/.orca/user-settings.py |
3132 | - echo "orca.settings.enableSpeech = False" >> /root/home/$USERNAME/.orca/user-settings.py |
3133 | - echo "orca.settings.enableMagnifier = True" >> /root/home/$USERNAME/.orca/user-settings.py |
3134 | - chroot /root chown -R $USERNAME.$USERNAME /home/$USERNAME/.orca |
3135 | - fi |
3136 | - gct -s -t bool /apps/gksu/disable-grab true |
3137 | - gct -s -t string /desktop/gnome/applications/window_manager/default /usr/bin/metacity |
3138 | - 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 |
3139 | - kderc_addtoprefixes /usr/share/kubuntu-default-settings/kde-profile/lesser-visual-impairment/,/usr/share/kubuntu-default-settings/kde-profile/moderate-visual-impairment/ |
3140 | - ;; |
3141 | - # Blindness |
3142 | - access=v3) |
3143 | - gct -s -t bool /desktop/gnome/interface/accessibility true |
3144 | - gct -s -t bool /apps/gksu/disable-grab true |
3145 | - gct -s -t string /desktop/gnome/applications/window_manager/default /usr/bin/metacity |
3146 | - gct -s -t bool /desktop/gnome/applications/at/visual/startup true |
3147 | - gct -s -t string /desktop/gnome/applications/at/visual/exec orca |
3148 | - remove_applet fast_user_switch |
3149 | - if [ -x /root/usr/bin/pulse-session ]; then |
3150 | - mkdir -p /root/var/lib/pulseaudio |
3151 | - touch /root/var/lib/pulseaudio/pulse_a11y_nostart |
3152 | - chroot /root chown root.root /var/lib/pulseaudio/pulse_a11y_nostart |
3153 | - mkdir -p /root/home/$USERNAME/.pulse |
3154 | - echo "autospawn = no" > /root/home/$USERNAME/.pulse/client.conf |
3155 | - chroot /root chown -R $USERNAME.$USERNAME /home/$USERNAME/.pulse |
3156 | - fi |
3157 | - 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 |
3158 | - if [ -x /root/usr/bin/orca ]; then |
3159 | - mkdir -p /root/home/$USERNAME/.orca |
3160 | - chroot /root chown -R $USERNAME.$USERNAME /home/$USERNAME/.orca |
3161 | - fi |
3162 | - ;; |
3163 | - # Braille |
3164 | - braille=ask) |
3165 | - gct -s -t bool /desktop/gnome/interface/accessibility true |
3166 | - gct -s -t bool /desktop/gnome/applications/at/visual/startup true |
3167 | - gct -s -t string /desktop/gnome/applications/at/visual/exec orca |
3168 | - if [ -x /root/usr/bin/orca ]; then |
3169 | - mkdir -p /root/home/$USERNAME/.orca |
3170 | - echo "import orca.settings" >> /root/home/$USERNAME/.orca/user-settings.py |
3171 | - echo "orca.settings.enableSpeech = False" >> /root/home/$USERNAME/.orca/user-settings.py |
3172 | - echo "orca.settings.enableBraille = True" >> /root/home/$USERNAME/.orca/user-settings.py |
3173 | - chroot /root chown -R $USERNAME.$USERNAME /home/$USERNAME/.orca |
3174 | - fi |
3175 | - gct -s -t bool /apps/gksu/disable-grab true |
3176 | - gct -s -t string /desktop/gnome/applications/window_manager/default /usr/bin/metacity |
3177 | - remove_applet fast_user_switch |
3178 | - 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 |
3179 | - if [ -x /root/usr/bin/pulse-session ]; then |
3180 | - mkdir -p /root/var/lib/pulseaudio |
3181 | - touch /root/var/lib/pulseaudio/pulse_a11y_nostart |
3182 | - chroot /root chown root.root /var/lib/pulseaudio/pulse_a11y_nostart |
3183 | - mkdir -p /root/home/$USERNAME/.pulse |
3184 | - echo "autospawn = no" > /root/home/$USERNAME/.pulse/client.conf |
3185 | - chroot /root chown -R $USERNAME.$USERNAME /home/$USERNAME/.pulse |
3186 | - fi |
3187 | - ;; |
3188 | - # Minor Motor Difficulties |
3189 | - access=m1) |
3190 | - gct -s -t bool /desktop/gnome/accessibility/keyboard/enable true |
3191 | - gct -s -t bool /desktop/gnome/accessibility/keyboard/mousekeys_enable true |
3192 | - gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_enable true |
3193 | - gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_modifier_beep true |
3194 | - gct -s -t bool /desktop/accessibility/gnome/keyboard/stickykeys_two_key_off false |
3195 | - gct -s -t bool /desktop/gnome/peripherals/keyboard/repeat true |
3196 | - gct -s -t int /desktop/gnome/peripherals/keyboard/delay 700 |
3197 | - gct -s -t int /desktop/gnome/peripherals/keyboard/rate 10 |
3198 | - gct -s -t bool /apps/gksu/disable-grab true |
3199 | - kderc_addtoprefixes /usr/share/kubuntu-default-settings/kde-profile/minor-motor-difficulties/ |
3200 | - if [ -e /root/etc/xdg/xfce4/mcs_settings/keyboard.xml ]; then |
3201 | - sed -i 's/0/1/' /root/etc/xdg/xfce4/mcs_settings/keyboard.xml |
3202 | - fi |
3203 | - ;; |
3204 | - # Motor Difficulties - pointing devices |
3205 | - access=m2) |
3206 | - gct -s -t bool /desktop/gnome/accessibility/keyboard/enable true |
3207 | - gct -s -t bool /desktop/gnome/interface/accessibility true |
3208 | - gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_enable true |
3209 | - gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_modifier_beep false |
3210 | - gct -s -t bool /desktop/accessibility/gnome/keyboard/stickykeys_two_key_off false |
3211 | - gct -s -t bool /desktop/gnome/applications/at/mobility/startup true |
3212 | - gct -s -t string /desktop/gnome/applications/at/mobility/exec onboard |
3213 | - |
3214 | - kderc_addtoprefixes /usr/share/kubuntu-default-settings/kde-profile/minor-motor-difficulties/,/usr/share/kubuntu-default-settings/kde-profile/motor-difficulties-pointing-devices/ |
3215 | - if [ -e /root/etc/xdg/xfce4/mcs_settings/keyboard.xml ]; then |
3216 | - sed -i '/Sticky/ s/0/1/' /root/etc/xdg/xfce4/mcs_settings/keyboard.xml |
3217 | - fi |
3218 | + case $x in |
3219 | + # Lesser Visual Impairment |
3220 | + access=v1) |
3221 | + /root/usr/bin/casper-a11y-enable -initramfs -user="$USERNAME" -chroot=/root -script high-contrast |
3222 | + ;; |
3223 | + # Moderate Visual Impairment |
3224 | + access=v2) |
3225 | + /root/usr/bin/casper-a11y-enable -initramfs -user="$USERNAME" -chroot=/root -script magnifier |
3226 | + ;; |
3227 | + # Blindness |
3228 | + access=v3) |
3229 | + /root/usr/bin/casper-a11y-enable -initramfs -user="$USERNAME" -chroot=/root -script blindness |
3230 | + ;; |
3231 | + # Braille |
3232 | + braille=ask) |
3233 | + /root/usr/bin/casper-a11y-enable -initramfs -user="$USERNAME" -chroot=/root -script braille |
3234 | + ;; |
3235 | + # Minor Motor Difficulties |
3236 | + access=m1) |
3237 | + /root/usr/bin/casper-a11y-enable -initramfs -user="$USERNAME" -chroot=/root -script keyboard-modifiers |
3238 | + ;; |
3239 | + # Motor Difficulties - pointing devices |
3240 | + access=m2) |
3241 | + /root/usr/bin/casper-a11y-enable -initramfs -user="$USERNAME" -chroot=/root -script onscreen-keyboard |
3242 | ;; |
3243 | esac |
3244 | done |
3245 | |
3246 | === modified file 'scripts/casper-bottom/31disable_update_notifier' |
3247 | --- scripts/casper-bottom/31disable_update_notifier 2010-01-05 16:54:40 +0000 |
3248 | +++ scripts/casper-bottom/31disable_update_notifier 2011-10-06 10:04:28 +0000 |
3249 | @@ -31,4 +31,12 @@ |
3250 | # 'apt-get update' equivalent, so we disable it entirely. |
3251 | rm -f /root/usr/share/autostart/adept_notifier_auto.desktop |
3252 | |
3253 | +# Upgrading the live CD to new releases is probably not a great plan. |
3254 | +chroot /root dpkg-divert --add --rename --quiet \ |
3255 | + /usr/lib/update-manager/check-new-release |
3256 | +ln -sf /bin/true /root/usr/lib/update-manager/check-new-release |
3257 | +chroot /root dpkg-divert --add --rename --quiet \ |
3258 | + /usr/lib/update-manager/check-new-release-gtk |
3259 | +ln -sf /bin/true /root/usr/lib/update-manager/check-new-release-gtk |
3260 | + |
3261 | log_end_msg |
3262 | |
3263 | === modified file 'scripts/casper-bottom/32disable_hibernation' |
3264 | --- scripts/casper-bottom/32disable_hibernation 2010-01-05 16:54:40 +0000 |
3265 | +++ scripts/casper-bottom/32disable_hibernation 2011-10-06 10:04:28 +0000 |
3266 | @@ -20,15 +20,11 @@ |
3267 | |
3268 | log_begin_msg "$DESCRIPTION" |
3269 | |
3270 | - |
3271 | -gpm_version=$(chroot /root /usr/bin/dpkg-query -W --showformat='${Version}' gnome-power-manager 2>/dev/null) || panel_version="" |
3272 | -if [ -n "$gpm_version" ]; then |
3273 | -# casper-reconfigure /root gnome-power-manager |
3274 | - chroot /root sudo -u "$USERNAME" gconftool-2 -s -t bool /apps/gnome-power-manager/general/can_hibernate false |
3275 | -fi |
3276 | - |
3277 | -if [ -d /root/usr/share/kubuntu-default-settings/kde-profile/default/share/config ]; then |
3278 | - echo "disableHibernate=1" >> /root/usr/share/kubuntu-default-settings/kde-profile/default/share/config/guidance-power-managerrc |
3279 | -fi |
3280 | +cat <<EOF > /root/var/lib/polkit-1/localauthority/50-local.d/disable-hibernate.pkla |
3281 | +[Disable hibernate in live system] |
3282 | +Identity=unix-user:* |
3283 | +Action=org.freedesktop.upower.hibernate |
3284 | +ResultActive=no |
3285 | +EOF |
3286 | |
3287 | log_end_msg |
3288 | |
3289 | === added file 'scripts/casper-bottom/34disable_kde_services.OTHER' |
3290 | --- scripts/casper-bottom/34disable_kde_services.OTHER 1970-01-01 00:00:00 +0000 |
3291 | +++ scripts/casper-bottom/34disable_kde_services.OTHER 2011-10-06 10:04:28 +0000 |
3292 | @@ -0,0 +1,36 @@ |
3293 | +#! /bin/sh |
3294 | + |
3295 | +PREREQ="" |
3296 | +DESCRIPTION="Disabling unnecessary KDE services..." |
3297 | + |
3298 | +prereqs() |
3299 | +{ |
3300 | + echo "$PREREQ" |
3301 | +} |
3302 | + |
3303 | +case $1 in |
3304 | +# get pre-requisites |
3305 | +prereqs) |
3306 | + prereqs |
3307 | + exit 0 |
3308 | + ;; |
3309 | +esac |
3310 | + |
3311 | +. /scripts/casper-functions |
3312 | + |
3313 | +log_begin_msg "$DESCRIPTION" |
3314 | + |
3315 | +rm -f /root/usr/share/autostart/kab2kabc.desktop |
3316 | +rm -f /root/usr/share/autostart/kaddressbookmigrator.desktop |
3317 | +rm -f /root/usr/share/autostart/korgac.desktop |
3318 | +rm -f /root/usr/share/autostart/printer-applet.desktop |
3319 | +rm -f /root/usr/share/autostart/nepomukserver.desktop |
3320 | +rm -f /root/usr/share/kde4/services/kwalletd.desktop |
3321 | +rm -f /root/usr/share/kde4/services/kded/kpackagekitd.desktop |
3322 | +if [ -z "${PERSISTENT}" ]; then |
3323 | + rm -f /root/usr/share/kde4/services/kded/freespacenotifier.desktop |
3324 | +fi |
3325 | +rm -f /root/usr/share/kde4/services/plasma-runner-contacts.desktop # starts akonadi |
3326 | +rm -f /root/usr/share/kde4/services/plasma-dataengine-calendar.desktop # starts akonadi |
3327 | + |
3328 | +log_end_msg |
3329 | |
3330 | === removed file 'scripts/casper-bottom/37kubuntu_netbook_installer_link' |
3331 | --- scripts/casper-bottom/37kubuntu_netbook_installer_link 2010-01-05 16:54:40 +0000 |
3332 | +++ scripts/casper-bottom/37kubuntu_netbook_installer_link 1970-01-01 00:00:00 +0000 |
3333 | @@ -1,28 +0,0 @@ |
3334 | -#! /bin/sh |
3335 | - |
3336 | -PREREQ="" |
3337 | -DESCRIPTION="Adding installer to Kubuntu Netbook favourites..." |
3338 | - |
3339 | -prereqs() |
3340 | -{ |
3341 | - echo "$PREREQ" |
3342 | -} |
3343 | - |
3344 | -case $1 in |
3345 | -# get pre-requisites |
3346 | -prereqs) |
3347 | - prereqs |
3348 | - exit 0 |
3349 | - ;; |
3350 | -esac |
3351 | - |
3352 | -. /scripts/casper-functions |
3353 | - |
3354 | -log_begin_msg "$DESCRIPTION" |
3355 | - |
3356 | -if [ -e "/root/usr/share/kubuntu-netbook-default-settings/share/config/moved_plasma-netbook-appletsrc" ]; then |
3357 | - mv /root/usr/share/kubuntu-netbook-default-settings/share/config/moved_plasma-netbook-appletsrc \ |
3358 | - /root/usr/share/kubuntu-netbook-default-settings/share/config/plasma-netbook-appletsrc |
3359 | -fi |
3360 | - |
3361 | -log_end_msg |
3362 | |
3363 | === modified file 'scripts/casper-bottom/40install_driver_updates' |
3364 | --- scripts/casper-bottom/40install_driver_updates 2010-01-05 16:54:40 +0000 |
3365 | +++ scripts/casper-bottom/40install_driver_updates 2011-10-06 10:04:28 +0000 |
3366 | @@ -34,7 +34,13 @@ |
3367 | for deb in "/root$install_dir"/*; do |
3368 | [ -f "$deb" ] || continue |
3369 | debbase="${deb##*/}" |
3370 | - if ! chroot /root dpkg -i "$install_dir/$debbase"; then |
3371 | + DEBIAN_HAS_FRONTEND= DEBCONF_REDIR= \ |
3372 | + DEBIAN_FRONTEND=noninteractive \ |
3373 | + chroot /root dpkg -i "$install_dir/$debbase" |
3374 | + ret=$? |
3375 | + if [ $ret != 0 ]; then |
3376 | + DEBIAN_HAS_FRONTEND= DEBCONF_REDIR= \ |
3377 | + DEBIAN_FRONTEND=noninteractive \ |
3378 | chroot /root dpkg -P "${debbase%%_*}" |
3379 | fi |
3380 | done |
3381 | |
3382 | === modified file 'scripts/casper-bottom/41apt_cdrom' |
3383 | --- scripts/casper-bottom/41apt_cdrom 2010-01-05 16:54:40 +0000 |
3384 | +++ scripts/casper-bottom/41apt_cdrom 2011-10-06 10:04:28 +0000 |
3385 | @@ -18,4 +18,12 @@ |
3386 | |
3387 | . /scripts/casper-functions |
3388 | |
3389 | -chroot /root apt-cdrom -m add |
3390 | +mount -n -o bind /sys /root/sys |
3391 | +mount -n -o bind /proc /root/proc |
3392 | +mount -n -o bind /dev /root/dev |
3393 | +chroot /root apt-cdrom -o Acquire::cdrom::mount=/cdrom \ |
3394 | + -o Dir::Media::MountPath=/cdrom \ |
3395 | + -o Acquire::cdrom::AutoDetect=false -m add |
3396 | +umount /root/dev |
3397 | +umount /root/proc |
3398 | +umount /root/sys |
3399 | |
3400 | === removed file 'scripts/casper-bottom/42disable_apparmor' |
3401 | --- scripts/casper-bottom/42disable_apparmor 2010-01-05 16:54:40 +0000 |
3402 | +++ scripts/casper-bottom/42disable_apparmor 1970-01-01 00:00:00 +0000 |
3403 | @@ -1,26 +0,0 @@ |
3404 | -#!/bin/sh |
3405 | -# workaround for AppArmor bug #131976 |
3406 | - |
3407 | -PREREQ="" |
3408 | -DESCRIPTION="Disabling AppArmor (does not work with stacked file systems)..." |
3409 | - |
3410 | -prereqs() |
3411 | -{ |
3412 | - echo "$PREREQ" |
3413 | -} |
3414 | - |
3415 | -case $1 in |
3416 | -# get pre-requisites |
3417 | -prereqs) |
3418 | - prereqs |
3419 | - exit 0 |
3420 | - ;; |
3421 | -esac |
3422 | - |
3423 | -. /scripts/casper-functions |
3424 | - |
3425 | -log_begin_msg "$DESCRIPTION" |
3426 | - |
3427 | -chroot /root update-rc.d -f apparmor remove |
3428 | - |
3429 | -log_end_msg |
3430 | |
3431 | === modified file 'scripts/casper-bottom/43disable_updateinitramfs' |
3432 | --- scripts/casper-bottom/43disable_updateinitramfs 2010-01-05 16:54:40 +0000 |
3433 | +++ scripts/casper-bottom/43disable_updateinitramfs 2011-10-06 10:04:28 +0000 |
3434 | @@ -27,13 +27,8 @@ |
3435 | if [ -w /root/cdrom ] && \ |
3436 | # rw is guaranteed to be first. |
3437 | grep -q ' /root/cdrom rw[, ]' /proc/self/mountinfo; then |
3438 | - cat > /root/usr/sbin/update-initramfs <<'EOF' |
3439 | -#! /bin/sh |
3440 | -update-initramfs.distrib "$@" |
3441 | -cp /initrd.img /cdrom/casper/initrd.gz |
3442 | -cp /vmlinuz /cdrom/casper/vmlinuz |
3443 | -exit 0 |
3444 | -EOF |
3445 | + ln -s /usr/share/casper/casper-update-initramfs \ |
3446 | + /root/usr/sbin/update-initramfs |
3447 | else |
3448 | cat > /root/usr/sbin/update-initramfs <<EOF |
3449 | #! /bin/sh |
3450 | |
3451 | === modified file 'scripts/casper-bottom/44pk_allow_ubuntu' |
3452 | --- scripts/casper-bottom/44pk_allow_ubuntu 2010-01-05 16:54:40 +0000 |
3453 | +++ scripts/casper-bottom/44pk_allow_ubuntu 2011-10-06 10:04:28 +0000 |
3454 | @@ -1,7 +1,7 @@ |
3455 | #!/bin/sh |
3456 | |
3457 | PREREQ="" |
3458 | -DESCRIPTION="Grant administrative PolicyKit pivilieges to default user..." |
3459 | +DESCRIPTION="Grant administrative PolicyKit privileges to default user..." |
3460 | |
3461 | prereqs() |
3462 | { |
3463 | @@ -21,27 +21,6 @@ |
3464 | log_begin_msg "$DESCRIPTION" |
3465 | |
3466 | # configure PolicyKit in live session |
3467 | -mkdir -p /root/etc/PolicyKit |
3468 | -cat << EOF > /root/etc/PolicyKit/PolicyKit.conf |
3469 | -<?xml version="1.0" encoding="UTF-8"?> <!-- -*- XML -*- --> |
3470 | - |
3471 | -<!DOCTYPE pkconfig PUBLIC "-//freedesktop//DTD PolicyKit Configuration 1.0//EN" |
3472 | -"http://hal.freedesktop.org/releases/PolicyKit/1.0/config.dtd"> |
3473 | - |
3474 | -<!-- See the manual page PolicyKit.conf(5) for file format --> |
3475 | - |
3476 | -<config version="0.1"> |
3477 | - <match user="root"> |
3478 | - <return result="yes"/> |
3479 | - </match> |
3480 | - <!-- don't ask password for user in live session --> |
3481 | - <match user="$USERNAME"> |
3482 | - <return result="yes"/> |
3483 | - </match> |
3484 | - <define_admin_auth group="admin"/> |
3485 | -</config> |
3486 | -EOF |
3487 | - |
3488 | mkdir -p /root/var/lib/polkit-1/localauthority/10-vendor.d |
3489 | cat << EOF > /root/var/lib/polkit-1/localauthority/10-vendor.d/10-live-cd.pkla |
3490 | # Policy to allow the livecd user to bypass policykit |
3491 | @@ -49,7 +28,7 @@ |
3492 | Identity=unix-user:$USERNAME |
3493 | Action=* |
3494 | ResultAny=no |
3495 | -ResultInactive=no |
3496 | +ResultInactive=yes |
3497 | ResultActive=yes |
3498 | EOF |
3499 | |
3500 | |
3501 | === removed file 'scripts/casper-bottom/45disable_guest_account' |
3502 | --- scripts/casper-bottom/45disable_guest_account 2010-01-05 16:54:40 +0000 |
3503 | +++ scripts/casper-bottom/45disable_guest_account 1970-01-01 00:00:00 +0000 |
3504 | @@ -1,25 +0,0 @@ |
3505 | -#!/bin/sh |
3506 | - |
3507 | -PREREQ="" |
3508 | -DESCRIPTION="Disabling gdm guest session functionality..." |
3509 | - |
3510 | -prereqs() |
3511 | -{ |
3512 | - echo "$PREREQ" |
3513 | -} |
3514 | - |
3515 | -case $1 in |
3516 | -# get pre-requisites |
3517 | -prereqs) |
3518 | - prereqs |
3519 | - exit 0 |
3520 | - ;; |
3521 | -esac |
3522 | - |
3523 | -. /scripts/casper-functions |
3524 | - |
3525 | -log_begin_msg "$DESCRIPTION" |
3526 | - |
3527 | -chroot /root dpkg -P gdm-guest-session || true |
3528 | - |
3529 | -log_end_msg |
3530 | |
3531 | === removed file 'scripts/casper-bottom/47unr_ubiquity' |
3532 | --- scripts/casper-bottom/47unr_ubiquity 2010-01-05 16:54:40 +0000 |
3533 | +++ scripts/casper-bottom/47unr_ubiquity 1970-01-01 00:00:00 +0000 |
3534 | @@ -1,39 +0,0 @@ |
3535 | -#!/bin/sh |
3536 | - |
3537 | -PREREQ="" |
3538 | -DESCRIPTION="Set ubiquity favourite for UNR..." |
3539 | - |
3540 | -prereqs() |
3541 | -{ |
3542 | - echo "$PREREQ" |
3543 | -} |
3544 | - |
3545 | -case $1 in |
3546 | -# get pre-requisites |
3547 | -prereqs) |
3548 | - prereqs |
3549 | - exit 0 |
3550 | - ;; |
3551 | -esac |
3552 | - |
3553 | -. /scripts/casper-functions |
3554 | - |
3555 | -log_begin_msg "$DESCRIPTION" |
3556 | - |
3557 | -gconf_version=$(chroot /root /usr/bin/dpkg-query -W --showformat='${Version}' gconf2 2>/dev/null) || gconf_version="" |
3558 | - |
3559 | -gct() { |
3560 | - if [ "$gconf_version" ]; then |
3561 | - chroot /root sudo -u "$USERNAME" gconftool-2 "$@" |
3562 | - fi |
3563 | -} |
3564 | - |
3565 | -if ! gct -g /apps/netbook-launcher/favorites/favorites_list | grep -q ubiquity; then |
3566 | - gct -s -t string /apps/netbook-launcher/favorites/ubiquity/type application |
3567 | - gct -s -t string /apps/netbook-launcher/favorites/ubiquity/desktop_file /usr/share/applications/ubiquity-gtkui.desktop |
3568 | - favs=$(gct -g /apps/netbook-launcher/favorites/favorites_list) |
3569 | - gct -s -t list --list-type=string /apps/netbook-launcher/favorites/favorites_list $(echo "$favs" | sed -e 's/]$/,ubiquity]/') |
3570 | -fi |
3571 | - |
3572 | -log_end_msg |
3573 | - |
3574 | |
3575 | === removed file 'scripts/casper-bottom/48enable_kubuntu_netbook' |
3576 | --- scripts/casper-bottom/48enable_kubuntu_netbook 2010-01-27 13:56:03 +0000 |
3577 | +++ scripts/casper-bottom/48enable_kubuntu_netbook 1970-01-01 00:00:00 +0000 |
3578 | @@ -1,27 +0,0 @@ |
3579 | -#! /bin/sh |
3580 | - |
3581 | -PREREQ="" |
3582 | -DESCRIPTION="Enabling Plasma Netbook workspace if appropriate..." |
3583 | - |
3584 | -prereqs() |
3585 | -{ |
3586 | - echo "$PREREQ" |
3587 | -} |
3588 | - |
3589 | -case $1 in |
3590 | -# get pre-requisites |
3591 | -prereqs) |
3592 | - prereqs |
3593 | - exit 0 |
3594 | - ;; |
3595 | -esac |
3596 | - |
3597 | -. /scripts/casper-functions |
3598 | - |
3599 | -log_begin_msg "$DESCRIPTION" |
3600 | - |
3601 | -if [ -e "/root/usr/share/autostart/plasma-netbook.desktop" ]; then |
3602 | - sed -i "s,Hidden=true,," /root/usr/share/autostart/plasma-netbook.desktop |
3603 | -fi |
3604 | - |
3605 | -log_end_msg |
3606 | |
3607 | === added file 'scripts/casper-bottom/48kubuntu_disable_restart_notifications' |
3608 | --- scripts/casper-bottom/48kubuntu_disable_restart_notifications 1970-01-01 00:00:00 +0000 |
3609 | +++ scripts/casper-bottom/48kubuntu_disable_restart_notifications 2011-10-06 10:04:28 +0000 |
3610 | @@ -0,0 +1,5 @@ |
3611 | +#! /bin/sh |
3612 | + |
3613 | +if [ -d /root/usr/share/kubuntu-default-settings/ ]; then |
3614 | + echo "[Event]\nhideRestartNotifier=true" >> /root/usr/share/kubuntu-default-settings/kde-profile/default/share/config/notificationhelper |
3615 | +fi |
3616 | |
3617 | === added file 'scripts/casper-bottom/49kubuntu_mobile_session' |
3618 | --- scripts/casper-bottom/49kubuntu_mobile_session 1970-01-01 00:00:00 +0000 |
3619 | +++ scripts/casper-bottom/49kubuntu_mobile_session 2011-10-06 10:04:28 +0000 |
3620 | @@ -0,0 +1,5 @@ |
3621 | +#! /bin/sh |
3622 | + |
3623 | +if [ -d /root/usr/share/kubuntu-mobile-default-settings/ ]; then |
3624 | + cp /root/usr/share/kubuntu-mobile-default-settings/share/nodm /root/etc/default/nodm |
3625 | +fi |
3626 | |
3627 | === modified file 'scripts/casper-functions' |
3628 | --- scripts/casper-functions 2008-09-18 23:39:20 +0000 |
3629 | +++ scripts/casper-functions 2011-10-06 10:04:28 +0000 |
3630 | @@ -4,7 +4,10 @@ |
3631 | # Print a message and wait for enter |
3632 | log_wait_msg() |
3633 | { |
3634 | - if [ -x /sbin/usplash_write ]; then |
3635 | + if [ -x /bin/plymouth ] && plymouth --ping; then |
3636 | + plymouth message --text="$@" |
3637 | + plymouth watch-keystroke | read nunya |
3638 | + elif [ -x /sbin/usplash_write ]; then |
3639 | /sbin/usplash_write "INPUTENTER $@" |
3640 | read nunya < /dev/.initramfs/usplash_outfifo |
3641 | fi |
3642 | @@ -39,3 +42,14 @@ |
3643 | echo "C" |
3644 | fi |
3645 | } |
3646 | + |
3647 | +load_confmodule() { |
3648 | + # Only do this once. |
3649 | + if [ -z "$DEBCONF_REDIR" ]; then |
3650 | + exec <&4 |
3651 | + export DEBIAN_HAS_FRONTEND=1 |
3652 | + export DEBCONF_REDIR=1 |
3653 | + fi |
3654 | + |
3655 | + . /root/usr/share/debconf/confmodule |
3656 | +} |
3657 | |
3658 | === modified file 'scripts/casper-helpers' |
3659 | --- scripts/casper-helpers 2009-05-12 12:30:01 +0000 |
3660 | +++ scripts/casper-helpers 2011-10-06 10:04:28 +0000 |
3661 | @@ -31,7 +31,7 @@ |
3662 | # FIXME: do something better like the scan of supported filesystems |
3663 | fstype="${1}" |
3664 | case ${fstype} in |
3665 | - vfat|iso9660|udf|ext2|ext3|ext4|ntfs) |
3666 | + vfat|iso9660|udf|ext2|ext3|ext4|btrfs|ntfs) |
3667 | return 0 |
3668 | ;; |
3669 | esac |
3670 | @@ -164,6 +164,9 @@ |
3671 | fi |
3672 | } |
3673 | |
3674 | +# Returns 0 on success |
3675 | +# panics if remount- or bind-mount fails |
3676 | +# returns 1 on failure otherwise |
3677 | try_mount () |
3678 | { |
3679 | dev="${1}" |
3680 | @@ -171,19 +174,39 @@ |
3681 | opts="${3}" |
3682 | |
3683 | if where_is_mounted ${dev} > /dev/null; then |
3684 | - if [ "${opts}" != "ro" ]; then |
3685 | - mount -o remount,"${opts}" ${dev} $(where_is_mounted ${dev}) || panic "Remounting failed" |
3686 | - fi |
3687 | + if [ "${opts}" != "ro" ]; then |
3688 | + mount -o remount,"${opts}" ${dev} $(where_is_mounted ${dev}) || panic "Remounting failed" |
3689 | + return 0 |
3690 | + fi |
3691 | mount -o bind $(where_is_mounted ${dev}) ${mountp} || panic "Cannot bind-mount" |
3692 | + return 0 |
3693 | else |
3694 | - mount -t $(get_fstype "${dev}") -o "${opts}" "${dev}" "${mountp}" || panic "Cannot mount ${dev} on ${mountp}" |
3695 | + mount -t $(get_fstype "${dev}") -o "${opts}" "${dev}" "${mountp}" |
3696 | + ret=$? |
3697 | + if [ $ret -ne 0 ]; then |
3698 | + log_warning_msg "Cannot mount ${dev} on ${mountp}" |
3699 | + return 1 |
3700 | + fi |
3701 | + return 0 |
3702 | fi |
3703 | } |
3704 | |
3705 | find_cow_device() { |
3706 | pers_label="${1}" |
3707 | cow_backing="/${pers_label}-backing" |
3708 | + |
3709 | + if [ -z "${PERSISTENT_PATH}" ]; then |
3710 | + pers_fpath=${pers_label} |
3711 | + else |
3712 | + pers_fpath=${PERSISTENT_PATH}/${pers_label} |
3713 | + fi |
3714 | + |
3715 | for sysblock in $(echo /sys/block/* | tr ' ' '\n' | grep -v loop); do |
3716 | + # do not ever probe floppies, probing nonexistant ones delays the boot to half an hour and longer |
3717 | + n=${sysblock##*/} |
3718 | + if [ "${n#fd}" != "$n" ]; then |
3719 | + continue |
3720 | + fi |
3721 | for dev in $(subdevices "${sysblock}"); do |
3722 | devname=$(sys2dev "${dev}") |
3723 | if [ "$(/sbin/blkid -s LABEL -o value $devname 2>/dev/null)" = "${pers_label}" ]; then |
3724 | @@ -195,12 +218,13 @@ |
3725 | # where filesystems are in use by hibernated operating systems. |
3726 | elif [ "$(get_fstype ${devname})" = "vfat" ]; then |
3727 | mkdir -p "${cow_backing}" |
3728 | - try_mount "${devname}" "${cow_backing}" "rw" |
3729 | - if [ -e "${cow_backing}/${pers_label}" ]; then |
3730 | - echo $(setup_loop "${cow_backing}/${pers_label}" "loop" "/sys/block/loop*") |
3731 | + try_mount "${devname}" "${cow_backing}" "rw" || continue |
3732 | + cow_backing_mp=$(where_is_mounted "${devname}") |
3733 | + if [ -e "${cow_backing_mp}/${pers_fpath}" ]; then |
3734 | + echo $(setup_loop "${cow_backing_mp}/${pers_fpath}" "loop" "/sys/block/loop*") |
3735 | return 0 |
3736 | else |
3737 | - umount ${cow_backing} |
3738 | + umount ${cow_backing_mp} |
3739 | fi |
3740 | fi |
3741 | done |
3742 | @@ -219,7 +243,7 @@ |
3743 | devfstype="$(get_fstype ${devname})" |
3744 | if [ "${devfstype}" = "vfat" ] || [ "${devfstype}" = "ext2" ] ; then # FIXME: all supported block devices should be scanned |
3745 | mkdir -p "${snap_backing}" |
3746 | - try_mount "${devname}" "${snap_backing}" "ro" |
3747 | + try_mount "${devname}" "${snap_backing}" "ro" || continue |
3748 | for filename in ${filenames}; do |
3749 | if [ -e "${snap_backing}/${filename}" ]; then |
3750 | echo "${devname} ${snap_backing} ${filename}" |
3751 | |
3752 | === modified file 'scripts/casper-premount/10driver_updates' |
3753 | --- scripts/casper-premount/10driver_updates 2010-01-05 16:54:40 +0000 |
3754 | +++ scripts/casper-premount/10driver_updates 2011-10-06 10:04:28 +0000 |
3755 | @@ -42,7 +42,7 @@ |
3756 | |
3757 | is_nice_device() { |
3758 | sysfs_path="${1#/sys}" |
3759 | - if /lib/udev/path_id "${sysfs_path}" | grep -E -q "ID_PATH=(usb|pci-[^-]*-(ide|scsi|usb))"; then |
3760 | + if /lib/udev/path_id "${sysfs_path}" | egrep -q "ID_PATH=(usb|pci-[^-]*-(ide|scsi|usb))"; then |
3761 | return 0 |
3762 | fi |
3763 | return 1 |
3764 | |
3765 | === modified file 'ubiquity-hooks/30accessibility' |
3766 | --- ubiquity-hooks/30accessibility 2009-10-13 21:25:53 +0000 |
3767 | +++ ubiquity-hooks/30accessibility 2011-10-06 10:04:28 +0000 |
3768 | @@ -1,5 +1,6 @@ |
3769 | #!/bin/sh |
3770 | -# If you change this, please also change the copy in scripts/casper-bottom/30accessibility. |
3771 | +# If you are looking to change accessibility profile settings, plesae look in |
3772 | +# bin/casper-a11y-enable. |
3773 | |
3774 | . /usr/share/debconf/confmodule |
3775 | . /etc/casper.conf |
3776 | @@ -9,171 +10,83 @@ |
3777 | db_get passwd/username |
3778 | TARGET_USERNAME="$RET" |
3779 | |
3780 | -gct() { |
3781 | - chroot /target sudo -u "$TARGET_USERNAME" gconftool-2 "$@" |
3782 | -} |
3783 | - |
3784 | -kderc_addtoprefixes() { |
3785 | - if [ -e "/target/etc/kde4rc" ]; then |
3786 | - sed -i "s|\\(prefixes=/usr/share/kubuntu-default-settings/kde-profile/default/\\)|\\1,$1|" /target/etc/kde4rc |
3787 | - fi |
3788 | -} |
3789 | - |
3790 | -# Code to remove an applet from the default panel setup |
3791 | -# This is rather hacky, but I can't think of a one or two line regular |
3792 | -# expression to do this any more efficiently. Patches welcome. |
3793 | -# In addition, setting these via gconf also doesn't work for some reason. |
3794 | -remove_applet() |
3795 | +copy_orca_config() |
3796 | { |
3797 | - local line_no prior_line next_line |
3798 | - |
3799 | - line_no=$(grep -n "<string>$1</string>" /target/usr/share/gconf/defaults/05_panel-default-setup.entries | cut -f 1 -d :) |
3800 | - [ "$line_no" ] || return |
3801 | - prior_line=$((line_no-1)) |
3802 | - next_line=$((line_no+1)) |
3803 | - sed -i -n "${prior_line},${next_line}!p" /target/usr/share/gconf/defaults/05_panel-default-setup.entries |
3804 | - chroot /target update-gconf-defaults |
3805 | + if [ -f /home/$USERNAME/.local/share/orca/user-settings.conf ]; then |
3806 | + mkdir -p /target/home/$TARGET_USERNAME/.local/share |
3807 | + cp -r /home/$USERNAME/.local/share/orca /target/home/$TARGET_USERNAME/.local/share |
3808 | + chroot /target chown -R $TARGET_USERNAME.$TARGET_USERNAME /home/$TARGET_USERNAME/.local |
3809 | + chmod 755 /target/home/$TARGET_USERNAME/.local/share/orca |
3810 | + fi |
3811 | } |
3812 | |
3813 | for x in $(cat /proc/cmdline); do |
3814 | - case $x in |
3815 | - # Lesser Visual Impairment |
3816 | - access=v1) |
3817 | - gct -s -t string /desktop/gnome/interface/gtk_theme HighContrastLargePrint |
3818 | - gct -s -t string /desktop/gnome/interface/icon_theme HighContrast |
3819 | - gct -s -t string /desktop/gnome/interface/monospace_font_name "monospace 18" |
3820 | - gct -s -t string /desktop/gnome/interface/font_name "sans 18" |
3821 | - gct -s -t string /apps/metacity/general/theme Atlanta |
3822 | - gct -s -t string /desktop/gnome/background/picture_filename "" |
3823 | - gct -s -t string /desktop/gnome/background/picture_options none |
3824 | - gct -s -t string /desktop/gnome/background/primary_color \#666666 |
3825 | - gct -s -t string /desktop/gnome/background/secondary_color \#7F7F7F |
3826 | - gct -s -t string /desktop/gnome/background/color_shading_type solid |
3827 | - gct -s -t int /desktop/gnome/peripherals/mouse/cursor_size 48 |
3828 | - gct -s -t string /desktop/gnome/peripherals/mouse/cursor_theme whiteglass |
3829 | - kderc_addtoprefixes /usr/share/kubuntu-default-settings/kde-profile/lesser-visual-impairment/ |
3830 | - if [ -d /target/usr/share/xubuntu-default-settings/accessibility ]; then |
3831 | - cp -a /target/usr/share/xubuntu-default-settings/accessibility/* /target/etc/xdg/ |
3832 | - fi |
3833 | - ;; |
3834 | - # Moderate Visual Impairment |
3835 | - access=v2) |
3836 | - gct -s -t bool /desktop/gnome/interface/accessibility true |
3837 | - gct -s -t bool /apps/gksu/disable-grab true |
3838 | - gct -s -t string /desktop/gnome/applications/window_manager/default /usr/bin/metacity |
3839 | - gct -s -t bool /desktop/gnome/applications/at/visual/startup true |
3840 | - gct -s -t string /desktop/gnome/applications/at/visual/exec orca |
3841 | - |
3842 | - if [ -d /usr/share/xubuntu-default-settings ]; then |
3843 | - apt-install gnome-orca gnome-mag |
3844 | - fi |
3845 | - |
3846 | - if [ -x /target/usr/bin/orca ]; then |
3847 | - if [ -f /home/$USERNAME/.orca/user-settings.py ]; then |
3848 | - cp -r /home/$USERNAME/.orca /target/home/$TARGET_USERNAME/ |
3849 | - chroot /target chown -R $TARGET_USERNAME.$TARGET_USERNAME /home/$TARGET_USERNAME/.orca |
3850 | - else |
3851 | - mkdir -p /target/home/$TARGET_USERNAME/.orca |
3852 | - echo "import orca.settings" >> /target/home/$TARGET_USERNAME/.orca/user-settings.py |
3853 | - echo "orca.settings.enableSpeech = True" >> /target/home/$TARGET_USERNAME/.orca/user-settings.py |
3854 | - echo "orca.settings.enableMagnifier = True" >> /target/home/$TARGET_USERNAME/.orca/user-settings.py |
3855 | - chroot /target chown -R $TARGET_USERNAME.$TARGET_USERNAME /home/$TARGET_USERNAME/.orca |
3856 | - fi |
3857 | - fi |
3858 | - sed -i -e 's/# Host alias specification/Defaults\tenv_keep = "ORBIT_SOCKETDIR XDG_SESSION_COOKIE GTK_MODULES"\n\n# Host alias specification/g' /target/etc/sudoers |
3859 | - |
3860 | - kderc_addtoprefixes /usr/share/kubuntu-default-settings/kde-profile/lesser-visual-impairment/,/usr/share/kubuntu-default-settings/kde-profile/moderate-visual-impairment/ |
3861 | - ;; |
3862 | - # Blindness |
3863 | - access=v3) |
3864 | - gct -s -t bool /desktop/gnome/interface/accessibility true |
3865 | - gct -s -t bool /apps/gksu/disable-grab true |
3866 | - gct -s -t string /desktop/gnome/applications/window_manager/default /usr/bin/metacity |
3867 | - gct -s -t bool /desktop/gnome/applications/at/visual/startup true |
3868 | - gct -s -t string /desktop/gnome/applications/at/visual/exec orca |
3869 | - remove_applet fast_user_switch |
3870 | - if [ -x /target/usr/bin/pulse-session ]; then |
3871 | - mkdir -p /target/var/lib/pulseaudio |
3872 | - touch /target/var/lib/pulseaudio/pulse_a11y_nostart |
3873 | - chroot /target chown root.root /var/lib/pulseaudio/pulse_a11y_nostart |
3874 | - mkdir -p /target/home/$TARGET_USERNAME/.pulse |
3875 | - echo "autospawn = no" > /target/home/$TARGET_USERNAME/.pulse/client.conf |
3876 | - chroot /target chown -R $TARGET_USERNAME.$TARGET_USERNAME /home/$TARGET_USERNAME/.pulse |
3877 | - fi |
3878 | - sed -i -e 's/# Host alias specification/Defaults\tenv_keep = "ORBIT_SOCKETDIR XDG_SESSION_COOKIE GTK_MODULES"\n\n# Host alias specification/g' /target/etc/sudoers |
3879 | - if [ -x /target/usr/bin/orca ]; then |
3880 | - if [ -f /home/$USERNAME/.orca/user-settings.py ]; then |
3881 | - cp -r /home/$USERNAME/.orca /target/home/$TARGET_USERNAME/ |
3882 | - chroot /target chown -R $TARGET_USERNAME.$TARGET_USERNAME /home/$TARGET_USERNAME/.orca |
3883 | - else |
3884 | - mkdir -p /target/home/$TARGET_USERNAME/.orca |
3885 | - chroot /target chown -R $TARGET_USERNAME.$TARGET_USERNAME /home/$TARGET_USERNAME/.orca |
3886 | - fi |
3887 | - fi |
3888 | - |
3889 | - if [ -d /usr/share/xubuntu-default-settings ]; then |
3890 | - apt-install gnome-orca |
3891 | - fi |
3892 | - ;; |
3893 | - # Braille |
3894 | - braille=ask) |
3895 | - gct -s -t bool /desktop/gnome/interface/accessibility true |
3896 | - gct -s -t bool /desktop/gnome/applications/at/visual/startup true |
3897 | - gct -s -t string /desktop/gnome/applications/at/visual/exec orca |
3898 | - if [ -x /target/usr/bin/orca ]; then |
3899 | - if [ -f /home/$USERNAME/.orca/user-settings.py ]; then |
3900 | - cp -r /home/$USERNAME/.orca /target/home/$TARGET_USERNAME/ |
3901 | - chroot /target chown -R $TARGET_USERNAME.$TARGET_USERNAME /home/$TARGET_USERNAME/.orca |
3902 | - else |
3903 | - mkdir -p /target/home/$TARGET_USERNAME/.orca |
3904 | - echo "import orca.settings" >> /target/home/$TARGET_USERNAME/.orca/user-settings.py |
3905 | - echo "orca.settings.enableSpeech = False" >> /target/home/$TARGET_USERNAME/.orca/user-settings.py |
3906 | - echo "orca.settings.enableBraille = True" >> /target/home/$TARGET_USERNAME/.orca/user-settings.py |
3907 | - chroot /target chown -R $TARGET_USERNAME.$TARGET_USERNAME /home/$TARGET_USERNAME/.orca |
3908 | - fi |
3909 | - fi |
3910 | - gct -s -t bool /apps/gksu/disable-grab true |
3911 | - gct -s -t string /desktop/gnome/applications/window_manager/default /usr/bin/metacity |
3912 | - remove_applet fast_user_switch |
3913 | - sed -i -e 's/# Host alias specification/Defaults\tenv_keep = "ORBIT_SOCKETDIR XDG_SESSION_COOKIE GTK_MODULES"\n\n# Host alias specification/g' /target/etc/sudoers |
3914 | - if [ -x /target/usr/bin/pulse-session ]; then |
3915 | - mkdir -p /target/var/lib/pulseaudio |
3916 | - touch /target/var/lib/pulseaudio/pulse_a11y_nostart |
3917 | - chroot /target chown root.root /var/lib/pulseaudio/pulse_a11y_nostart |
3918 | - mkdir -p /target/home/$TARGET_USERNAME/.pulse |
3919 | - echo "autospawn = no" > /target/home/$TARGET_USERNAME/.pulse/client.conf |
3920 | - chroot /target chown -R $TARGET_USERNAME.$TARGET_USERNAME /home/$TARGET_USERNAME/.pulse |
3921 | - fi |
3922 | - ;; |
3923 | - # Minor Motor Difficulties |
3924 | - access=m1) |
3925 | - gct -s -t bool /desktop/gnome/accessibility/keyboard/enable true |
3926 | - gct -s -t bool /desktop/gnome/accessibility/keyboard/mousekeys_enable true |
3927 | - gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_enable true |
3928 | - gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_modifier_beep true |
3929 | - gct -s -t bool /desktop/accessibility/gnome/keyboard/stickykeys_two_key_off false |
3930 | - gct -s -t bool /desktop/gnome/peripherals/keyboard/repeat true |
3931 | - gct -s -t int /desktop/gnome/peripherals/keyboard/delay 700 |
3932 | - gct -s -t int /desktop/gnome/peripherals/keyboard/rate 10 |
3933 | - gct -s -t bool /apps/gksu/disable-grab true |
3934 | - kderc_addtoprefixes /usr/share/kubuntu-default-settings/kde-profile/minor-motor-difficulties/ |
3935 | - if [ -e /target/etc/xdg/xfce4/mcs_settings/keyboard.xml ]; then |
3936 | - sed -i 's/0/1/' /target/etc/xdg/xfce4/mcs_settings/keyboard.xml |
3937 | - fi |
3938 | - ;; |
3939 | - # Motor Difficulties - pointing devices |
3940 | - access=m2) |
3941 | - gct -s -t bool /desktop/gnome/accessibility/keyboard/enable true |
3942 | - gct -s -t bool /desktop/gnome/interface/accessibility true |
3943 | - gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_enable true |
3944 | - gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_modifier_beep false |
3945 | - gct -s -t bool /desktop/accessibility/gnome/keyboard/stickykeys_two_key_off false |
3946 | - gct -s -t bool /desktop/gnome/applications/at/mobility/startup true |
3947 | - gct -s -t string /desktop/gnome/applications/at/mobility/exec onboard |
3948 | - kderc_addtoprefixes /usr/share/kubuntu-default-settings/kde-profile/minor-motor-difficulties/,/usr/share/kubuntu-default-settings/kde-profile/motor-difficulties-pointing-devices/ |
3949 | - if [ -e /target/etc/xdg/xfce4/mcs_settings/keyboard.xml ]; then |
3950 | - sed -i '/Sticky/ s/0/1/' /target/etc/xdg/xfce4/mcs_settings/keyboard.xml |
3951 | - fi |
3952 | + case $x in |
3953 | + # Lesser Visual Impairment |
3954 | + access=v1) |
3955 | + /usr/bin/casper-a11y-enable -login -user="$TARGET_USERNAME" -chroot=/target -script high-contrast |
3956 | + exit |
3957 | + ;; |
3958 | + # Moderate Visual Impairment |
3959 | + access=v2) |
3960 | + /usr/bin/casper-a11y-enable -login -user="$TARGET_USERNAME" -chroot=/target -script magnifier |
3961 | + exit |
3962 | + ;; |
3963 | + # Blindness |
3964 | + access=v3) |
3965 | + copy_orca_config |
3966 | + /usr/bin/casper-a11y-enable -login -user="$TARGET_USERNAME" -chroot=/target -script blindness |
3967 | + exit |
3968 | + ;; |
3969 | + # Braille |
3970 | + braille=ask) |
3971 | + copy_orca_config |
3972 | + /usr/bin/casper-a11y-enable -login -user="$TARGET_USERNAME" -chroot=/target -script braille |
3973 | + exit |
3974 | + ;; |
3975 | + # Minor Motor Difficulties |
3976 | + access=m1) |
3977 | + /usr/bin/casper-a11y-enable -login -user="$TARGET_USERNAME" -chroot=/target -script keyboard-modifiers |
3978 | + exit |
3979 | + ;; |
3980 | + # Motor Difficulties - pointing devices |
3981 | + access=m2) |
3982 | + /usr/bin/casper-a11y-enable -login -user="$TARGET_USERNAME" -chroot=/target -script onscreen-keyboard |
3983 | + exit |
3984 | ;; |
3985 | esac |
3986 | done |
3987 | + |
3988 | +if [ -z "$UBIQUITY_A11Y_PROFILE" ] && [ -f /tmp/casper-a11y.conf ]; then |
3989 | + . /tmp/casper-a11y.conf |
3990 | +fi |
3991 | + |
3992 | +case "$UBIQUITY_A11Y_PROFILE" in |
3993 | + # Lesser Visual Impairment |
3994 | + high-contrast) |
3995 | + /usr/bin/casper-a11y-enable -login -user="$TARGET_USERNAME" -chroot=/target -script high-contrast |
3996 | + ;; |
3997 | + # Moderate Visual Impairment |
3998 | + magnifier) |
3999 | + /usr/bin/casper-a11y-enable -login -user="$TARGET_USERNAME" -chroot=/target -script magnifier |
4000 | + ;; |
4001 | + # Blindness |
4002 | + screen-reader) |
4003 | + copy_orca_config |
4004 | + /usr/bin/casper-a11y-enable -login -user="$TARGET_USERNAME" -chroot=/target -script blindness |
4005 | + ;; |
4006 | + # Braille |
4007 | + braille) |
4008 | + copy_orca_config |
4009 | + /usr/bin/casper-a11y-enable -login -user="$TARGET_USERNAME" -chroot=/target -script braille |
4010 | + ;; |
4011 | + # Minor Motor Difficulties |
4012 | + keyboard-modifiers) |
4013 | + /usr/bin/casper-a11y-enable -login -user="$TARGET_USERNAME" -chroot=/target -script keyboard-modifiers |
4014 | + ;; |
4015 | + # Motor Difficulties - pointing devices |
4016 | + onscreen-keyboard) |
4017 | + /usr/bin/casper-a11y-enable -login -user="$TARGET_USERNAME" -chroot=/target -script onscreen-keyboard |
4018 | + ;; |
4019 | +esac |
4020 | + |
4021 | |
4022 | === removed file 'ubiquity-hooks/48enable_kubuntu_netbook' |
4023 | --- ubiquity-hooks/48enable_kubuntu_netbook 2010-01-27 14:01:22 +0000 |
4024 | +++ ubiquity-hooks/48enable_kubuntu_netbook 1970-01-01 00:00:00 +0000 |
4025 | @@ -1,8 +0,0 @@ |
4026 | -#! /bin/sh |
4027 | -set -e |
4028 | - |
4029 | -if [ -e "/target/usr/share/autostart/plasma-netbook.desktop" ]; then |
4030 | - sed -i "s,Hidden=true,," /target/usr/share/autostart/plasma-netbook.desktop |
4031 | -fi |
4032 | - |
4033 | -exit 0 |
4034 | |
4035 | === added file 'ubiquity-hooks/49kubuntu_gnome_icon_cache' |
4036 | --- ubiquity-hooks/49kubuntu_gnome_icon_cache 1970-01-01 00:00:00 +0000 |
4037 | +++ ubiquity-hooks/49kubuntu_gnome_icon_cache 2011-10-06 10:04:28 +0000 |
4038 | @@ -0,0 +1,11 @@ |
4039 | +#! /bin/sh |
4040 | +set -e |
4041 | + |
4042 | +# livecd-rootfs deletes the Gnome icon cache for Kubuntu CDs to save space, recreate it here |
4043 | + |
4044 | +if [ -e "/target/usr/share/kubuntu-default-settings/" ] && [ -e "/target/usr/bin/gtk-update-icon-cache" ]; then |
4045 | + chroot /target gtk-update-icon-cache /usr/share/icons/hicolor |
4046 | + chroot /target gtk-update-icon-cache /usr/share/icons/oxygen |
4047 | +fi |
4048 | + |
4049 | +exit 0 |
Could you please re-propose this for merging into lp:ubuntu/casper
rather than lp:casper, so that we get a useful merge diff? Thanks.