Merge lp:~harish2704/casper/fs_type-fix into lp:casper

Proposed by harish2704
Status: Rejected
Rejected by: Sebastien Bacher
Proposed branch: lp:~harish2704/casper/fs_type-fix
Merge into: lp:casper
Diff against target: 5477 lines (+3296/-996) (has conflicts)
65 files modified
bin/casper-a11y-enable (+620/-0)
bin/casper-preseed (+13/-6)
bin/casper-reconfigure (+3/-0)
bin/casper-set-selections (+93/-0)
bin/casper-snapshot (+1/-1)
bin/casper-update-initramfs (+34/-0)
casper-md5check/Makefile (+3/-2)
casper-md5check/casper-md5check.c (+135/-100)
casper.conf (+7/-1)
conf.d/compcache (+0/-1)
debian/bzr-builddeb.conf (+2/-0)
debian/casper.init (+46/-20)
debian/casper.install (+2/-0)
debian/casper.postinst (+1/-1)
debian/changelog (+1301/-1)
debian/control (+9/-9)
debian/copyright (+11/-1)
debian/manpage/casper.7 (+12/-0)
debian/rules (+15/-0)
debian/source/format (+1/-0)
debian/ubiquity-casper.install (+1/-0)
hooks/casper (+6/-3)
scripts/casper (+170/-49)
scripts/casper-bottom/05mountpoints (+4/-0)
scripts/casper-bottom/07remove_oem_config (+36/-0)
scripts/casper-bottom/10adduser (+0/-111)
scripts/casper-bottom/13swap (+1/-1)
scripts/casper-bottom/14locales (+3/-10)
scripts/casper-bottom/15autologin (+49/-9)
scripts/casper-bottom/16gdmnopasswd (+44/-0)
scripts/casper-bottom/19keyboard (+60/-18)
scripts/casper-bottom/22desktop_settings (+22/-6)
scripts/casper-bottom/22gnome_panel_data (+0/-34)
scripts/casper-bottom/22sslcert (+1/-0)
scripts/casper-bottom/23etc_modules (+0/-30)
scripts/casper-bottom/23networking (+39/-26)
scripts/casper-bottom/24preseed (+48/-16)
scripts/casper-bottom/25adduser (+136/-0)
scripts/casper-bottom/25configure_init (+2/-2)
scripts/casper-bottom/30accessibility (+54/-153)
scripts/casper-bottom/31disable_update_notifier (+8/-0)
scripts/casper-bottom/32disable_hibernation (+6/-10)
scripts/casper-bottom/33enable_apport_crashes (+5/-1)
scripts/casper-bottom/34disable_kde_services.OTHER (+36/-0)
scripts/casper-bottom/35fix_language_selector (+4/-2)
scripts/casper-bottom/37kubuntu_netbook_installer_link (+0/-28)
scripts/casper-bottom/40install_driver_updates (+7/-1)
scripts/casper-bottom/41apt_cdrom (+18/-1)
scripts/casper-bottom/42disable_apparmor (+0/-26)
scripts/casper-bottom/43disable_updateinitramfs (+13/-14)
scripts/casper-bottom/44pk_allow_ubuntu (+3/-24)
scripts/casper-bottom/45disable_guest_account (+0/-25)
scripts/casper-bottom/45jackd2 (+33/-0)
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-bottom/50ubiquity-bluetooth-agent (+8/-0)
scripts/casper-functions (+14/-3)
scripts/casper-helpers (+37/-13)
scripts/casper-premount/10driver_updates (+1/-1)
ubiquity-hooks/30accessibility (+79/-162)
ubiquity-hooks/45jackd2 (+18/-0)
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:~harish2704/casper/fs_type-fix
Reviewer Review Type Date Requested Status
Sebastien Bacher Needs Fixing
Review via email: mp+280400@code.launchpad.net

Description of the change

Fix: fs_type function detaches loop devices

I have added fix for bug https://bugs.launchpad.net/ubuntu/+source/casper/+bug/1525590

To post a comment you must log in.
Revision history for this message
Sebastien Bacher (seb128) wrote :

thank you for your work but the vcs you submitted the change against didn't change since 2010 and isn't the right one, could you add a debdiff to the bug instead?

review: Needs Fixing
Revision history for this message
harish2704 (harish2704) wrote :

Hi,
Sorry, I was really new to bzr and launchpad PPA.
Thats why It became mess

The actuall diff is simple and given below
--------------------
=== modified file 'scripts/casper-helpers'
--- scripts/casper-helpers 2013-05-28 10:19:04 +0000
+++ scripts/casper-helpers 2015-12-13 00:19:12 +0000
@@ -112,7 +112,7 @@
     fi

     if [ -n "${doumount}" ]; then
- umount "${mountp}"
+ umount -D "${mountp}"
         rmdir "${mountp}"
     fi
     echo "${size}"

--------------------

Diff can also be seen @ http://bazaar.launchpad.net/~harish2704/casper/fs_type-fix/revision/1136

-Thanks

Unmerged revisions

1136. By harish2704

Fix: fs_size function detaches the loop devices.

1135. By Adam Conrad

Remove 23etc_modules which does more harm than good (LP: #1296386)

1134. By Mario Limonciello

releasing package casper version 1.339

1133. By Mario Limonciello

scripts/casper: Fix for new udev that doesn't have by-path.
Original patch from http://goo.gl/R76aKl (LP: #1293811)

1132. By Luke Yelavich

releasing package casper version 1.338

1131. By Luke Yelavich

scripts/casper-bottom/30accessibility: If the user boots to the desktop,
write a desktop file to /etc/xdg/autostart to set up the screen reader
profile if the user launches Orca with a shortcut key. Gnome/Unity
settings daemon takes priority over ubiquity with keygrabs, such
that the profile setting code in ubiquity does not get executed when
the shortcut is entered. Temporarily disabling the shortcut key also
doesn't work, as Gnome/Unity settings daemon doesn't appear to notice
the change when the gsettings key is changed on the command-line. As
such, this is a cludge, until a better mechanism for handling
accessibility profiles is implemented.

1130. By Harald Sitter

25adduser: add ubiquity-kdeui.desktop to plasma-netbook init template

1129. By Harald Sitter

Update link to Kubuntu docs in scripts/casper-bottom/25adduser

1128. By Dimitri John Ledkov

releasing version 1.336

1127. By Dimitri John Ledkov

25adduser: Adjust to rename of ubiquity-gtkui.desktop to ubiquity.desktop

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== added file 'bin/casper-a11y-enable'
2--- bin/casper-a11y-enable 1970-01-01 00:00:00 +0000
3+++ bin/casper-a11y-enable 2015-12-13 00:48:04 +0000
4@@ -0,0 +1,620 @@
5+#!/bin/sh
6+#
7+# casper-a11y-enable - Sets accessibility profile settings for the live session
8+# or installed system.
9+#
10+# This script is called by several other scripts, as well as ubiquity itself to
11+# set up accessibility profile settings for use in the live environment and on
12+# an installed system.
13+#
14+# Copyright (C) 2011, Canonical Ltd.
15+#
16+# Author:
17+# - Luke Yelavich <luke.yelavich@canonical.com>
18+#
19+# This script is free software; you can redistribute it and/or modify it under
20+# the terms of the GNU General Public License as published by the Free
21+# Software Foundation; either version 2 of the License, or at your option)
22+# any later version.
23+#
24+# This program is distributed in the hope that it will be useful,
25+# but WITHOUT ANY WARRANTY; without even the implied warranty of
26+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
27+# GNU General Public License for more details.
28+#
29+# You should have received a copy of the GNU General Public License along
30+# with this application; if not, write to the Free Software Foundation, Inc., 51
31+# Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
32+##################################################################################
33+
34+set -e
35+
36+### PROFILE SETTINGS METHODS BEGIN HERE ###
37+# The methods that are used to set profile data have been placed as close to the
38+# top of this file as possible, so they are easy to locate, and will hopefully
39+# save time when making smaller changes.
40+
41+# Common settings for low vision profiles. Any change you make here will affect
42+# all low vision profiles, for both the user session and login manager.
43+set_common_lowvis()
44+{
45+ gset set com.canonical.indicator.datetime show-calendar false
46+ gset set org.gnome.desktop.interface toolkit-accessibility true
47+ gct -s -t bool /desktop/gnome/interface/accessibility true
48+ gct -s -t bool /apps/gksu/disable-grab true
49+ gset set org.gnome.yelp show-cursor true
50+}
51+
52+# Common settings for motor profiles. Any change you make here will affect
53+# all motor profiles, for both the user session and login manager.
54+set_common_motor()
55+{
56+ gset set org.gnome.desktop.a11y.keyboard enable true
57+ gct -s -t bool /apps/gksu/disable-grab true
58+ gset set org.gnome.desktop.a11y.keyboard stickykeys-enable true
59+ gset set org.gnome.desktop.a11y.keyboard stickykeys-two-key-off false
60+}
61+
62+# Settings for the high-contrast profile.
63+set_high_contrast()
64+{
65+ gset set org.gnome.desktop.interface icon-theme HighContrast
66+ gset set org.gnome.desktop.interface monospace-font-name "monospace 18"
67+ gset set org.gnome.desktop.interface font-name "sans 18"
68+ gset set org.gnome.desktop.background picture-uri ""
69+ gset set org.gnome.desktop.background picture-options none
70+ gset set org.gnome.desktop.background primary-color \#666666
71+ gset set org.gnome.desktop.background secondary-color \#7F7F7F
72+ gset set org.gnome.desktop.background color-shading-type solid
73+ gset set org.gnome.desktop.interface cursor-size 48
74+ gset set org.gnome.desktop.interface cursor-theme whiteglass
75+ kderc_addtoprefixes /usr/share/kubuntu-default-settings/kde-profile/lesser-visual-impairment/
76+ if [ -d $CHROOT_DIR/usr/share/xubuntu-default-settings/accessibility ]; then
77+ cp -a $CHROOT_DIR/usr/share/xubuntu-default-settings/accessibility/* $CHROOT_DIR/etc/xdg/
78+ fi
79+
80+ if [ -n "$SET_LOGIN" ]; then
81+ gset_lightdm set com.canonical.unity-greeter high-contrast true
82+ fi
83+}
84+
85+set_magnifier()
86+{
87+ # Ubuntu
88+ gset set org.gnome.desktop.a11y.applications screen-magnifier-enabled true
89+ set_orca_config magnifier
90+
91+ # Kubuntu
92+ kderc_addtoprefixes /usr/share/kubuntu-default-settings/kde-profile/lesser-visual-impairment/,/usr/share/kubuntu-default-settings/kde-profile/moderate-visual-impairment/
93+}
94+
95+set_blindness()
96+{
97+ gset set org.gnome.desktop.a11y.applications screen-reader-enabled true
98+ gset set org.gnome.Empathy.conversation theme classic
99+ set_orca_config speech
100+
101+ if [ -n "$SET_LOGIN" ]; then
102+ gset_lightdm set com.canonical.unity-greeter screen-reader true
103+ fi
104+}
105+
106+set_braille()
107+{
108+ gset set org.gnome.desktop.a11y.applications screen-reader-enabled true
109+ gset set org.gnome.Empathy.conversation theme classic
110+ set_orca_config braille
111+
112+ if [ -n "$SET_LOGIN" ]; then
113+ gset_lightdm set com.canonical.unity-greeter screen-reader true
114+ fi
115+}
116+
117+set_keyboard_modifiers()
118+{
119+ gset set org.gnome.desktop.a11y.keyboard mousekeys-enable true
120+ gset set org.gnome.desktop.a11y.keyboard stickykeys-modifier-beep true
121+ gset set org.gnome.settings-daemon.peripherals.keyboard repeat true
122+ gset set org.gnome.settings-daemon.peripherals.keyboard delay 700
123+ gset set org.gnome.settings-daemon.peripherals.keyboard repeat-interval 10
124+ kderc_addtoprefixes /usr/share/kubuntu-default-settings/kde-profile/minor-motor-difficulties/
125+ if [ -e $CHROOT_DIR/etc/xdg/xfce4/mcs_settings/keyboard.xml ]; then
126+ sed -i 's/0/1/' $CHROOT_DIR/etc/xdg/xfce4/mcs_settings/keyboard.xml
127+ fi
128+}
129+
130+set_onscreen_keyboard()
131+{
132+ gset set org.gnome.desktop.interface toolkit-accessibility true
133+ gset set org.gnome.desktop.a11y.keyboard stickykeys-modifier-beep false
134+ gset set org.gnome.desktop.a11y.applications screen-keyboard-enabled true
135+
136+ if [ -n "$SET_LOGIN" ]; then
137+ gset_lightdm set com.canonical.unity-greeter onscreen-keyboard true
138+ fi
139+
140+ kderc_addtoprefixes /usr/share/kubuntu-default-settings/kde-profile/minor-motor-difficulties/,/usr/share/kubuntu-default-settings/kde-profile/motor-difficulties-pointing-devices/
141+ if [ -e $CHROOT_DIR/etc/xdg/xfce4/mcs_settings/keyboard.xml ]; then
142+ sed -i '/Sticky/ s/0/1/' $CHROOT_DIR/etc/xdg/xfce4/mcs_settings/keyboard.xml
143+ fi
144+}
145+### PROFILE SETTINGS METHODS END HERE ###
146+
147+help()
148+{
149+ cat <<EOF
150+Usage: $0 [-chroot=<root>] [-user=<username>] [-l|-login]
151+ [-i|-initramfs] [-d|-debug] <profilename>
152+
153+-h, -help Display this help.
154+-chroot=<root> Chroot into <root> to apply profile settings, requires a
155+ username to be specified, see below.
156+-user=<username> The user where a profile is to be applied, requires the
157+ script to be run as root. If no username is given, it
158+ is assumed that you wish to apply profile settings for
159+ the current user.
160+-l, -login Apply some of the selected profile settings to the
161+ login manager. Currently this is hard-coded to lightdm.
162+ This requires root privileges.
163+-i, -initramfs Indicate that the script is being called from the
164+ initramfs. Allows the script to assume some values
165+ that can not otherwise be easily determined in an
166+ initramfs environment. Requires that a chroot dir and
167+ user name are specified. See above.
168+-script Create a script to be run at system boot that will
169+ apply all settings for the specified user and for
170+ login. This script will then remove itself. This is
171+ needed to work around gsettings not working in a chroot
172+ environment with no dconf service running.
173+-d|-debug Enable debugging output.
174+<profilename> The name of the profile you wish to apply, see below.
175+
176+The profiles currently available are as follows:
177+high-contrast For users with lesser visual impairments who only need a high
178+ contrast theme, mouse cursor and icons.
179+magnifier For users with moderate visual impairments who require a screen
180+ magnifier.
181+blindness Users who are partially or completely blind who require a screen
182+ reader.
183+braille Users who are partially or completely blind who require a screen
184+ reader and wish to use a Braille display.
185+keyboard-modifiers
186+ Users who have minor motor impairments who require slight
187+ changes to the way their keyboard behaves.
188+onscreen-keyboard
189+ Users with motor impairments who require the use of an
190+ on-screen keyboard.
191+EOF
192+}
193+
194+gset()
195+{
196+ if [ -n "$GLIBBIN_VERSION" ]; then
197+ if [ -n "$STARTUP_SCRIPT" ]; then
198+ echo "gsettings " "$@" >> $CHROOT_DIR/usr/bin/a11y-profile-settings
199+ else
200+ $DO_CHROOT $DO_SUDO gsettings "$@"
201+ fi
202+ fi
203+}
204+
205+gset_lightdm()
206+{
207+ if [ -n "$GLIBBIN_VERSION" ]; then
208+ if [ -n "$STARTUP_SCRIPT" ]; then
209+ echo "gsettings " "$@" >> $CHROOT_DIR/usr/bin/a11y-profile-settings-lightdm
210+ else
211+ $DO_CHROOT sudo -u lightdm gsettings "$@"
212+ fi
213+ fi
214+}
215+
216+# Soon to be deprecated
217+gct()
218+{
219+ if [ -n "$GCONF_VERSION" ]; then
220+ if [ -n "$STARTUP_SCRIPT" ]; then
221+ echo "gconftool-2 " "$@" >> $CHROOT_DIR/usr/bin/a11y-profile-settings
222+ else
223+ $DO_CHROOT $DO_SUDO gconftool-2 "$@"
224+ fi
225+ fi
226+}
227+
228+kderc_addtoprefixes()
229+{
230+ if [ -e $CHROOT_DIR/etc/kde4rc ]; then
231+ sed -i "s|\\(prefixes=/usr/share/kubuntu-default-settings/kde-profile/default/\\)|\\1,$1|" $CHROOT_DIR/etc/kde4rc
232+ fi
233+}
234+
235+# Unfortunately this bloats this script somewhat, but orca doesn't seem to want
236+# to deal with individual settings/a small config fragment.
237+# Arguments: $1 = speech/magnifier/braille (which
238+# accessibility feature to turn on)
239+set_orca_config()
240+{
241+ # Yes, we could use $HOME, but enquiring about $HOME is not easy when
242+ # Outside the target environment, particularly when running from the
243+ # initramfs, and this script is not everything for everybody anyway.
244+ if [ -n "$ORCA_VERSION" ] && ! [ -f "$CHROOT_DIR/home/$USER_NAME/.local/share/orca/user-settings.conf" ]; then
245+ mkdir -p "$CHROOT_DIR/home/$USER_NAME/.local/share/orca"
246+
247+ cat <<EOF > "$CHROOT_DIR/home/$USER_NAME/.local/share/orca/user-settings.conf"
248+{
249+ "pronunciations": {},
250+ "keybindings": {},
251+ "profiles": {
252+ "default": {
253+ "profile": [
254+ "Default",
255+ "default"
256+ ],
257+ "pronunciations": {},
258+ "keybindings": {}
259+ }
260+ },
261+ "general": {
262+ "speakCellHeaders": true,
263+ "magEdgeMargin": 0,
264+ "brailleContractionTable": "",
265+ "magPointerFollowsFocus": false,
266+ "magTextTrackingMode": 2,
267+ "magZoomerBorderSize": 1,
268+ "brailleAlignmentStyle": 0,
269+ "enableEchoByWord": false,
270+ "enableMagZoomerColorInversion": false,
271+ "magCursorSize": 32,
272+ "magSmoothingMode": 0,
273+ "magZoomerLeft": 840,
274+ "showMainWindow": true,
275+ "sayAllStyle": 1,
276+ "brailleSelectorIndicator": 192,
277+ "presentDateFormat": "%x",
278+ "magContrastLevel": 0,
279+ "magMouseTrackingMode": 0,
280+ "speakCellSpan": true,
281+ "progressBarUpdateInterval": 10,
282+ "speakCellCoordinates": true,
283+ "enablePauseBreaks": true,
284+ "brailleEOLIndicator": " $l",
285+ "verbalizePunctuationStyle": 1,
286+ "progressBarVerbosity": 1,
287+ "enableSpeech": false,
288+ "enableBraille": false,
289+ "chatAnnounceBuddyTyping": false,
290+ "speakMultiCaseStringsAsWords": false,
291+ "enableBrailleGrouping": false,
292+ "readTableCellRow": true,
293+ "speechServerFactory": "speechdispatcherfactory",
294+ "textAttributesBrailleIndicator": 0,
295+ "enableMagCursorExplicitSize": false,
296+ "messageVerbosityLevel": 1,
297+ "enableMagLiveUpdating": true,
298+ "enableSpeechIndentation": false,
299+ "enableKeyEcho": true,
300+ "magHideCursor": false,
301+ "magZoomerBorderColor": "#000000",
302+ "magPointerFollowsZoomer": true,
303+ "mouseDwellDelay": 0,
304+ "magBrightnessLevelRed": 0,
305+ "enableMagnifier": false,
306+ "magZoomFactor": 4.0,
307+ "activeProfile": [
308+ "Default",
309+ "default"
310+ ],
311+ "enableMagZoomerBorder": false,
312+ "flashVerbosityLevel": 1,
313+ "enableFlashMessages": true,
314+ "speechServerInfo": null,
315+ "presentToolTips": false,
316+ "flashIsPersistent": false,
317+ "skipBlankCells": false,
318+ "firstStart": false,
319+ "largeObjectTextLength": 75,
320+ "enableEchoBySentence": false,
321+ "magContrastLevelBlue": 0,
322+ "magContrastLevelRed": 0,
323+ "enableContractedBraille": false,
324+ "orcaModifierKeys": [
325+ "Insert",
326+ "KP_Insert"
327+ ],
328+ "enableMagCursor": true,
329+ "speechRequiredStateString": "required",
330+ "quitOrcaNoConfirmation": false,
331+ "brailleRequiredStateString": "required",
332+ "magCursorColor": "#000000",
333+ "enablePositionSpeaking": false,
334+ "magZoomerType": 0,
335+ "onlySpeakDisplayedText": false,
336+ "enableProgressBarUpdates": true,
337+ "wrappedStructuralNavigation": true,
338+ "chatRoomHistories": false,
339+ "brailleVerbosityLevel": 1,
340+ "enableFunctionKeys": true,
341+ "enableModifierKeys": true,
342+ "magCrossHairColor": "#000000",
343+ "enableTutorialMessages": false,
344+ "enableActionKeys": true,
345+ "speakBlankLines": true,
346+ "magColorFilteringMode": 0,
347+ "magZoomerRight": 1680,
348+ "keyboardLayout": 1,
349+ "magTargetDisplay": "",
350+ "disableBrailleEOL": false,
351+ "magZoomerTop": 0,
352+ "magSourceDisplay": "",
353+ "enableDiacriticalKeys": false,
354+ "enableMnemonicSpeaking": false,
355+ "enabledBrailledTextAttributes": "size:; family-name:; weight:400; indent:0; underline:none; strikethrough:false; justification:left; style:normal; text-spelling:none;",
356+ "speechVerbosityLevel": 1,
357+ "enableMagCrossHair": true,
358+ "enableBrailleMonitor": false,
359+ "voices": {
360+ "default": {
361+ "established": false
362+ },
363+ "uppercase": {
364+ "average-pitch": 5.6
365+ },
366+ "system": {
367+ "established": false
368+ },
369+ "hyperlink": {
370+ "established": false
371+ }
372+ },
373+ "magContrastLevelGreen": 0,
374+ "brailleFlashTime": 5000,
375+ "magCrossHairSize": 16,
376+ "enableMouseReview": false,
377+ "enableNavigationKeys": false,
378+ "magBrightnessLevelGreen": 0,
379+ "chatSpeakRoomName": false,
380+ "startingProfile": [
381+ "Default",
382+ "default"
383+ ],
384+ "enableLockingKeys": true,
385+ "profile": [
386+ "Default",
387+ "default"
388+ ],
389+ "brailleRolenameStyle": 1,
390+ "brailleLinkIndicator": 192,
391+ "enableEchoByCharacter": false,
392+ "magBrightnessLevelBlue": 0,
393+ "enableBrailleContext": true,
394+ "magControlTrackingMode": 2,
395+ "magZoomerBottom": 1050,
396+ "enablePrintableKeys": true,
397+ "enabledSpokenTextAttributes": "size:; family-name:; weight:400; indent:0; underline:none; strikethrough:false; justification:left; style:normal; paragraph-style:; text-spelling:none;",
398+ "chatMessageVerbosity": 0,
399+ "presentTimeFormat": "%X",
400+ "magBrightnessLevel": 0,
401+ "presentRequiredState": false,
402+ "enableMagCrossHairClip": false
403+ }
404+}
405+EOF
406+
407+ case "$1" in
408+ magnifier)
409+ sed -i -e 's/\"enableMagnifier\": false/\"enableMagnifier\": true/' "$CHROOT_DIR/home/$USER_NAME/.local/share/orca/user-settings.conf"
410+ ;;
411+ speech)
412+ sed -i -e 's/\"enableSpeech\": false/\"enableSpeech\": true/' "$CHROOT_DIR/home/$USER_NAME/.local/share/orca/user-settings.conf"
413+ ;;
414+ braille)
415+ sed -i -e 's/\"enableBraille\": false/\"enableBraille\": true/' "$CHROOT_DIR/home/$USER_NAME/.local/share/orca/user-settings.conf"
416+ ;;
417+ *)
418+ ;;
419+ esac
420+
421+ if [ "$HOME" = "/root" ] || [ -n "$IN_INITRAMFS" ]; then
422+ chmod 755 "$CHROOT_DIR/home/$USER_NAME/.local/share/orca"
423+ $DO_CHROOT chown $USER_NAME.$USER_NAME -R "/home/$USER_NAME/.local"
424+ fi
425+ fi
426+}
427+
428+create_conf()
429+{
430+ cat <<EOF > /tmp/casper-a11y.conf
431+UBIQUITY_A11Y_PROFILE=$1
432+EOF
433+}
434+
435+if [ "$#" = "0" ] || [ "$1" = "-h" ] || [ "$1" = "--help" ]; then
436+ help
437+ exit 1
438+fi
439+
440+while [ "$#" -gt 0 ];
441+do
442+ case "$1" in
443+ -chroot=*)
444+ CHROOT_DIR="${1#-chroot=}"
445+ DO_CHROOT="chroot $CHROOT_DIR"
446+ shift
447+ continue
448+ ;;
449+ -user=*)
450+ USER_NAME="${1#-user=}"
451+ DO_SUDO="sudo -u $USER_NAME"
452+ shift
453+ continue
454+ ;;
455+ -l|-login)
456+ SET_LOGIN=1
457+ shift
458+ continue
459+ ;;
460+ -i|-initramfs)
461+ IN_INITRAMFS=1
462+ shift
463+ continue
464+ ;;
465+ -d|-debug)
466+ set -x
467+ shift
468+ continue
469+ ;;
470+ -script)
471+ STARTUP_SCRIPT=1
472+ shift
473+ continue
474+ ;;
475+ *)
476+ PROFILE_NAME="$1"
477+ shift
478+ continue
479+ ;;
480+ esac
481+done
482+
483+if [ -n "$IN_INITRAMFS" ] && [ -z "$CHROOT_DIR" ]; then
484+ echo "Error: In initramfs, but no chroot directory specified."
485+ help
486+ exit 1
487+elif [ -n "$IN_INITRAMFS" ] && [ -z "$USER_NAME" ]; then
488+ echo "Error: In initramfs, but no username specified."
489+ help
490+ exit 1
491+fi
492+
493+if [ -n "$SET_LOGIN" ] && [ "$HOME" != "/root" ] && [ -z "$IN_INITRAMFS" ]; then
494+ echo "Error: Setting up accessibility for login requires root privileges."
495+ help
496+ exit 1
497+fi
498+
499+
500+if [ -n "$CHROOT_DIR" ] || [ -n "$USER_NAME" ]; then
501+ if [ "$HOME" != "/root" ] && [ -z "$IN_INITRAMFS" ]; then
502+ echo "Error: You are not running as root."
503+ help
504+ exit 1
505+ fi
506+fi
507+
508+if [ -n "$CHROOT_DIR" ]; then
509+ if [ ! -d "$CHROOT_DIR" ]; then
510+ echo "Error: Target chroot directory does not exist, or you do not have permission to access it."
511+ exit 1
512+ fi
513+ if [ -z "$IN_INITRAMFS" ] && ! type chroot >/dev/null 2>&1 ; then
514+ echo "Error: Chroot command not available in running environment."
515+ exit 1
516+ fi
517+fi
518+
519+if [ -n "$STARTUP_SCRIPT" ]; then
520+ if [ -z "$USER_NAME" ]; then
521+ echo "Error: You have requested to create a startup script, but no user was specified."
522+ exit 1
523+ fi
524+ if [ "$HOME" != "/root" ] && [ -z "$IN_INITRAMFS" ]; then
525+ echo "Error: You have requested to create a startup script, but you do not have root"
526+ echo "privileges."
527+ exit 1
528+ fi
529+ if [ -z "$CHROOT_DIR" ]; then
530+ echo "Error: You have requested to create a startup script, but you did not specify"
531+ echo "a target directory to chroot to."
532+ exit 1
533+ fi
534+fi
535+
536+# If no username was entered on the command line, grab the name of the current
537+# user, so we can write files to their home directory.
538+if [ -z "$USER_NAME" ]; then
539+ if [ -z "$USER" ]; then
540+ USER_NAME="${HOME#/home/}"
541+ else
542+ USER_NAME="$USER"
543+ fi
544+fi
545+
546+# Check to see if a few necessary packages are present in the target
547+# environment.
548+GCONF_VERSION=$($DO_CHROOT /usr/bin/dpkg-query -W --showformat='${Version}' gconf2 2>/dev/null) || GCONF_VERSION=""
549+GLIBBIN_VERSION=$($DO_CHROOT /usr/bin/dpkg-query -W --showformat='${Version}' libglib2.0-bin 2>/dev/null) || GLIBBIN_VERSION=""
550+ORCA_VERSION=$($DO_CHROOT /usr/bin/dpkg-query -W --showformat='${Version}' gnome-orca 2>/dev/null) || ORCA_VERSION=""
551+
552+if [ -n "$STARTUP_SCRIPT" ]; then
553+ cat <<EOF > $CHROOT_DIR/etc/init/a11y-profile-settings.conf
554+# a11y-profile-settings - A job to set up accessibility settings
555+
556+description "Accessibility profile settings"
557+
558+start on runlevel [2345]
559+
560+umask 022
561+
562+script
563+ sudo -u $USER_NAME /usr/bin/dbus-launch --exit-with-session /usr/bin/a11y-profile-settings
564+ sudo -u lightdm /usr/bin/dbus-launch --exit-with-session /usr/bin/a11y-profile-settings-lightdm
565+ rm /usr/bin/a11y-profile-settings /usr/bin/a11y-profile-settings-lightdm
566+ rm /etc/init/a11y-profile-settings.conf
567+end script
568+EOF
569+ cat <<EOF > $CHROOT_DIR/usr/bin/a11y-profile-settings
570+#!/bin/sh
571+
572+# Created by the casper accessibility profile settings script on
573+# $(date).
574+
575+# This script deletes itself once run.
576+
577+EOF
578+ cat <<EOF > $CHROOT_DIR/usr/bin/a11y-profile-settings-lightdm
579+#!/bin/sh
580+
581+# Created by the casper accessibility profile settings script on
582+# $(date).
583+
584+# This script deletes itself once run.
585+
586+EOF
587+fi
588+
589+case $PROFILE_NAME in
590+ high-contrast)
591+ set_common_lowvis
592+ set_high_contrast
593+ create_conf $PROFILE_NAME
594+ ;;
595+ magnifier)
596+ set_common_lowvis
597+ set_magnifier
598+ create_conf $PROFILE_NAME
599+ ;;
600+ blindness)
601+ set_common_lowvis
602+ set_blindness
603+ create_conf screen-reader
604+ ;;
605+ braille)
606+ set_common_lowvis
607+ set_braille
608+ create_conf $PROFILE_NAME
609+ ;;
610+ keyboard-modifiers)
611+ set_common_motor
612+ set_keyboard_modifiers
613+ create_conf $PROFILE_NAME
614+ ;;
615+ onscreen-keyboard)
616+ set_common_motor
617+ set_onscreen_keyboard
618+ create_conf $PROFILE_NAME
619+ ;;
620+esac
621+
622+if [ -n "$STARTUP_SCRIPT" ]; then
623+ chmod 755 $CHROOT_DIR/usr/bin/a11y-profile-settings*
624+fi
625
626=== modified file 'bin/casper-preseed'
627--- bin/casper-preseed 2006-10-16 15:05:58 +0000
628+++ bin/casper-preseed 2015-12-13 00:48:04 +0000
629@@ -2,18 +2,25 @@
630 set -e
631 PATH=/usr/sbin:/usr/bin:/sbin:/bin
632
633+# Only do this once.
634+if [ -z "$DEBCONF_REDIR" ]; then
635+ exec <&4
636+ export DEBIAN_HAS_FRONTEND=1
637+ export DEBCONF_REDIR=1
638+fi
639+
640 root="$1"
641+. "$root/usr/share/debconf/confmodule"
642+
643 question="$2"
644 value="$3"
645 seen="$4"
646 [ "$seen" ] || seen=true
647
648-if ! (echo "SET $question $value"; echo "FSET $question seen $seen") | chroot "$1" debconf-communicate -fnoninteractive casper >/dev/null; then
649- chroot "$1" debconf-communicate -fnoninteractive casper >/dev/null <<EOF
650-REGISTER debian-installer/dummy $question
651-SET $question $value
652-FSET $question seen $seen
653-EOF
654+if ! db_set "$question" "$value"; then
655+ db_register debian-installer/dummy "$question"
656+ db_set "$question" "$value"
657 fi
658+db_fset "$question" seen "$seen"
659
660 exit 0
661
662=== modified file 'bin/casper-reconfigure'
663--- bin/casper-reconfigure 2007-02-07 13:56:55 +0000
664+++ bin/casper-reconfigure 2015-12-13 00:48:04 +0000
665@@ -47,6 +47,9 @@
666 exit 0
667 fi
668
669+unset DEBIAN_HAS_FRONTEND
670+unset DEBIAN_FRONTEND
671+unset DEBCONF_REDIR
672 runcommandinroot "$root" dpkg-reconfigure -fnoninteractive --no-reload "$package"
673
674 exit 0
675
676=== added file 'bin/casper-set-selections'
677--- bin/casper-set-selections 1970-01-01 00:00:00 +0000
678+++ bin/casper-set-selections 2015-12-13 00:48:04 +0000
679@@ -0,0 +1,93 @@
680+#!/bin/sh
681+# Cloned-and-hacked from preseed/debconf-set-selections for casper.
682+set -e
683+
684+OLDIFS="$IFS"
685+CR=$(echo -en "\r")
686+NL="
687+"
688+
689+. /scripts/casper-functions
690+load_confmodule
691+
692+# Returns the first field in the current line
693+first_field() {
694+ echo "$line" | grep -q "[[:space:]]" || return 1
695+ echo "$line" | sed -r 's/^([^[:space:]]*).*/\1/'
696+}
697+
698+# Returns any fields after the first field in the current line
699+rest_line() {
700+ if echo "$line" | grep -q "[[:space:]]"; then
701+ echo "$line" | sed 's/^[^[:space:]]*[[:space:]]*//'
702+ fi
703+}
704+
705+SEEN=1
706+if [ "$1" = --unseen ]; then
707+ SEEN=
708+ shift
709+fi
710+
711+file="$1"
712+
713+parse_error() {
714+ echo "Error parsing preconfiguration file: $*" >&2
715+ exit 1
716+}
717+
718+IFS="$NL"
719+multiline=""
720+# TODO: this squashes \r elsewhere in the line too
721+for line in $(grep -v '^#\|^[[:space:]]*$' "$file" | sed "s/$CR//g"); do
722+ IFS="$OLDIFS"
723+
724+ line="$(echo "$line" | sed 's/^[[:space:]]*//')"
725+ if echo "$line" | grep -q '\\$'; then
726+ multiline="${multiline:+$multiline }$(echo "$line" | \
727+ sed 's/[[:space:]]*\\$//')"
728+ continue
729+ elif [ -n "$multiline" ]; then
730+ line="$multiline $line"
731+ multiline=""
732+ fi
733+ echo "$line" >>/tmp/casper-preseed.log
734+
735+ package=""
736+ var=""
737+ type=""
738+ val=""
739+ if ! package="$(first_field)"; then
740+ parse_error "Syntax error: unable to determine template owner"
741+ fi
742+ line="$(rest_line)"
743+ if ! var="$(first_field)"; then
744+ parse_error "Syntax error: unable to determine template name"
745+ fi
746+ line="$(rest_line)"
747+ if ! type="$(first_field)"; then
748+ # Allow for lines without separator before an empty value
749+ if [ "$line" ]; then
750+ type="$line"
751+ else
752+ parse_error "Syntax error: unable to determine template type"
753+ fi
754+ fi
755+ line="$(rest_line)"
756+ val="$line"
757+
758+ if [ "$type" = seen ]; then
759+ # Set seen flag.
760+ db_fset "$var" "$type" "$val" || true # how to handle this error?
761+ else
762+ if ! db_set "$var" "$val"; then
763+ # Question does not exist yet.
764+ db_register debian-installer/dummy "$var"
765+ db_set "$var" "$val"
766+ db_subst "$var" ID "$var"
767+ fi
768+ if [ "$SEEN" ]; then
769+ db_fset "$var" seen true
770+ fi
771+ fi
772+done
773
774=== modified file 'bin/casper-snapshot'
775--- bin/casper-snapshot 2009-06-12 11:46:49 +0000
776+++ bin/casper-snapshot 2015-12-13 00:48:04 +0000
777@@ -215,7 +215,7 @@
778 fi
779 else
780 if [ -b "${dev}" ] ; then
781- try_mount "${dev}" "${MOUNTP}" rw
782+ try_mount "${dev}" "${MOUNTP}" rw || panic "failed to mount ${dev}"
783 fi
784 fi
785 }
786
787=== added file 'bin/casper-update-initramfs'
788--- bin/casper-update-initramfs 1970-01-01 00:00:00 +0000
789+++ bin/casper-update-initramfs 2015-12-13 00:48:04 +0000
790@@ -0,0 +1,34 @@
791+#! /bin/sh
792+set -e
793+
794+if [ -f /cdrom/casper/vmlinuz ]; then
795+ # If /cdrom is mounted but not writable, just exit
796+ : >> "/cdrom/casper/vmlinuz" > /dev/null 2>&1 || exit 0
797+
798+ # If UBIQUITY_ONLY is set in the environment, also exit
799+ [ -n "$UBIQUITY_ONLY" ] && exit 0
800+fi
801+
802+update-initramfs.distrib "$@"
803+if [ -e /initrd.img ]; then
804+ bootdir=
805+else
806+ bootdir=/boot
807+fi
808+# initrd.img may exist when vmlinuz doesn't; for example, if
809+# update-initramfs is run on a fresh live USB stick without upgrading the
810+# kernel.
811+if [ -e "$bootdir/initrd.img" ]; then
812+ if [ -e /cdrom/casper/initrd.lz ]; then
813+ zcat "$bootdir/initrd.img" | lzma -9c >/cdrom/casper/initrd.lz.new
814+ mv /cdrom/casper/initrd.lz.new /cdrom/casper/initrd.lz
815+ else
816+ cp "$bootdir/initrd.img" /cdrom/casper/initrd.gz.new
817+ mv /cdrom/casper/initrd.gz.new /cdrom/casper/initrd.gz
818+ fi
819+fi
820+if [ -e "$bootdir/vmlinuz" ]; then
821+ cp "$bootdir/vmlinuz" /cdrom/casper/vmlinuz.new
822+ mv /cdrom/casper/vmlinuz.new /cdrom/casper/vmlinuz
823+fi
824+exit 0
825
826=== modified file 'casper-md5check/Makefile'
827--- casper-md5check/Makefile 2009-01-30 11:27:37 +0000
828+++ casper-md5check/Makefile 2015-12-13 00:48:04 +0000
829@@ -1,6 +1,7 @@
830-
831 CC=gcc
832-CFLAGS=$(getconf LFS_CFLAGS) -Wall -O2
833+PKG_CONFIG=pkg-config
834+CFLAGS := $(shell getconf LFS_CFLAGS) -Wall -O2 -g $(shell $(PKG_CONFIG) --cflags ply-boot-client)
835+LDLIBS=$(shell $(PKG_CONFIG) --libs ply-boot-client)
836
837 casper-md5check: casper-md5check.c md5.c
838
839
840=== modified file 'casper-md5check/casper-md5check.c'
841--- casper-md5check/casper-md5check.c 2009-01-30 11:27:37 +0000
842+++ casper-md5check/casper-md5check.c 2015-12-13 00:48:04 +0000
843@@ -1,6 +1,7 @@
844-/* casper-md5check - a tool to check md5sums and talk to usplash
845- (C) Canonical Ltd 2006
846+/* casper-md5check - a tool to check md5sums and talk to plymouth
847+ (C) Canonical Ltd 2006, 2010
848 Written by Tollef Fog Heen <tfheen@ubuntu.com>
849+ Ported to plymouth by Steve Langasek <steve.langasek@ubuntu.com>
850
851 This program is free software; you can redistribute it and/or
852 modify it under the terms of the GNU General Public License as
853@@ -32,13 +33,19 @@
854 #include <math.h>
855 #include <termios.h>
856
857-#define USPLASH_FIFO "/dev/.initramfs/usplash_fifo"
858-#define MAXTRIES 5
859+#include <ply-boot-client.h>
860+#include <ply-event-loop.h>
861+
862 #include "md5.h"
863 #define DEBUG
864
865+#define MD5_LEN 16
866+
867 static int verbose = 1;
868-static int got_usplash = 0;
869+static int got_plymouth = 0;
870+static ply_event_loop_t *ply_event_loop = NULL;
871+
872+int set_nocanonical_tty(int fd);
873
874 void parse_cmdline(void) {
875 FILE *cmdline = fopen("/proc/cmdline", "r");
876@@ -60,73 +67,54 @@
877 fclose(cmdline);
878 }
879
880-int write_and_retry(int fd, char *s) {
881- int try = 0, ret = 0;
882- char *end;
883-
884-#ifdef DEBUG
885- fprintf(stderr, "-> %s\n", s);
886-#endif
887-
888- end = s + strlen(s)+1;
889-
890- ret = write(fd, s, end - s);
891- while (s + ret < end && try < MAXTRIES) {
892- sleep(1);
893- s += ret;
894- ret = write(fd, s, strlen(s)+1);
895- try++;
896- }
897- return (s+ret == end ? 0 : 1);
898-}
899-
900-void usplash_timeout(int fd, int timeout) {
901+void plymouth_disconnected(void *user_data, ply_boot_client_t *client) {
902+ printf("Disconnected from Plymouth\n");
903+ got_plymouth = 0;
904+ ply_event_loop_exit(ply_event_loop, 0);
905+}
906+
907+void plymouth_answer(void *user_data, const char *keys,
908+ ply_boot_client_t *client)
909+{
910+ ply_event_loop_exit(ply_event_loop, 0);
911+}
912+
913+void plymouth_response(void *user_data, ply_boot_client_t *client) {
914+ /* No response */
915+}
916+
917+void plymouth_failure(ply_boot_client_t *client, char *format, ...) {
918 char *s;
919-
920- if (!got_usplash)
921- return;
922-
923- asprintf(&s, "TIMEOUT %d", timeout);
924-
925- write_and_retry(fd, s);
926-
927- free(s);
928-}
929-
930-void usplash_failure(int fd, char *format, ...) {
931- char *s, *s1;
932 va_list argp;
933
934 va_start(argp, format);
935 vasprintf(&s, format, argp);
936 va_end(argp);
937
938- if (got_usplash) {
939- asprintf(&s1, "FAILURE %s", s);
940-
941- write_and_retry(fd, s1);
942-
943- free(s1);
944+ if (got_plymouth) {
945+ ply_boot_client_tell_daemon_to_display_message(client, s,
946+ plymouth_response,
947+ plymouth_response, NULL);
948+ ply_event_loop_process_pending_events(ply_event_loop);
949 } else if (verbose)
950 printf("%s\n", s);
951
952 free(s);
953 }
954
955-void usplash_text(int fd, char *format, ...) {
956- char *s, *s1;
957+void plymouth_text(ply_boot_client_t *client, char *format, ...) {
958+ char *s;
959 va_list argp;
960
961 va_start(argp, format);
962 vasprintf(&s, format, argp);
963 va_end(argp);
964
965- if (got_usplash) {
966- asprintf(&s1, "TEXT %s", s);
967-
968- write_and_retry(fd, s1);
969-
970- free(s1);
971+ if (got_plymouth) {
972+ ply_boot_client_tell_daemon_to_display_message(client, s,
973+ plymouth_response,
974+ plymouth_response, NULL);
975+ ply_event_loop_process_pending_events(ply_event_loop);
976 } else if (verbose) {
977 printf("%s...", s);
978 fflush(stdout);
979@@ -135,7 +123,7 @@
980 free(s);
981 }
982
983-void usplash_urgent(int fd, char *format, ...) {
984+void plymouth_prompt(ply_boot_client_t *client, char *format, ...) {
985 char *s, *s1;
986 va_list argp;
987
988@@ -143,12 +131,41 @@
989 vasprintf(&s, format, argp);
990 va_end(argp);
991
992- if (got_usplash) {
993- asprintf(&s1, "TEXT-URGENT %s", s);
994-
995- write_and_retry(fd, s1);
996-
997- free(s1);
998+ if (got_plymouth) {
999+ asprintf(&s1, "keys:%s", s);
1000+ ply_boot_client_tell_daemon_to_display_message(client, s1,
1001+ plymouth_response,
1002+ plymouth_response, NULL);
1003+
1004+ ply_boot_client_ask_daemon_to_watch_for_keystroke(client, NULL,
1005+ plymouth_answer,
1006+ (ply_boot_client_response_handler_t)plymouth_answer, NULL);
1007+ ply_event_loop_run(ply_event_loop);
1008+ ply_boot_client_attach_to_event_loop(client, ply_event_loop);
1009+ ply_boot_client_tell_daemon_to_quit(client, 1, plymouth_response,
1010+ plymouth_response, NULL);
1011+ ply_event_loop_run(ply_event_loop);
1012+ } else {
1013+ printf("%s\n", s);
1014+ set_nocanonical_tty(0);
1015+ getchar();
1016+ }
1017+ free(s);
1018+}
1019+
1020+void plymouth_urgent(ply_boot_client_t *client, char *format, ...) {
1021+ char *s;
1022+ va_list argp;
1023+
1024+ va_start(argp, format);
1025+ vasprintf(&s, format, argp);
1026+ va_end(argp);
1027+
1028+ if (got_plymouth) {
1029+ ply_boot_client_tell_daemon_to_display_message(client, s,
1030+ plymouth_response,
1031+ plymouth_response, NULL);
1032+ ply_event_loop_process_pending_events(ply_event_loop);
1033 } else
1034 printf("%s\n", s);
1035
1036@@ -156,27 +173,26 @@
1037 }
1038
1039
1040-void usplash_success(int fd, char *format, ...) {
1041- char *s, *s1;
1042+void plymouth_success(ply_boot_client_t *client, char *format, ...) {
1043+ char *s;
1044 va_list argp;
1045
1046 va_start(argp, format);
1047 vasprintf(&s, format, argp);
1048 va_end(argp);
1049
1050- if (got_usplash) {
1051- asprintf(&s1, "SUCCESS %s", s);
1052-
1053- write_and_retry(fd, s1);
1054-
1055- free(s1);
1056+ if (got_plymouth) {
1057+ ply_boot_client_tell_daemon_to_display_message(client, s,
1058+ plymouth_response,
1059+ plymouth_response, NULL);
1060+ ply_event_loop_process_pending_events(ply_event_loop);
1061 } else if (verbose)
1062 printf("%s\n", s);
1063
1064 free(s);
1065 }
1066
1067-void usplash_progress(int fd, int progress) {
1068+void plymouth_progress(ply_boot_client_t *client, int progress) {
1069 static int prevprogress = -1;
1070 char *s;
1071
1072@@ -184,11 +200,11 @@
1073 return;
1074 prevprogress = progress;
1075
1076- if (got_usplash) {
1077- asprintf(&s, "PROGRESS %d", progress);
1078-
1079- write_and_retry(fd, s);
1080-
1081+ if (got_plymouth) {
1082+ asprintf(&s, "md5check:verifying:%d", progress);
1083+ ply_boot_client_update_daemon(client, s, plymouth_response,
1084+ plymouth_response, NULL);
1085+ ply_event_loop_process_pending_events(ply_event_loop);
1086 free(s);
1087 } else {
1088 printf("%d%%...", progress);
1089@@ -208,17 +224,27 @@
1090 return tcsetattr(fd, TCSANOW, &t);
1091 }
1092
1093+int is_md5sum(const char *checksum)
1094+{
1095+ if (strlen(checksum) != MD5_LEN * 2)
1096+ return 0;
1097+ if (strspn(checksum, "0123456789abcdef") != MD5_LEN * 2)
1098+ return 0;
1099+ return 1;
1100+}
1101+
1102 int main(int argc, char **argv) {
1103
1104- int pipe_fd, check_fd;
1105+ int check_fd;
1106 int failed = 0;
1107
1108 FILE *md5_file;
1109 md5_state_t state;
1110- md5_byte_t digest[16];
1111- char hex_output[16*2 + 1];
1112+ md5_byte_t digest[MD5_LEN];
1113+ char hex_output[MD5_LEN * 2 + 1];
1114 char *checksum, *checkfile;
1115 ssize_t tsize, csize;
1116+ ply_boot_client_t *client = NULL;
1117
1118 tsize = 0;
1119 csize = 0;
1120@@ -236,18 +262,23 @@
1121
1122 parse_cmdline();
1123
1124- pipe_fd = open(USPLASH_FIFO, O_WRONLY|O_NONBLOCK);
1125-
1126- if (pipe_fd == -1) {
1127+ client = ply_boot_client_new();
1128+ if (client)
1129+ ply_event_loop = ply_event_loop_new();
1130+ if (ply_event_loop)
1131+ ply_boot_client_attach_to_event_loop(client, ply_event_loop);
1132+
1133+ if (!client || !ply_event_loop || !ply_boot_client_connect(client, plymouth_disconnected, NULL))
1134+ {
1135 /* Fall back to text output */
1136- perror("Opening pipe");
1137- got_usplash = 0;
1138+ perror("Connecting to plymouth");
1139+ got_plymouth = 0;
1140 } else
1141- got_usplash = 1;
1142-
1143-
1144- usplash_progress(pipe_fd, 0);
1145- usplash_urgent(pipe_fd, "Checking integrity, this may take some time");
1146+ got_plymouth = 1;
1147+
1148+
1149+ plymouth_progress(client, 0);
1150+ plymouth_urgent(client, "Checking integrity, this may take some time");
1151 md5_file = fopen(argv[2], "r");
1152 if (!md5_file) {
1153 perror("fopen md5_file");
1154@@ -256,6 +287,9 @@
1155 while (fscanf(md5_file, "%as %a[^\n]", &checksum, &checkfile) == 2) {
1156 struct stat statbuf;
1157
1158+ if (!is_md5sum(checksum))
1159+ continue;
1160+
1161 if (stat(checkfile, &statbuf) == 0) {
1162 tsize += statbuf.st_size;
1163 }
1164@@ -270,14 +304,16 @@
1165 ssize_t rsize;
1166 int i;
1167
1168+ if (!is_md5sum(checksum))
1169+ continue;
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 +321,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@@ -294,13 +330,13 @@
1194 close(check_fd);
1195 md5_finish(&state, digest);
1196
1197- for (i = 0; i < 16; i++)
1198+ for (i = 0; i < MD5_LEN; i++)
1199 sprintf(hex_output + i * 2, "%02x", digest[i]);
1200
1201 if (strncmp(hex_output, checksum, strlen(hex_output)) == 0) {
1202- usplash_success(pipe_fd, "OK");
1203+ plymouth_success(client, "%s: OK", checkfile);
1204 } else {
1205- usplash_failure(pipe_fd, "mismatch");
1206+ plymouth_failure(client, "%s: mismatch", checkfile);
1207 failed++;
1208 }
1209 free(checksum);
1210@@ -308,14 +344,13 @@
1211 }
1212 fclose(md5_file);
1213 if (failed) {
1214- usplash_urgent(pipe_fd, "Check finished: errors found in %d files!", failed);
1215+ plymouth_urgent(client, "Check finished: errors found in %d files!", failed);
1216 } else {
1217- usplash_urgent(pipe_fd, "Check finished: no errors found");
1218+ plymouth_urgent(client, "Check finished: no errors found");
1219 }
1220- usplash_urgent(pipe_fd, "Press any key to reboot your system");
1221- usplash_timeout(pipe_fd, 86400);
1222- set_nocanonical_tty(0);
1223- getchar();
1224+
1225+ plymouth_prompt(client, "Press any key to reboot your system");
1226+
1227 reboot(LINUX_REBOOT_CMD_RESTART);
1228 return 0;
1229
1230
1231=== modified file 'casper.conf'
1232--- casper.conf 2007-02-07 11:05:56 +0000
1233+++ casper.conf 2015-12-13 00:48:04 +0000
1234@@ -1,8 +1,14 @@
1235 # This file should go in /etc/casper.conf
1236 # Supported variables are:
1237-# USERNAME, USERFULLNAME, HOST, BUILD_SYSTEM
1238+# USERNAME, USERFULLNAME, HOST, BUILD_SYSTEM, FLAVOUR
1239
1240 export USERNAME="ubuntu"
1241 export USERFULLNAME="Live session user"
1242 export HOST="ubuntu"
1243 export BUILD_SYSTEM="Ubuntu"
1244+
1245+# USERNAME and HOSTNAME as specified above won't be honoured and will be set to
1246+# flavour string acquired at boot time, unless you set FLAVOUR to any
1247+# non-empty string.
1248+
1249+# export FLAVOUR="Ubuntu"
1250
1251=== removed file 'conf.d/compcache'
1252--- conf.d/compcache 2008-09-12 08:13:38 +0000
1253+++ conf.d/compcache 1970-01-01 00:00:00 +0000
1254@@ -1,1 +0,0 @@
1255-COMPCACHE_SIZE="25%"
1256
1257=== added file 'debian/bzr-builddeb.conf'
1258--- debian/bzr-builddeb.conf 1970-01-01 00:00:00 +0000
1259+++ debian/bzr-builddeb.conf 2015-12-13 00:48:04 +0000
1260@@ -0,0 +1,2 @@
1261+[BUILDDEB]
1262+native = True
1263
1264=== modified file 'debian/casper.init'
1265--- debian/casper.init 2009-10-09 14:59:34 +0000
1266+++ debian/casper.init 2015-12-13 00:48:04 +0000
1267@@ -46,7 +46,7 @@
1268 find "$path" -type f | xargs cat > /dev/null 2>&1
1269 elif [ -f "$path" ]; then
1270 if [ -x "$path" ]; then
1271- if file "$path" | grep -q 'dynamically linked'; then
1272+ if file -L "$path" | grep -q 'dynamically linked'; then
1273 for lib in $(ldd "$path" | awk '{ print $3 }'); do
1274 cache_path "$lib"
1275 done
1276@@ -76,38 +76,64 @@
1277 # (archdetect), but since this is mostly only relevant for
1278 # installations, who cares ...
1279 if type archdetect >/dev/null 2>&1; then
1280- subarch="$(archdetect)"
1281- case $subarch in
1282- arm*/imx51)
1283- return 0
1284- ;;
1285- esac
1286+ subarch="$(archdetect)"
1287+ case $subarch in
1288+ arm*/imx51)
1289+ return 0
1290+ ;;
1291+ esac
1292 fi
1293
1294 prompt=1
1295 if grep -qs noprompt /proc/cmdline; then
1296- prompt=
1297+ prompt=
1298 fi
1299
1300- for path in $(which halt) $(which reboot) /etc/rc?.d /etc/default $(which stty); do
1301+ for path in $(which halt) $(which reboot) /etc/rc?.d /etc/default $(which stty) /bin/plymouth; do
1302 cache_path "$path"
1303 done
1304
1305- eject -p -m /cdrom >/dev/null 2>&1
1306+ device="$(grep " /cdrom " /proc/mounts | cut -d' ' -f1)" || device=
1307+ # If /cdrom isn't mounted, don't try to eject it
1308+ if [ -z "$device" ]; then
1309+ return 0
1310+ fi
1311+
1312+ # If the device exists but can't be found in /sys/block, it's most likely a partition
1313+ # so unmount it (lazy mode) and sync
1314+ if [ -b "$device" ] && [ ! -f "/sys/block/$(basename $device)/removable" ]; then
1315+ umount -l $device >/dev/null 2>&1
1316+ sync
1317+ return 0
1318+ fi
1319+
1320+ # If we're still there, then we're probably a cdrom or other media
1321+ # ship the eject if the kernel says the media isn't removable
1322+ if [ "$(cat /sys/block/$(basename $device)/removable)" = "0" ]; then
1323+ return 0
1324+ fi
1325+
1326+ # XXX - i18n
1327+ MSG="Please remove installation media and close the tray (if any) then press ENTER: "
1328+
1329+ if [ "$prompt" ]; then
1330+ if [ -x /bin/plymouth ] && plymouth --ping; then
1331+ plymouth message --text="$MSG"
1332+ else
1333+ stty sane < /dev/console
1334+ echo $MSG > /dev/console
1335+ fi
1336+ fi
1337+
1338+ eject -p -m $device >/dev/null 2>&1
1339
1340 [ "$prompt" ] || return 0
1341
1342- stty sane < /dev/console
1343-
1344- # XXX - i18n
1345- echo "Please remove the disc and close the tray (if any) then press ENTER: " > /dev/console
1346- if [ -x /sbin/usplash_write ]; then
1347- /sbin/usplash_write "TIMEOUT 86400"
1348- /sbin/usplash_write "TEXT-URGENT Please remove the disc, close the tray (if any)"
1349- /sbin/usplash_write "TEXT-URGENT and press ENTER to continue"
1350+ if [ -x /bin/plymouth ] && plymouth --ping; then
1351+ plymouth watch-keystroke > /dev/null
1352+ else
1353+ read x < /dev/console
1354 fi
1355-
1356- read x < /dev/console
1357 }
1358
1359 case "$1" in
1360
1361=== modified file 'debian/casper.install'
1362--- debian/casper.install 2009-09-23 14:21:43 +0000
1363+++ debian/casper.install 2015-12-13 00:48:04 +0000
1364@@ -3,7 +3,9 @@
1365 bin/casper-new-uuid sbin
1366 bin/casper-preseed usr/share/casper
1367 bin/casper-reconfigure usr/share/casper
1368+bin/casper-set-selections usr/share/casper
1369 bin/casper-snapshot sbin
1370+bin/casper-update-initramfs usr/share/casper
1371 hooks usr/share/initramfs-tools
1372 scripts usr/share/initramfs-tools
1373 conf.d usr/share/initramfs-tools
1374
1375=== modified file 'debian/casper.postinst'
1376--- debian/casper.postinst 2006-07-21 11:19:15 +0000
1377+++ debian/casper.postinst 2015-12-13 00:48:04 +0000
1378@@ -1,4 +1,4 @@
1379-#! /bin/sh
1380+#!/bin/sh
1381
1382 update-initramfs -u
1383
1384
1385=== modified file 'debian/changelog'
1386--- debian/changelog 2010-09-28 23:07:27 +0000
1387+++ debian/changelog 2015-12-13 00:48:04 +0000
1388@@ -1,4 +1,1264 @@
1389-casper (1.211) UNRELEASED; urgency=low
1390+casper (1.340) trusty; urgency=medium
1391+
1392+ * Remove 23etc_modules which does more harm than good (LP: #1296386)
1393+
1394+ -- Adam Conrad <adconrad@ubuntu.com> Wed, 09 Apr 2014 12:45:13 -0600
1395+
1396+casper (1.339) trusty; urgency=medium
1397+
1398+ * scripts/casper: Fix for new udev that doesn't have by-path.
1399+ Original patch from http://goo.gl/R76aKl (LP: #1293811)
1400+
1401+ -- Mario Limonciello <superm1@ubuntu.com> Wed, 19 Mar 2014 09:22:38 -0500
1402+
1403+casper (1.338) trusty; urgency=medium
1404+
1405+ * scripts/casper-bottom/30accessibility: If the user boots to the desktop,
1406+ write a desktop file to /etc/xdg/autostart to set up the screen reader
1407+ profile if the user launches Orca with a shortcut key. Gnome/Unity
1408+ settings daemon takes priority over ubiquity with keygrabs, such
1409+ that the profile setting code in ubiquity does not get executed when
1410+ the shortcut is entered. Temporarily disabling the shortcut key also
1411+ doesn't work, as Gnome/Unity settings daemon doesn't appear to notice
1412+ the change when the gsettings key is changed on the command-line. As
1413+ such, this is a cludge, until a better mechanism for handling
1414+ accessibility profiles is implemented.
1415+
1416+ -- Luke Yelavich <themuso@ubuntu.com> Mon, 10 Mar 2014 14:59:02 +1100
1417+
1418+casper (1.337) trusty; urgency=low
1419+
1420+ * 25adduser: add ubiquity-kdeui.desktop to plasma-netbook init template
1421+
1422+ -- Harald Sitter <apachelogger@kubuntu.org> Tue, 04 Feb 2014 11:23:26 +0100
1423+
1424+casper (1.336ubuntu1) saucy; urgency=low
1425+
1426+ * Update link to Kubuntu docs in scripts/casper-bottom/25adduser
1427+
1428+ -- Jonathan Riddell <jriddell@ubuntu.com> Tue, 24 Sep 2013 16:16:38 +0100
1429+
1430+casper (1.336) saucy; urgency=low
1431+
1432+ * 25adduser: Adjust to rename of ubiquity-gtkui.desktop to ubiquity.desktop
1433+
1434+ -- Jeremy Bicha <jbicha@ubuntu.com> Fri, 02 Aug 2013 10:04:11 +0100
1435+
1436+casper (1.335) saucy; urgency=low
1437+
1438+ * 22desktop_settings:
1439+ - Don't require gnome-screensaver to disable the lock screen since
1440+ Ubuntu GNOME no longer includes gnome-screensaver
1441+ - Don't override the gnome-shell favorites since that's already
1442+ handled in ubuntu-gnome-default-settings
1443+
1444+ -- Jeremy Bicha <jbicha@ubuntu.com> Mon, 24 Jun 2013 21:57:59 -0400
1445+
1446+casper (1.334) saucy; urgency=low
1447+
1448+ * Use spaces instead of hyphens for the Name field of ubiquity's .desktop
1449+ (LP: #651098)
1450+
1451+ -- Jeremy Bicha <jbicha@ubuntu.com> Mon, 24 Jun 2013 12:08:44 +0200
1452+
1453+casper (1.333) saucy; urgency=low
1454+
1455+ * Remove hardcoded paths to udevadm (LP: #1184066).
1456+
1457+ -- Colin Watson <cjwatson@ubuntu.com> Tue, 28 May 2013 11:19:12 +0100
1458+
1459+casper (1.332) raring; urgency=low
1460+
1461+ * Don't wait for keystroke when prompt != 1 (preseeded reboots).
1462+ (LP: #1172653)
1463+
1464+ -- Stéphane Graber <stgraber@ubuntu.com> Thu, 25 Apr 2013 12:05:02 +0200
1465+
1466+casper (1.331) raring; urgency=low
1467+
1468+ * Re-order the eject code so that the message is rendered before the eject
1469+ which should fix the case where fonts or other bits are missing and the
1470+ message can't be rendered. (LP: #966480)
1471+ * Also detect swap space on virtio.
1472+
1473+ -- Stéphane Graber <stgraber@ubuntu.com> Tue, 23 Apr 2013 19:46:18 +0200
1474+
1475+casper (1.330) raring; urgency=low
1476+
1477+ [ Stéphane Graber ]
1478+ * Move cifs related modules to the right place.
1479+
1480+ [ Colin Watson ]
1481+ * Use correct compiler and pkg-config when cross-building.
1482+
1483+ -- Colin Watson <cjwatson@ubuntu.com> Mon, 03 Dec 2012 15:56:49 +0000
1484+
1485+casper (1.329) raring; urgency=low
1486+
1487+ * Skip images called ltsp.squashfs or server.squashfs as those are shipped
1488+ on the Edubuntu images but aren't intended to be used for the live
1489+ environment.
1490+ * Cleanup mixed tabs/spaces in the main casper script.
1491+ * Bump standards, no change required.
1492+ * Set a valid Vcs-Bzr URL.
1493+
1494+ -- Stéphane Graber <stgraber@ubuntu.com> Sun, 18 Nov 2012 18:18:22 -0500
1495+
1496+casper (1.328) quantal; urgency=low
1497+
1498+ * Fix path to .disk/info in 41apt_cdrom (LP: #1065827).
1499+
1500+ -- Colin Watson <cjwatson@ubuntu.com> Fri, 12 Oct 2012 12:05:15 +0100
1501+
1502+casper (1.327) quantal; urgency=low
1503+
1504+ [ Tim Lunn ]
1505+ * add gnome-shell favorites tweak to 25adduser
1506+ * Add 16gdmnopasswd script, removes gdm password dialog for live user.
1507+
1508+ [ Stéphane Graber ]
1509+ * Fix casper when running on some RAID systems. (LP: #1047316, LP: #965735)
1510+ * Apply patch by Tyler Gates to try and better handle dm devices, should help
1511+ with the above change too. (LP: #865529)
1512+ * Use /sys/class/net/ instead of hardcoded eth* devices.
1513+ (LP: #905828, LP: #962546)
1514+ * Allow overriding username/userfullname/hostname on the boot command line
1515+ as is mentioned in the manpage but was never implemented.
1516+ Note that when using persistence, those used for the first boot will be
1517+ remembered through /etc/casper.conf (LP: #907482)
1518+ * Reset oem-config/enable to false every boot. (LP: #838680)
1519+ * Add Breaks/Replaces to ubiquity-casper to properly upgrade when both
1520+ casper and ubiquity-casper are installed. (LP: #1046300)
1521+ * Apply patch by cleary to avoid hang in 41apt_cdrom when .disk/info doesn't
1522+ exist. (LP: #909919)
1523+ * Eject by block device instead of mountpoint, this should avoid ejecting
1524+ the cdrom on USB installations. (LP: #869238)
1525+ * Add 'check' target to debian/rules based on ubiquity's (LP: #570243)
1526+
1527+ -- Stéphane Graber <stgraber@ubuntu.com> Wed, 03 Oct 2012 17:46:39 -0400
1528+
1529+casper (1.326) quantal; urgency=low
1530+
1531+ * 22desktop_settings:
1532+ - Rename 22screensaver to 22desktop_settings
1533+ - Move 22gnome_panel_data's content to 22desktop_settings
1534+ - Flush overrides in 22desktop_settings to avoid getting duplicate keys
1535+ when using persistence.
1536+ - Check for gsettings-desktop-schemas instead of gnome-panel-data
1537+ * 35fix_language_selector:
1538+ - Use sed against the original file (from rofs) instead of the target file.
1539+ This avoids another case where the change is re-applied at every boot
1540+ when using persistence.
1541+ * 25adduser:
1542+ - Remove RUNNING_UNDER_GDM from /etc/environment which was a big hack
1543+ for back when we still used xscreensaver and was getting appended with
1544+ every single boot.
1545+ - Use /etc/sudoers.d instead of appending to /etc/sudoers, avoid getting
1546+ duplicate lines with every reboot.
1547+ * 23networking:
1548+ - Change default /etc/network/interfaces to match that in /rofs, makes it
1549+ easier to diff /etc when debugging casper.
1550+ * casper-init, casper, 19-keyboard, casper-functions:
1551+ - Remove any remaining reference to usplash as it's been deprecated for a
1552+ long long time and just makes things harder to read.
1553+ * casper-update-initramfs:
1554+ - Exit when called from a non-writable media (cdrom) or when called from
1555+ ubiquity. This fixes a > 1 minute wait when clicking "Try Ubuntu".
1556+ * 19keyboard:
1557+ - Add code to detect that the keyboard layout changed from the previous
1558+ value and flush the gsettings key so that the indicator is properly
1559+ reset. (LP: #946406)
1560+ * 43disable_updateinitramfs:
1561+ - Don't try to chmod a dangling symlink.
1562+ - Only write /usr/sbin/update-initramfs if it doesn't already exist.
1563+ * postinst:
1564+ - Remove code generating symlink for /usr/sbin/update-initramfs to
1565+ /usr/share/casper/casper-update-iniramfs as the diversion and symlinking
1566+ is done in the initramfs and that code was only useful when the shim was
1567+ first introduced. (LP: #984276)
1568+ * scripts/casper:
1569+ - Allow specifying live-media on the command line, helps when booting
1570+ computers that are unable to boot a CD/USB disk. (LP: #423616)
1571+ - Fix NFSOPTS handling by adding the needed comma and sticking it to the
1572+ existing "ro" option of nfsmount (LP: #476208)
1573+ * 22serialtty:
1574+ - Move 22serialtty to 26serialtty to avoid overriding the newly generated
1575+ upstart jobs. Note that this will spawn getty instead of login, but
1576+ it's probably for the best as we need a specific baudrate. (LP: #747888)
1577+
1578+ -- Stéphane Graber <stgraber@ubuntu.com> Tue, 02 Oct 2012 18:11:44 -0400
1579+
1580+casper (1.325) quantal; urgency=low
1581+
1582+ [ Logan Rosen ]
1583+ * Remove 26disable_user_menu script, as it is obsolete (LP: #1057234)
1584+
1585+ [ Tim Lunn ]
1586+ * Patch [UG]ID_MIN in login.defs so that live user shows
1587+ up in GDM.
1588+
1589+ [ Didier Roche ]
1590+ * Remove more obsolete gsettings indicator value set
1591+
1592+ -- Didier Roche <didrocks@ubuntu.com> Fri, 28 Sep 2012 09:37:34 +0200
1593+
1594+casper (1.324) quantal; urgency=low
1595+
1596+ [ Tim L ]
1597+ * Remove logout menu item without affecting 'power off' item
1598+
1599+ -- Tim Lunn <tim@feathertop.org> Mon, 17 Sep 2012 13:35:41 +0100
1600+
1601+casper (1.323) quantal; urgency=low
1602+
1603+ [ Tim L ]
1604+ * Fix auto login script for GDM 3.5 (LP: #1046630)
1605+ * reenable suppress logout for GNOME Classic
1606+
1607+ -- Luke Yelavich <themuso@ubuntu.com> Wed, 12 Sep 2012 12:59:03 +1000
1608+
1609+casper (1.322) quantal; urgency=low
1610+
1611+ * Fix typo in a11y-profile-settings job description.
1612+ * Update paths used to divert away check-new-release and
1613+ check-new-release-gtk.
1614+
1615+ -- Colin Watson <cjwatson@ubuntu.com> Wed, 05 Sep 2012 17:47:07 +0100
1616+
1617+casper (1.321) quantal; urgency=low
1618+
1619+ * bin/casper-a11y-enable: Remove session setting code. Now that Unity 2D
1620+ is no longer available, setting the session to Ubuntu 2D causes a login
1621+ loop until the session is changed.
1622+
1623+ -- Luke Yelavich <themuso@ubuntu.com> Thu, 16 Aug 2012 13:35:29 +1000
1624+
1625+casper (1.320) quantal; urgency=low
1626+
1627+ * scripts/casper: Add match for platform-tegra-ehci USB controllers to
1628+ allow for finding live filesystems on external USB media on tegra
1629+ platforms.
1630+
1631+ -- Luke Yelavich <themuso@ubuntu.com> Sat, 21 Jul 2012 17:41:31 +1000
1632+
1633+casper (1.319) quantal; urgency=low
1634+
1635+ * Remove conf.d/compcache as compcache doesn't exist anymore.
1636+ A possible replacement would be zram.
1637+ * Add md4 and des_generic to the initramfs, required by cifs.
1638+ * Revert my previous change as the network-manager override isn't actually
1639+ needed when the /e/n/i logic works (and marks the interface as manual).
1640+ * Update paths to net-$INTERFACE.conf to /run/ as it now lives there instead
1641+ of /tmp. (LP: #1013843)
1642+
1643+ -- Stéphane Graber <stgraber@ubuntu.com> Tue, 03 Jul 2012 22:36:16 -0400
1644+
1645+casper (1.318) quantal; urgency=low
1646+
1647+ * Move the casper-a11y script from casper to ubiquity-casper so the script
1648+ is available for use in OEM config mode.
1649+
1650+ -- Luke Yelavich <themuso@ubuntu.com> Wed, 20 Jun 2012 16:15:53 +1000
1651+
1652+casper (1.317) quantal; urgency=low
1653+
1654+ * scripts/casper-bottom/44pk_allow_ubuntu: grant admin polkit privileges
1655+ to lightdm user, which enables restart and shutdown from the greeter
1656+ (LP: #855556)
1657+
1658+ -- Alex Chiang <achiang@canonical.com> Tue, 22 May 2012 11:32:24 -0400
1659+
1660+casper (1.316) quantal; urgency=low
1661+
1662+ * Add dependency on cifs-utils for cifs NETBOOT support of desktop images.
1663+ * Disable network-manager when installing from NETBOOT, otherwise we
1664+ loose access to the media when NM starts, causing the system to freeze.
1665+
1666+ -- Stéphane Graber <stgraber@ubuntu.com> Mon, 30 Apr 2012 15:39:32 +0200
1667+
1668+casper (1.315) precise; urgency=low
1669+
1670+ * Fix sed call for rc_domain (LP: #973794)
1671+ * Ensure resulting resolv.conf is always clean and valid.
1672+
1673+ -- Stéphane Graber <stgraber@ubuntu.com> Wed, 18 Apr 2012 11:33:49 +0200
1674+
1675+casper (1.314) precise; urgency=low
1676+
1677+ * bin/casper-a11y-enable: Call dbus-send with the --print-reply command-line
1678+ argument, and send the output to null, as we don't need it. For some
1679+ reason dbus-send only executes our commands when --print-reply is given.
1680+
1681+ -- Luke Yelavich <themuso@ubuntu.com> Tue, 03 Apr 2012 11:36:32 +1000
1682+
1683+casper (1.313) precise; urgency=low
1684+
1685+ * bin/casper-a11y-enable:
1686+ - Remove code to create a sudoers config file that is no longer needed
1687+ in the at-spi dbus world we now live in, thanks to Attila Hammer for
1688+ the patch. (LP: #964985)
1689+ - Disable the calendar in all low vision accessibility profiles as it has
1690+ issues with keyboard navigation, thanks to Attila Hammer for the patch.
1691+ (LP: #965015)
1692+ - Do not hard code the ubuntu-2d session name in the set_session method.
1693+ * ubiquity-hooks/30accessibility:
1694+ - Use the orca settings from the live session for unity-greeter on the
1695+ installed system, thanks to Attila Hammer for the patch. (LP: #968929)
1696+
1697+ -- Luke Yelavich <themuso@ubuntu.com> Mon, 02 Apr 2012 16:39:26 +1000
1698+
1699+casper (1.312) precise; urgency=low
1700+
1701+ * bin/casper-reconfigure: Unset DEBIAN_HAS_FRONTEND, DEBIAN_FRONTEND, and
1702+ DEBCONF_REDIR so that casper-reconfigure properly uses the
1703+ noninteractive frontend when invoked from a ubiquity target-config hook
1704+ (LP: #955617).
1705+
1706+ -- Colin Watson <cjwatson@ubuntu.com> Mon, 19 Mar 2012 22:06:38 +0000
1707+
1708+casper (1.311) precise; urgency=low
1709+
1710+ * LightDM on kubuntu-active wants to start ubuntu.desktop,
1711+ workaround in 15autologin for now
1712+
1713+ -- Jonathan Riddell <jriddell@ubuntu.com> Thu, 15 Mar 2012 11:56:25 +0000
1714+
1715+casper (1.310) precise; urgency=low
1716+
1717+ * bin/casper-a11y-enable:
1718+ - Use the unity-greeter gsettings keys for accessibility settings.
1719+ - Enable high contrast in unity-greeter when the high contrast profile
1720+ is selected.
1721+ - Remove functionality to set gconf values for the login manager,
1722+ unity-greeter uses gsettings.
1723+
1724+ -- Luke Yelavich <themuso@ubuntu.com> Thu, 15 Mar 2012 14:41:29 +1100
1725+
1726+casper (1.309) precise; urgency=low
1727+
1728+ * scripts/casper-bottom/14locales:
1729+ - Stop dealing with /etc/environment
1730+ - Always overwrite /etc/default/locale at boot time
1731+ - Use /root/rofs/etc/default/locale as the base locale (LP: #951397)
1732+ * scripts/casper-bottom/19keyboard
1733+ - Reset /etc/default/keyboard if present in the overlay (LP: #953999)
1734+ * scripts/casper-bottom/50ubiquity-bluetooth-agent
1735+ - Only do the diversion the first time around
1736+
1737+ -- Stéphane Graber <stgraber@ubuntu.com> Tue, 13 Mar 2012 17:00:58 -0400
1738+
1739+casper (1.308) precise; urgency=low
1740+
1741+ * Reconfigure jackd2 if jackd/tweak_rt_limits has been preseeded
1742+ (LP: #923810).
1743+
1744+ -- Colin Watson <cjwatson@ubuntu.com> Tue, 13 Mar 2012 10:33:24 +0000
1745+
1746+casper (1.307) precise; urgency=low
1747+
1748+ * Add 50ubiquity-bluetooth-agent to detect ubiquity-bluetooth-agent and
1749+ make bluetooth-applet call it instead (using dpkg-divert + ln).
1750+ (LP: #644198)
1751+
1752+ -- Stéphane Graber <stgraber@ubuntu.com> Fri, 09 Mar 2012 11:56:44 -0500
1753+
1754+casper (1.306) precise; urgency=low
1755+
1756+ [ Sergey "Shnatsel" Davidoff ]
1757+ * Comment on the recently-introduced FLAVOUR variable in casper.conf.
1758+
1759+ [ Stéphane Graber ]
1760+ * in 23networking, when writing resolv.conf detect resolvconf and write
1761+ to /run/resolvconf/interfaces/casper instead. (LP: #946215)
1762+
1763+ -- Stéphane Graber <stgraber@ubuntu.com> Mon, 05 Mar 2012 15:38:23 -0500
1764+
1765+casper (1.305) precise; urgency=low
1766+
1767+ * Wait for debconf-communicate to exit before trying to copy the
1768+ database. (LP: #940908)
1769+
1770+ -- Stéphane Graber <stgraber@ubuntu.com> Wed, 29 Feb 2012 21:48:39 -0500
1771+
1772+casper (1.304) precise; urgency=low
1773+
1774+ * 25adduser: Back up and restore passwd/{root,user}-password{,-again} as
1775+ well (LP: #924535).
1776+
1777+ -- Colin Watson <cjwatson@ubuntu.com> Wed, 01 Feb 2012 22:44:38 +0000
1778+
1779+casper (1.303) precise; urgency=low
1780+
1781+ * 25adduser: Restore previous contents of the debconf questions we set,
1782+ rather than just resetting them (LP: #924535).
1783+
1784+ -- Colin Watson <cjwatson@ubuntu.com> Wed, 01 Feb 2012 10:16:58 +0000
1785+
1786+casper (1.302) precise; urgency=low
1787+
1788+ * Move adduser script to run after preseed so that preseeding
1789+ passwd/user-default-groups is useful in the live session (LP: #923810).
1790+
1791+ -- Colin Watson <cjwatson@ubuntu.com> Mon, 30 Jan 2012 22:13:04 +0000
1792+
1793+casper (1.301) precise; urgency=low
1794+
1795+ * 41apt_cdrom: use standard logging to facilitate debugging thanks to cleary
1796+ for the patch (LP: #909916)
1797+
1798+ -- Brian Murray <brian@ubuntu.com> Wed, 25 Jan 2012 15:14:09 -0800
1799+
1800+casper (1.300) precise; urgency=low
1801+
1802+ * 33enable_apport_crashes: If enabling apport (i. e. on a released Ubuntu
1803+ versions), only report crashes for Ubiquity. Do not report general
1804+ desktop-ish crashes, for the same reasons why we disable them for
1805+ Ubuntu releases after installation. (LP: #593606)
1806+
1807+ -- Martin Pitt <martin.pitt@ubuntu.com> Tue, 24 Jan 2012 10:12:26 +0100
1808+
1809+casper (1.299) precise; urgency=low
1810+
1811+ * Fix the variable to be $FLAVOUR.
1812+
1813+ -- Mario Limonciello <Mario_Limonciello@Dell.com> Tue, 17 Jan 2012 16:36:24 -0600
1814+
1815+casper (1.298) precise; urgency=low
1816+
1817+ * Write out a new casper.conf with derivative values if they've been changed.
1818+ - Fixes applications that parse /etc/casper.conf from breaking.
1819+ - This can be reverted after the livecd-rootfs task from LP: #904482 is
1820+ fixed.
1821+
1822+ -- Mario Limonciello <Mario_Limonciello@Dell.com> Mon, 16 Jan 2012 22:30:47 -0600
1823+
1824+casper (1.297) precise; urgency=low
1825+
1826+ * scripts/casper:
1827+ look for live image on AC100/Tegra2 specific eMMC block device too.
1828+
1829+ -- Jani Monoses <jani@ubuntu.com> Mon, 09 Jan 2012 18:56:57 +0200
1830+
1831+casper (1.296) precise; urgency=low
1832+
1833+ * Rework the reboot logic to not use udisks (doesn't work without dbus)
1834+ and try to handle any kind of install media. (LP: #600740)
1835+
1836+ -- Stéphane Graber <stgraber@ubuntu.com> Thu, 15 Dec 2011 12:28:08 -0500
1837+
1838+casper (1.295) precise; urgency=low
1839+
1840+ * Convert keys from gconf to gsettings:
1841+ - 22gnome_panel_data: disable_lock_screen (LP: #610345)
1842+ - 15autologin: suppress-logout-menuitem (indicator)
1843+ * Syntax cleanup in debian/casper.init (replacing tabs by spaces)
1844+ * Base the hostname and username on the media name (LP: #290351)
1845+ * If udisks is present and considers a device has non-removable
1846+ then don't call eject and don't show the prompt. (LP: #600740)
1847+
1848+ -- Stéphane Graber <stgraber@ubuntu.com> Wed, 14 Dec 2011 15:50:44 -0500
1849+
1850+casper (1.294) precise; urgency=low
1851+
1852+ * scripts/casper:
1853+ look for live image on OMAP specific MMC block devices too.
1854+ * Sync up source package with bzr branch, they had conflicting changes
1855+ for the same version (1.293)
1856+
1857+ -- Jani Monoses <jani@ubuntu.com> Tue, 13 Dec 2011 02:08:40 +0200
1858+
1859+casper (1.293) precise; urgency=low
1860+
1861+ * Change KDE path profile for disable_restart_notifications. Thanks to
1862+ Enrique Hernández Bello for the patch (LP: #898721).
1863+
1864+ -- Brian Murray <brian@ubuntu.com> Wed, 07 Dec 2011 16:35:53 -0800
1865+
1866+casper (1.292) precise; urgency=low
1867+
1868+ * Do not let single quotes get into resolv.conf, otherwise DNS lookups
1869+ will fail.
1870+
1871+ -- Evan Dandrea <ev@ubuntu.com> Fri, 25 Nov 2011 17:00:58 +0000
1872+
1873+casper (1.291) precise; urgency=low
1874+
1875+ * Just add the live username to /etc/sudoers rather than relying on it to
1876+ be in the admin group, which is no longer the case as of user-setup
1877+ 1.39ubuntu1 (LP: #893060).
1878+
1879+ -- Colin Watson <cjwatson@ubuntu.com> Mon, 21 Nov 2011 18:06:13 +0000
1880+
1881+casper (1.290) precise; urgency=low
1882+
1883+ [ Mario Limonciello ]
1884+ * Allow the "device" UUID to be used to resolve UUIDs in addition to the UUID
1885+ in .disk/info. Useful for situations that the casper filesystem is on
1886+ a disk and that disk's UUID is specified on kernel command line.
1887+
1888+ [ Colin Watson ]
1889+ * Use '/sbin/udevadm test-builtin path_id' rather than /lib/udev/path_id,
1890+ which was removed in udev 174.
1891+
1892+ -- Colin Watson <cjwatson@ubuntu.com> Thu, 10 Nov 2011 14:27:01 +0000
1893+
1894+casper (1.289) precise; urgency=low
1895+
1896+ * Canonicalise debian-installer/locale= / locale= into a UTF-8 locale when
1897+ processing preseeding, in line with how we set up the locale in the live
1898+ environment (LP: #882308).
1899+
1900+ -- Colin Watson <cjwatson@ubuntu.com> Tue, 08 Nov 2011 15:34:57 +0000
1901+
1902+casper (1.288) precise; urgency=low
1903+
1904+ * Ignore lines in md5sum.txt that aren't md5sum output (LP: #873401).
1905+
1906+ -- Colin Watson <cjwatson@ubuntu.com> Mon, 24 Oct 2011 17:05:55 +0100
1907+
1908+casper (1.287) oneiric; urgency=low
1909+
1910+ * Remove typo from 26disable_user_menu that led the script to
1911+ believe that indicator-session was never actually installed.
1912+
1913+ -- Adam Conrad <adconrad@ubuntu.com> Wed, 12 Oct 2011 14:00:48 +0100
1914+
1915+casper (1.286) oneiric; urgency=low
1916+
1917+ * Convert the gsettings calls to using the gsettings override files
1918+ because we don't have DBUS in casper.
1919+
1920+ -- Stéphane Graber <stgraber@ubuntu.com> Wed, 12 Oct 2011 13:38:53 +0100
1921+
1922+casper (1.285) oneiric; urgency=low
1923+
1924+ * scripts/casper:
1925+ - enable use of virtio devices in is_nice_device()
1926+
1927+ -- Ante Karamatic <ivoks@ubuntu.com> Thu, 06 Oct 2011 17:17:42 +0100
1928+
1929+casper (1.284) oneiric; urgency=low
1930+
1931+ * bin/casper-a11y-enable:
1932+ - Set the session by calling AccountService via dbus instead of using
1933+ lightdm commands, as we cannot run lightdm-set-defaults as a user
1934+ - Add some extra spaces to make sure the startup scripts used to set a11y
1935+ settings are syntactically correct
1936+ - Add some other needed settings for various profiles for use in the login
1937+ manager
1938+ - Set correct permissions for the orca config directory once the config
1939+ files have been created
1940+ - Make sure the startup script checks take into account the ability to be
1941+ run from the initramfs
1942+ * ubiquity-hooks/30accessibility:
1943+ - Make sure that accessibility profile settings are properly applied at
1944+ install time, even if the user decided to try Ubuntu first, and then
1945+ run the install from the desktop
1946+ - Copy any existing orca configuration to the target system
1947+ - Make sure profile settings are not set up twice
1948+
1949+ -- Luke Yelavich <themuso@ubuntu.com> Wed, 14 Sep 2011 16:19:59 +1000
1950+
1951+casper (1.283) oneiric; urgency=low
1952+
1953+ * scripts/casper-bottom/22screensaver: Set gsettings key instead of gconf.
1954+ * scripts/casper-bottom/44pk_allow_ubuntu: Drop old PolicyKit stuff, it's
1955+ gone for a long time.
1956+ * Drop scripts/casper-bottom/45disable_guest_account: We are not using gdm
1957+ any more, and lightdm implements that differently.
1958+ * Drop scripts/casper-bottom/47une_ubiquity, UNE/netbook-launcher are
1959+ history.
1960+ * Add scripts/casper-bottom/26disable_user_menu: Disable the user indicator
1961+ menu. (LP: #834137)
1962+
1963+ -- Martin Pitt <martin.pitt@ubuntu.com> Wed, 07 Sep 2011 12:33:57 +0200
1964+
1965+casper (1.282) oneiric; urgency=low
1966+
1967+ * bin/casper-a11y-enable: Fix typo/syntax error in the set_session function
1968+
1969+ -- Luke Yelavich <themuso@ubuntu.com> Wed, 07 Sep 2011 15:20:05 +1000
1970+
1971+casper (1.281) oneiric; urgency=low
1972+
1973+ * bin/casper-a11y-enable:
1974+ - Change all remaining references of gdm to lightdm, particularly in the
1975+ usage help text, and the username of the login manager
1976+ - Set the default login session to ubuntu-2d for screen reader and braille
1977+ profiles
1978+
1979+ -- Luke Yelavich <themuso@ubuntu.com> Mon, 05 Sep 2011 15:02:31 +1000
1980+
1981+casper (1.280) oneiric; urgency=low
1982+
1983+ * Don't fail to set up autologin on a commented out autologin-user line
1984+ in lightdm custom conf. (LP: #836727)
1985+
1986+ -- Mario Limonciello <Mario_Limonciello@Dell.com> Mon, 29 Aug 2011 09:16:00 -0500
1987+
1988+casper (1.279) oneiric; urgency=low
1989+
1990+ * hooks/casper: pull in overlayfs kernel module to allow use of overlayfs
1991+ as the union mount during install.
1992+
1993+ -- Andy Whitcroft <apw@canonical.com> Fri, 19 Aug 2011 13:03:27 +0100
1994+
1995+casper (1.278) oneiric; urgency=low
1996+
1997+ * scripts/casper-bottom/15autologin:
1998+ - handling lightdm.conf in the case we already have a configuration file (to
1999+ avoid overwriting it on the cd if we don't have the default gtk greeter
2000+ installed if greeter not specified). Flavors should now use
2001+ set-lightdm-defaults to set the default session and greeter, even if
2002+ this still works with current alternatives method.
2003+
2004+ -- Didier Roche <didrocks@ubuntu.com> Thu, 11 Aug 2011 09:05:43 +0200
2005+
2006+casper (1.277) oneiric; urgency=low
2007+
2008+ * Add an extra command-line argument to casper-a11y-helper which will
2009+ create a startup script that will be executed either on first boot after
2010+ install, or once we switch out of the initramfs to boot the live
2011+ session. This is needed to work around gsettings not working when
2012+ chrooting to the target environment with no dbus running.
2013+ * Add extra checks to the ubiquity accessibility target-config hook to
2014+ determine whether accessibility was enabled during the running of
2015+ ubiquity, and act accordingly.
2016+ * Call the casper a11y helper script with the newly added -script argument
2017+ as per above.
2018+ * Determine whether we are root by checking the $HOME variable.
2019+ * Do not call the a11y profile script in debug mode
2020+
2021+ -- Luke Yelavich <themuso@ubuntu.com> Fri, 05 Aug 2011 15:22:27 +1000
2022+
2023+casper (1.276) oneiric; urgency=low
2024+
2025+ * If lightdm.conf exists, remove it first to avoid issues with symlinks.
2026+
2027+ -- Stéphane Graber <stgraber@ubuntu.com> Thu, 04 Aug 2011 12:26:08 -0400
2028+
2029+casper (1.275) oneiric; urgency=low
2030+
2031+ * Update 15autologin to overwrite any existing lightdm configuration.
2032+ This should fix lightdm autologin for everyone.
2033+ Any custom lightdm configuration won't apply to the live environment.
2034+
2035+ -- Stéphane Graber <stgraber@ubuntu.com> Wed, 03 Aug 2011 10:10:48 -0400
2036+
2037+casper (1.274) oneiric; urgency=low
2038+
2039+ * Remove log_end_message call (LP: #820284).
2040+
2041+ -- Evan Dandrea <ev@ubuntu.com> Wed, 03 Aug 2011 12:01:57 +0100
2042+
2043+casper (1.273) oneiric; urgency=low
2044+
2045+ [ Mario Limonciello ]
2046+ * scripts/casper: Add support for SAS controllers now that 575297 is fixed.
2047+ (LP: #819564)
2048+
2049+ [ Stéphane Graber ]
2050+ * lightdm no longer ships with /etc/lightdm/lightdm.conf in its package.
2051+ Updating 15autologin casper hook to create one when missing. (LP: #819609)
2052+
2053+ -- Stéphane Graber <stgraber@ubuntu.com> Tue, 02 Aug 2011 17:47:10 -0400
2054+
2055+casper (1.272) oneiric; urgency=low
2056+
2057+ [ Andy Whitcroft ]
2058+ * scripts/casper: add support for overlayfs for union mounts of the liveCD
2059+
2060+ [ Luke Yelavich ]
2061+ * Port the rest of the accessibility profile settings to gsettings, except
2062+ where gconf settings are required, eg firefox and gksu
2063+ * bin/casper-a11y-enable: Extract the username from the $HOME environment
2064+ variable, as $USER is not set when ubiquity calls the script, even with
2065+ all privileges dropped
2066+
2067+ -- Luke Yelavich <themuso@ubuntu.com> Wed, 27 Jul 2011 15:20:11 +1000
2068+
2069+casper (1.271) oneiric; urgency=low
2070+
2071+ * bin/casper-a11y-enable:
2072+ - Use -x when enabling debug mode
2073+ - Adjust some variable quoting when checking for package versions
2074+ - Do not break out of the command-line checking loop at all, let it run its
2075+ course until there are no command-line values left to parse
2076+
2077+ -- Luke Yelavich <themuso@ubuntu.com> Fri, 01 Jul 2011 11:47:31 +0100
2078+
2079+casper (1.270) oneiric; urgency=low
2080+
2081+ * Depend on lzma for our diverted update-initramfs (LP: #790794).
2082+
2083+ -- Colin Watson <cjwatson@ubuntu.com> Thu, 30 Jun 2011 10:30:49 +0100
2084+
2085+casper (1.269) oneiric; urgency=low
2086+
2087+ [ Luke Yelavich ]
2088+ * bin/casper-a11y-helper:
2089+ - Migrate blindness and braille accessibility profiles to gsettings for
2090+ all except gksu, which still uses gconf to store settings.
2091+
2092+ [ Colin Watson ]
2093+ * Add LightDM autologin support (LP: #797669).
2094+
2095+ -- Colin Watson <cjwatson@ubuntu.com> Fri, 17 Jun 2011 12:52:44 +0100
2096+
2097+casper (1.268) oneiric; urgency=low
2098+
2099+ The big accessibility profile code refactor:
2100+ * debian/copyright: Update Canonical copyright years to include 2011
2101+ * bin/casper-a11y-helper: Create a new script that will be callable from
2102+ casper/the initramfs, ubiquity at the maybe-ubiquity screen, and ubiquity
2103+ when running through ubiquity-hooks during the installation process.
2104+ - Copy accessibility profile settings from both
2105+ scripts/casper-bottom/30accessibility and ubiquity-hooks/30accessibility
2106+ - Refactor profile settings into groups of common settings for low vision
2107+ and motor profiles, with the rest of the settings broken up into
2108+ individual methods for each profile
2109+ - Add options to allow for calling the script from within the initramfs
2110+ - Do a few more package checks to make sure the target environment has the
2111+ commands we need to set things up
2112+ * scripts/casper-bottom/30accessibility && ubiquity-hooks/30accessibility:
2113+ - Remove old profile settings and support code, and make use of the new
2114+ a11y helper script
2115+ - Call the helper with debugging enabled for now, to help with testing
2116+ to make sure the new helper is executing properly
2117+ * debian/casper.install: Add casper-a11y-helper
2118+
2119+ -- Luke Yelavich <themuso@ubuntu.com> Wed, 08 Jun 2011 15:35:39 +1000
2120+
2121+casper (1.267) oneiric; urgency=low
2122+
2123+ * scripts/casper-bottom/32disable_hibernation: Drop obsolete
2124+ gnome-power-manager and kde-profile configuration, and just globally
2125+ disable hibernation via policykit. (LP: #610351)
2126+
2127+ -- Martin Pitt <martin.pitt@ubuntu.com> Wed, 08 Jun 2011 07:25:43 +0200
2128+
2129+casper (1.266) oneiric; urgency=low
2130+
2131+ * Disable release-upgrade prompts in the live session (LP: #777759).
2132+
2133+ -- Colin Watson <cjwatson@ubuntu.com> Thu, 05 May 2011 12:28:33 +0100
2134+
2135+casper (1.265) natty; urgency=low
2136+
2137+ * scripts/casper-bottom/30accessibility && ubiquity-hooks/30accessibility:
2138+ - Use gsettings to adjust yelp caret navigation, as properly fixed in
2139+ yelp 3.0.1
2140+ * ubiquity-hooks/30accessibility: Fix the gset function to set settings for
2141+ the target username, and not the username of the live user
2142+
2143+ -- Luke Yelavich <themuso@ubuntu.com> Mon, 11 Apr 2011 16:47:46 +1000
2144+
2145+casper (1.264) natty; urgency=low
2146+
2147+ * scripts/casper-bottom/30accessibility && ubiquity-hooks/30accessibility:
2148+ - Enable yelp carrot navigation by default in the moderate visual
2149+ impairment, blindness, and Braille profiles, thanks to Attila Hammer
2150+ for the patch (LP: #752503)
2151+
2152+ -- Luke Yelavich <themuso@ubuntu.com> Thu, 07 Apr 2011 10:17:52 +1000
2153+
2154+casper (1.263) natty; urgency=low
2155+
2156+ [ Evan Dandrea ]
2157+ * Suppress Log Out item in the live session (LP: #750140).
2158+
2159+ [ Martin Pitt ]
2160+ * scripts/casper-helpers, find_cow_device(): Do not ever probe floppy
2161+ devices. There are lots of computers which still have a floppy controller
2162+ (and thus a /dev/fd0), but no actual floppy. Trying to send anything to
2163+ /dev/fd0 will result in very long timeouts. Here this causes booting the
2164+ live CD to take more than 30 minutes. (See also LP #539515 for the
2165+ corresponding bug in udev/udisks). (LP: #739774)
2166+
2167+ -- Martin Pitt <martin.pitt@ubuntu.com> Mon, 04 Apr 2011 16:12:34 +0200
2168+
2169+casper (1.262) natty; urgency=low
2170+
2171+ * scripts/casper-bottom/30accessibility:
2172+ - Don't blindly assume that there are no orca config files/directories in
2173+ the created user's home directory. A derivative may have placed something
2174+ in /etc/skel as part of the live filesystem, and we shouldn't be
2175+ clobbering it, thanks to Attila Hammer for the pointer (LP: #744227)
2176+
2177+ -- Luke Yelavich <themuso@ubuntu.com> Mon, 04 Apr 2011 17:32:40 +1000
2178+
2179+casper (1.261) natty; urgency=low
2180+
2181+ * scripts/casper-bottom/30accessibility && ubiquity-hooks/30accessibility:
2182+ - Also use classic GNOME for the "motor difficulties, pointing devices"
2183+ profile, due to issues with on-screen keyboards and unity search
2184+
2185+ -- Luke Yelavich <themuso@ubuntu.com> Mon, 04 Apr 2011 16:15:59 +1000
2186+
2187+casper (1.260) natty; urgency=low
2188+
2189+ [ Colin Watson ]
2190+ * Force apt-cdrom's mount point to /cdrom (LP: #723357). I've left the
2191+ /media/cdrom symlink introduced in 1.259 in place anyway, as it's
2192+ harmless on the live CD and may save some effort elsewhere.
2193+
2194+ [ Luke Yelavich ]
2195+ * scripts/casper-bottom/30accessibility && ubiquity-hooks/30accessibility:
2196+ - Set the default session to classic GNOME for moderate visual
2197+ impairement, blindness, and braille accessibility profiles (LP: #734659)
2198+ - Fix a few dangling references to user-settings.py (LP: #744214)
2199+ - Don't set /desktop/gnome/accessibility/keyboard/enable for vision
2200+ related profiles (LP: #711131)
2201+
2202+ -- Luke Yelavich <themuso@ubuntu.com> Fri, 01 Apr 2011 16:13:07 +1100
2203+
2204+casper (1.259) natty; urgency=low
2205+
2206+ * scripts/casper-bottom/05mountpoints: Create a /media/cdrom -> /cdrom
2207+ symlink, to work around apt's changed default mount point for Alpha-3.
2208+ (LP: #727783)
2209+
2210+ -- Martin Pitt <martin.pitt@ubuntu.com> Thu, 03 Mar 2011 11:52:38 +0100
2211+
2212+casper (1.258) natty; urgency=low
2213+
2214+ * scripts/casper-bottom/30accessibility && ubiquity-hooks/30accessibility:
2215+ - Remove code that removes applets from the panel. Indicators are the
2216+ way forward, and we have unity, which works differently.
2217+ - Write orca configuration in json format
2218+ - Set some settings in gsettings parallel to gconf, next cycle there
2219+ will be a full migration to gsettings.
2220+ - Do not change the default window manager setting, this will be done
2221+ according to what is detected with unity/compiz et al.
2222+
2223+ -- Luke Yelavich <themuso@ubuntu.com> Wed, 23 Feb 2011 15:18:23 +1100
2224+
2225+casper (1.257) natty; urgency=low
2226+
2227+ * Handle $cow_backing already being mounted elsewhere (LP: #683260).
2228+
2229+ -- Evan Dandrea <ev@ubuntu.com> Fri, 11 Feb 2011 16:41:11 +0000
2230+
2231+casper (1.256) natty; urgency=low
2232+
2233+ * Add scripts/casper-bottom/49kubuntu_mobile_session to run Kubuntu
2234+ mobile session
2235+
2236+ -- Jonathan Riddell <jriddell@ubuntu.com> Thu, 10 Feb 2011 17:42:34 +0000
2237+
2238+casper (1.255) natty; urgency=low
2239+
2240+ [ Evan Dandrea ]
2241+ * Don't disable the free space notifier if using persistent storage.
2242+
2243+ [ Daniel Manrique ]
2244+ * scripts/casper-bottom/23networking: Strip quotes from DNSDOMAIN as
2245+ returned by ipconfig, and sanitize the domain entry to ensure the
2246+ generated /etc/resolv.conf is formatted correctly (LP: #709364).
2247+
2248+ -- Colin Watson <cjwatson@ubuntu.com> Tue, 01 Feb 2011 11:05:13 +0000
2249+
2250+casper (1.254) natty; urgency=low
2251+
2252+ * More fixes to the USB update-initramfs shim (LP: #591207):
2253+ - Make the shim a proper executable in
2254+ /usr/share/casper/casper-update-initramfs and symlink to it if
2255+ necessary at boot time, so that new versions of this shim are
2256+ automatically installed when casper is upgraded.
2257+ - $bootdir/initrd.img may exist when $bootdir/vmlinuz doesn't; for
2258+ example, if we're running off a fresh live USB stick and the kernel
2259+ hasn't yet been upgraded.
2260+
2261+ -- Colin Watson <cjwatson@ubuntu.com> Thu, 20 Jan 2011 14:18:59 +0000
2262+
2263+casper (1.253) natty; urgency=low
2264+
2265+ * Don't try to process the initramfs and kernel if the real update-
2266+ initramfs hasn't generated anything (LP: #557023).
2267+
2268+ -- Evan Dandrea <ev@ubuntu.com> Wed, 05 Jan 2011 12:07:47 +0000
2269+
2270+casper (1.252) natty; urgency=low
2271+
2272+ * Cope with forthcoming console-setup changes: handle
2273+ /etc/default/keyboard if present, and in that case preseed
2274+ keyboard-configuration/* templates.
2275+
2276+ -- Colin Watson <cjwatson@ubuntu.com> Tue, 21 Dec 2010 16:44:54 +0000
2277+
2278+casper (1.251) natty; urgency=low
2279+
2280+ * scripts/casper-bottom/44pk_allow_ubuntu: Tweak the default PolicyKit
2281+ policy to avoid dropping wireless connections when a user switches to
2282+ another VT (LP: #656757)
2283+
2284+ -- Mathieu Trudel-Lapierre <mathieu-tl@ubuntu.com> Sat, 04 Dec 2010 13:11:23 +0000
2285+
2286+casper (1.250) natty; urgency=low
2287+
2288+ * Use LDLIBS rather than LDFLAGS for 'pkg-config --libs ply-boot-client',
2289+ fixing link line ordering.
2290+
2291+ -- Colin Watson <cjwatson@ubuntu.com> Mon, 29 Nov 2010 13:28:17 +0000
2292+
2293+casper (1.249) natty; urgency=low
2294+
2295+ [ arky ]
2296+ * Add universal access preferences taskbar icon in all accessibility
2297+ profiles (LP: #621561).
2298+
2299+ [ Serge Hallyn ]
2300+ * change scripts/casper-helpers:try_mount() to not panic when regular
2301+ mounts fail. Instead, return an error code so the caller can decide.
2302+ (LP: #624632)
2303+
2304+ [ Evan Broder ]
2305+ * scripts/casper: Check for uuid= command line parameter in addition to
2306+ /conf/uuid.conf file in initrd. (LP: #671786)
2307+
2308+ [ Colin Watson ]
2309+ * Document new uuid= option in casper(7).
2310+
2311+ -- Colin Watson <cjwatson@ubuntu.com> Mon, 29 Nov 2010 12:49:36 +0000
2312+
2313+casper (1.248) maverick; urgency=low
2314+
2315+ * ubiquity-hooks/30accessibility: Create .local/share subdirectory structure
2316+ before copying files. Also copy orca files to ~/.local/share, instead
2317+ ~/. Thanks to Attila Hammer for the patch. (LP: #650846)
2318+
2319+ -- Luke Yelavich <themuso@ubuntu.com> Tue, 05 Oct 2010 15:35:35 +1100
2320+
2321+casper (1.247) maverick; urgency=low
2322+
2323+ * Check for the existance of a kubuntu-default-settings directory before
2324+ running scripts/casper-bottom/48kubuntu_disable_restart_notifications
2325+
2326+ -- Jonathan Thomas <echidnaman@kubuntu.org> Mon, 04 Oct 2010 17:43:21 -0400
2327+
2328+casper (1.246) maverick; urgency=low
2329+
2330+ * Added scripts/casper-bottom/07remove_oem_config
2331+ - Added new script to remove oem-config if installed on the image on ARM,
2332+ as it should never be installed on a non-preinstalled image. This is
2333+ necessary because we can't exclude oem-config on the seed on a
2334+ per-subarchitecture basis
2335+ * scripts/casper/47une_ubiquity
2336+ - Cause gconf changes to be made to both the 2D & 3D UNE launchers so
2337+ ubiquity properly shows up in favorites regardless of which launcher is
2338+ used (LP: #643791)
2339+
2340+ -- Michael Casadevall <mcasadevall@ubuntu.com> Mon, 27 Sep 2010 17:52:50 -0400
2341+
2342+casper (1.245) maverick; urgency=low
2343+
2344+ * Add scripts/casper-bottom/49disable_kubuntu_restart_notify for a more
2345+ surgical solution at disabling restart notifications on the Live CD
2346+ * Don't remove the notificationhelper.desktop file in 34disable_kde_services
2347+
2348+ -- Jonathan Thomas <echidnaman@kubuntu.org> Tue, 28 Sep 2010 19:20:26 -0400
2349+
2350+casper (1.244) maverick; urgency=low
2351+
2352+ * scripts/casper-bottom/30accessibility && ubiquity-hooks/30accessibility:
2353+ - Use orca's new settings location in ~/.local/share, as orca is now
2354+ more XDG compliant
2355+
2356+ -- Luke Yelavich <themuso@ubuntu.com> Thu, 16 Sep 2010 09:38:21 +1000
2357+
2358+casper (1.243) maverick; urgency=low
2359+
2360+ * Backport from live-initramfs 1.154.6-1:
2361+ - Adding patch from Thierry Walrant <debian.tgc@walrant.net> to allow
2362+ setting a path for the persistence files through persistent-path boot
2363+ parameter (Closes: #512661).
2364+ * Follow symlinks when checking for dynamically linked files at reboot.
2365+
2366+ -- Colin Watson <cjwatson@ubuntu.com> Tue, 07 Sep 2010 10:53:32 +0100
2367+
2368+casper (1.242) maverick; urgency=low
2369+
2370+ * Update scripts/casper-bottom/34disable_kde_services to stop some new
2371+ akonadi services
2372+
2373+ -- Jonathan Riddell <jriddell@ubuntu.com> Mon, 06 Sep 2010 14:20:54 +0100
2374+
2375+casper (1.241) maverick; urgency=low
2376+
2377+ [ Mathieu Trudel-Lapierre ]
2378+ * Use configure_networking at do_netmount; it's at least more resilient
2379+ than a simple ipconfig call since it retries, and it properly parses
2380+ BOOTIF to know which devices to configure. (LP: #602273)
2381+
2382+ [ Colin Watson ]
2383+ * Parse the machine-readable file written out by ipconfig rather than
2384+ trying to parse its human-readable output.
2385+
2386+ -- Colin Watson <cjwatson@ubuntu.com> Fri, 20 Aug 2010 13:37:56 +0100
2387+
2388+casper (1.240) maverick; urgency=high
2389+
2390+ * scripts/casper
2391+ - Added platform-sata_mv to is_nice_device() to allow Marvell
2392+ Dove A0 and AVD1 to properly boot live media (LP: #618489)
2393+
2394+ -- Michael Casadevall <mcasadevall@ubuntu.com> Mon, 16 Aug 2010 19:36:56 +0800
2395+
2396+casper (1.239) maverick; urgency=low
2397+
2398+ * scripts/casper-bottom/30accessibility && ubiquity-hooks/30accessibility:
2399+ - Instead of mangling the main sudoers file, create a new file in
2400+ /etc/sudoers.d and set permissions appropriately
2401+
2402+ -- Luke Yelavich <themuso@ubuntu.com> Wed, 11 Aug 2010 13:46:03 +1000
2403+
2404+casper (1.238) maverick; urgency=low
2405+
2406+ [ Alex Chiang ]
2407+ * Disable ureadahead-other job as well as ureadahead (LP: #605695).
2408+
2409+ -- Colin Watson <cjwatson@ubuntu.com> Thu, 15 Jul 2010 11:49:36 +0100
2410+
2411+casper (1.237) maverick; urgency=low
2412+
2413+ [ Colin Watson ]
2414+ * Add btrfs support.
2415+ * Make ip=* command-line parsing more precise (thanks, Bill Nickless;
2416+ LP: #586553).
2417+ * Make the USB update-initramfs shim cope with vmlinuz and initrd.img
2418+ being in /boot rather than / (LP: #591207).
2419+ * Depend on file for /etc/init.d/casper (thanks, Alon Swartz;
2420+ LP: #591213).
2421+ * Conflict with live-initramfs, as they overlap and people can pick one or
2422+ the other (LP: #453476).
2423+
2424+ [ Martin Pitt ]
2425+ * debian/casper.init: Change shutdown splash message to refer to
2426+ "installation media" instead of "disc"; a lot of installs happen
2427+ from USB sticks these days. Thanks to Debbie Beliveau for the idea.
2428+
2429+ -- Colin Watson <cjwatson@ubuntu.com> Mon, 28 Jun 2010 16:53:17 +0100
2430+
2431+casper (1.236) lucid; urgency=low
2432+
2433+ * Check for LTS in the release name (LP: #558488).
2434+
2435+ -- Evan Dandrea <evand@ubuntu.com> Wed, 21 Apr 2010 11:12:32 +0100
2436+
2437+casper (1.235) lucid; urgency=low
2438+
2439+ * Unbreak early command from previous commit.
2440+
2441+ -- Mario Limonciello <Mario_Limonciello@Dell.com> Thu, 15 Apr 2010 02:54:15 -0500
2442+
2443+casper (1.234) lucid; urgency=low
2444+
2445+ * Only bring the network up while running preseed/early_command if
2446+ preseed/allow-network=true.
2447+
2448+ -- Colin Watson <cjwatson@ubuntu.com> Wed, 14 Apr 2010 15:56:40 +0100
2449+
2450+casper (1.233) lucid; urgency=low
2451+
2452+ * Bring the network up while running preseed/early_command.
2453+ * Fix use of debconf passthrough frontend; DEBCONF_READFD and
2454+ DEBCONF_WRITEFD were backwards, and DEBIAN_HAS_FRONTEND and
2455+ DEBCONF_REDIR needed to be unset or else confmodule scripts would end up
2456+ trying to talk to closed file descriptors.
2457+ * Run debconf-communicate with a read-only template database and separate
2458+ config databases, and copy any changed values back to the master
2459+ databases at the end. This allows us to use the noninteractive frontend
2460+ rather than passthrough when running apt-get in preseed/early_command or
2461+ dpkg to install driver updates, thereby ensuring that the template
2462+ database is properly initialised (LP: #557011).
2463+
2464+ -- Colin Watson <cjwatson@ubuntu.com> Mon, 12 Apr 2010 23:41:09 +0100
2465+
2466+casper (1.232) lucid; urgency=low
2467+
2468+ * bump compcache size to 50% on live images for machines with less than
2469+ 512MiB. This makes sure we don't hit OOM errors on systems with only
2470+ 256MiB of RAM.
2471+
2472+ -- Oliver Grawert <ogra@ubuntu.com> Mon, 12 Apr 2010 08:10:06 +0200
2473+
2474+casper (1.231) lucid; urgency=low
2475+
2476+ [ Jonathan Riddell ]
2477+ * Remove 37kubuntu_netbook_installer_link, now done with a patch in
2478+ kdebase-workspace
2479+
2480+ [ Colin Watson ]
2481+ * If copying live media to RAM or disk, explicitly copy .disk, since *
2482+ won't expand to include it (LP: #526305).
2483+ * Cache /bin/plymouth and /sbin/usplash_write before ejecting the CD, in
2484+ the hope that that helps with I/O errors on reboot (see LP #539027).
2485+
2486+ [ Luke Yelavich ]
2487+ * ubiquity-hooks/30accessibility: Copy the orca settings directory to the
2488+ gdm home directory, to allow for preferred orca settings to be used in
2489+ gdm (LP: #551515).
2490+
2491+ -- Luke Yelavich <themuso@ubuntu.com> Fri, 09 Apr 2010 14:00:51 +1000
2492+
2493+casper (1.230) lucid; urgency=low
2494+
2495+ * Don't save the hardware clock on live CD reboot; we used to do this in
2496+ the sysvinit world, but it regressed when we switched to Upstart
2497+ (thanks, Norm Pierce; LP: #436535).
2498+ * When running update-initramfs on writable media, update initrd.lz rather
2499+ than initrd.gz if it's present, and make the update process a bit safer
2500+ while we're there (LP: #489736).
2501+ * Handle toram and todisk=DEVICE options on command line (LP: #526305).
2502+ * Policy version 3.8.4: no changes required.
2503+ * Convert to source format 3.0 (native).
2504+
2505+ -- Colin Watson <cjwatson@ubuntu.com> Tue, 30 Mar 2010 11:41:24 +0100
2506+
2507+casper (1.229) lucid; urgency=low
2508+
2509+ [ Jonathan Riddell ]
2510+ * Update scripts/casper-bottom/34disable_kde_services for lucid
2511+
2512+ [ Evan Dandrea ]
2513+ * Don't let apt try to auto-detect the CD-ROM device using udev. We
2514+ already know what it is, and using udev to find it again wont work
2515+ for USB disks.
2516+
2517+ -- Evan Dandrea <evand@ubuntu.com> Tue, 23 Mar 2010 11:42:00 +0000
2518+
2519+casper (1.228) lucid; urgency=low
2520+
2521+ * Update for the new libplymouth2.
2522+
2523+ -- Steve Langasek <steve.langasek@ubuntu.com> Fri, 12 Mar 2010 18:37:02 -0800
2524+
2525+casper (1.227) lucid; urgency=low
2526+
2527+ * casper-md5check: port from usplash to plymouth. LP: #500198
2528+ * fix up our reliance on usplash, /dev/console elsewhere. LP: #506418.
2529+
2530+ -- Steve Langasek <steve.langasek@ubuntu.com> Fri, 12 Mar 2010 01:12:28 -0800
2531+
2532+casper (1.226) lucid; urgency=low
2533+
2534+ [ Colin Watson ]
2535+ * Stop using removed nfsro option for NFS/unionfs (thanks, Bernhard
2536+ Seibold; LP: #460781).
2537+
2538+ [ Jonathan Riddell ]
2539+ * Remove scripts/casper-bottom/48enable_kubuntu_netbook and ubiquity-
2540+ hooks/48enable_kubuntu_netbook now enabled in kubuntu-netbook-
2541+ default-settings
2542+
2543+ -- Jonathan Riddell <jriddell@ubuntu.com> Wed, 10 Mar 2010 22:23:04 +0000
2544+
2545+casper (1.225) lucid; urgency=low
2546+
2547+ * Add ubiquity-hooks/49kubuntu_gnome_icon_cache to recreate the Gnome
2548+ icon cache on Kubuntu CDs, removed by livecd-rootfs
2549+
2550+ -- Jonathan Riddell <jriddell@ubuntu.com> Mon, 08 Mar 2010 11:47:01 +0000
2551+
2552+casper (1.224) lucid; urgency=low
2553+
2554+ * Remove ubiquity-hooks/35copy_wallpaper_cache as now implement it in
2555+ ubiquity itself (LP: #530024)
2556+
2557+ -- Didier Roche <didrocks@ubuntu.com> Mon, 01 Mar 2010 19:41:45 +0100
2558+
2559+casper (1.223) lucid; urgency=low
2560+
2561+ * Bind-mount /dev, /proc, and /sys into /root while running apt-cdrom.
2562+ * Copy /lib/udev/rules.d/60-cdrom_id.rules into the initramfs to go with
2563+ /lib/udev/cdrom_id, so that apt-cdrom will be able to find ID_CDROM=1
2564+ entries when we run it. This should stop update-notifier from
2565+ repeatedly popping up during the live session.
2566+
2567+ -- Colin Watson <cjwatson@ubuntu.com> Tue, 23 Feb 2010 01:35:30 +0000
2568+
2569+casper (1.222) lucid; urgency=low
2570+
2571+ * scripts/casper-bottom/47une_ubiquity:
2572+ - get back ubiquity favorite icon in UNE live (LP: #524381)
2573+ - rename the script from 47unr_ubiquity to 47une_ubiquity as well
2574+ as "UNR" mention
2575+
2576+ -- Didier Roche <didrocks@ubuntu.com> Mon, 22 Feb 2010 14:01:25 +0100
2577+
2578+casper (1.221) lucid; urgency=low
2579+
2580+ * Remove the rest of the mythbuntu delta from 10adduser. It will be
2581+ maintained in the mythbuntu-live-autostart package instead so that
2582+ users from ~mythbuntu-dev can administer it.
2583+
2584+ -- Mario Limonciello <superm1@ubuntu.com> Sun, 21 Feb 2010 20:22:00 -0600
2585+
2586+casper (1.220) lucid; urgency=low
2587+
2588+ * scripts/casper: calculate memory without "head" utility, thanks to
2589+ Petar Bogdanovic (LP: #25496).
2590+
2591+ -- Kees Cook <kees@ubuntu.com> Fri, 19 Feb 2010 14:04:18 -0800
2592+
2593+casper (1.219) lucid; urgency=low
2594+
2595+ [ Mario Limonciello ]
2596+ * Disable casper-reconfigure from 22gnome_panel_data. It doesn't (appear) to
2597+ serve a functional purpose as the postinst does nothing different for laptops.
2598+
2599+ [ Didier Roche ]
2600+ * add 35copy_wallpaper_cache to copy the wallpaper cache created at boot time
2601+ to the main user's directory. First boot will take it into account in
2602+ ureadahead profiling
2603+
2604+ -- Didier Roche <didrocks@ubuntu.com> Wed, 17 Feb 2010 19:14:53 +0100
2605+
2606+casper (1.218) lucid; urgency=low
2607+
2608+ * Allow dpkg and apt-get to be installed from within commands that operate
2609+ in the chroot via early_command or driver updates. (LP: #521218)
2610+
2611+ -- Mario Limonciello <Mario_Limonciello@Dell.com> Tue, 16 Feb 2010 13:38:48 -0600
2612+
2613+casper (1.217) lucid; urgency=low
2614+
2615+ [ Luke Yelavich ]
2616+ * ubiquity-hooks/30accessibility: Enable accessible login for the blindness
2617+ and braile accessibility profiles.
2618+
2619+ [ Colin Watson ]
2620+ * Use egrep rather than 'grep -E' (LP: #512386).
2621+
2622+ [ Julien Lavergne ]
2623+ * 15autologin: Add support for LXDM autologin (LP: #511976).
2624+
2625+ [ Evan Dandrea ]
2626+ * Properly shut down debconf-communicate so that its database gets
2627+ written (LP: #518272).
2628+
2629+ -- Evan Dandrea <evand@ubuntu.com> Thu, 11 Feb 2010 08:25:53 +0000
2630+
2631+casper (1.216) lucid; urgency=low
2632+
2633+ [ Luke Yelavich ]
2634+ * scripts/casper-bottom/30accessibility && ubiquity-hooks/30accessibility:
2635+ - Remove code to disable pulseaudio, as it is no longer needed, and
2636+ the supporting code in the pulseaudio package was removed a long time
2637+ ago.
2638+ - Set the default empathy theme to classic for blindness and braille
2639+ accessibility profiles.
2640+
2641+ [ Jamie Bennett ]
2642+ * Speed up work around debconf-communicate. Replace several calls to
2643+ debconf-communicate with one persistent invocation followed by
2644+ confmodule calls.
2645+ * Disable guest account by rm'ing rather than waiting for dpkg to
2646+ remove it.
2647+
2648+ -- Colin Watson <cjwatson@ubuntu.com> Wed, 03 Feb 2010 16:41:57 -0800
2649+
2650+casper (1.215) lucid; urgency=low
2651
2652 [ Mario Limonciello ]
2653 * Support multiple preseed file/urlarguments on the kernel commandline
2654@@ -18,6 +1278,46 @@
2655
2656 -- Jonathan Riddell <jriddell@ubuntu.com> Wed, 27 Jan 2010 13:55:42 +0000
2657
2658+casper (1.214) lucid; urgency=low
2659+
2660+ * 15autologin: simplify the code with escape character evaluation
2661+ (LP: #505140)
2662+
2663+ -- Didier Roche <didrocks@ubuntu.com> Tue, 12 Jan 2010 08:57:05 +0100
2664+
2665+casper (1.213) lucid; urgency=low
2666+
2667+ * printf does not evaluate escape characters in the argument string.
2668+
2669+ -- Evan Dandrea <evand@ubuntu.com> Mon, 11 Jan 2010 11:02:12 +0000
2670+
2671+casper (1.212) lucid; urgency=low
2672+
2673+ [ Martin Pitt ]
2674+ * debian/control: Add ${misc:Depends}.
2675+ * debian/control: Bump Standards-Version to 3.8.3 (no changes necessary).
2676+
2677+ [ Colin Watson ]
2678+ * 15autologin: Use printf rather than echo -e, since its behaviour is
2679+ portable across shells.
2680+
2681+ [ Evan Dandrea ]
2682+ * Remove scripts/casper-bottom/42disable_apparmor. Apparmor
2683+ 2.3.1+bzr1312-0ubuntu3 and ifupdown 0.6.8ubuntu26 now no-op when
2684+ they detect the live CD environment.
2685+
2686+ -- Evan Dandrea <evand@ubuntu.com> Fri, 08 Jan 2010 20:31:26 +0000
2687+
2688+casper (1.211) lucid; urgency=low
2689+
2690+ * Readd scripts/casper-bottom/15autologin changes: derivatives have
2691+ now a custom.conf file and still need autologin in live version.
2692+ Merge with my previous fix proposed for sponsoring one week ago:
2693+ use echo -e to enable \n interpretation (/bin/sh is busybox ash
2694+ which behavior differs from vanilla ash interpretor) (LP: #500786)
2695+
2696+ -- Didier Roche <didrocks@ubuntu.com> Tue, 05 Jan 2010 20:05:26 +0100
2697+
2698 casper (1.210) lucid; urgency=low
2699
2700 [ Scott James Remnant ]
2701
2702=== modified file 'debian/control'
2703--- debian/control 2010-01-20 23:35:11 +0000
2704+++ debian/control 2015-12-13 00:48:04 +0000
2705@@ -1,27 +1,27 @@
2706 Source: casper
2707 Section: misc
2708 Priority: optional
2709-Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@lists.ubuntu.com>
2710-Build-Depends: debhelper (>= 7.0.50~), lsb-release
2711-Standards-Version: 3.6.1
2712-Vcs-Bzr: http://bazaar.launchpad.net/~ubuntu-core-dev/casper/trunk/
2713+Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
2714+Build-Depends: debhelper (>= 7.0.50~), lsb-release, libplymouth-dev (>= 0.8.0~-13), pkg-config
2715+Standards-Version: 3.9.3
2716+Vcs-Bzr: https://code.launchpad.net/+branch/ubuntu/casper
2717
2718 Package: casper
2719 Architecture: any
2720 Section: misc
2721 Priority: extra
2722-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)
2723-Conflicts: usplash (<< 0.4-43)
2724+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, udev (>= 174), cifs-utils
2725+Conflicts: usplash (<< 0.4-43), live-initramfs
2726 Breaks: genext2fs (<< 1.4.1)
2727 Tag: admin::boot, admin::filesystem, implemented-in::shell, protocol::smb, role::plugin, scope::utility, special::completely-tagged, works-with-format::iso9660
2728 Description: Run a "live" preinstalled system from read-only media
2729
2730 Package: ubiquity-casper
2731 Architecture: all
2732-Depends: laptop-detect, sudo
2733-Conflicts: espresso-casper
2734-Replaces: espresso-casper
2735+Depends: laptop-detect, sudo, ${misc:Depends}
2736 Enhances: ubiquity
2737+Replaces: casper (<< 1.318)
2738+Breaks: casper (<< 1.318)
2739 Tag: admin::boot, admin::filesystem, implemented-in::shell, protocol::smb, role::plugin, scope::utility, special::completely-tagged, works-with-format::iso9660
2740 Description: Configuration hooks for live installer
2741 This package provides hook scripts for the Ubiquity live installer that
2742
2743=== modified file 'debian/copyright'
2744--- debian/copyright 2009-01-13 18:56:31 +0000
2745+++ debian/copyright 2015-12-13 00:48:04 +0000
2746@@ -28,10 +28,20 @@
2747 3. This notice may not be removed or altered from any source
2748 distribution.
2749
2750+License (bin/casper-set-selections):
2751+
2752+ The Debian installer preseeder is copyright 2004 by Joey Hess
2753+ <joeyh@debian.org> and others.
2754+
2755+ This program is free software; you can redistribute it and/or modify
2756+ it under the terms of the GNU General Public License as published by
2757+ the Free Software Foundation; either version 2 of the License, or
2758+ (at your option) any later version.
2759+
2760 License (everything else):
2761
2762 Copyright (C) 2006 Marco Amadori <marco.amadori@gmail.com>
2763- Copyright (C) 2005-2008 Canonical Ltd. <http://www.canonical.com/>
2764+ Copyright (C) 2005-2011 Canonical Ltd. <http://www.canonical.com/>
2765 Copyright (C) 2008 Dell Inc.
2766
2767 This program is free software; you can redistribute it and/or modify
2768
2769=== modified file 'debian/manpage/casper.7'
2770--- debian/manpage/casper.7 2009-06-02 13:57:02 +0000
2771+++ debian/manpage/casper.7 2015-12-13 00:48:04 +0000
2772@@ -51,6 +51,9 @@
2773 .B nopersistent
2774 disables the above mentioned "persistent" feature, useful if the bootloader (like syslinux) has been installed with persistent enabled.
2775 .TP
2776+.BI "persistent-path=" PATH
2777+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.
2778+.TP
2779 .B "showmounts"
2780 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.
2781 .TP
2782@@ -66,9 +69,18 @@
2783 .BI "{preseed/file|file}=" FILE
2784 A path to a file present on the rootfs could be used to preseed debconf database.
2785 .TP
2786+.B preseed/allow-network=true
2787+Bring up the network while running
2788+.BR preseed/early_command .
2789+.TP
2790 .BI "package/question=" VALUE
2791 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.
2792 .TP
2793+.BI "uuid=" UUID
2794+Check that the discovered medium matches
2795+.I UUID
2796+rather than the default UUID embedded in the initramfs.
2797+.TP
2798 .BI ignore_uuid
2799 Do not check that any UUID embedded in the initramfs matches the discovered medium.
2800 .B casper
2801
2802=== modified file 'debian/rules'
2803--- debian/rules 2009-09-09 21:43:10 +0000
2804+++ debian/rules 2015-12-13 00:48:04 +0000
2805@@ -1,6 +1,21 @@
2806 #! /usr/bin/make -f
2807+
2808+DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
2809+DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
2810+
2811 %:
2812 dh $@
2813
2814+ifneq ($(DEB_BUILD_GNU_TYPE),$(DEB_HOST_GNU_TYPE))
2815+override_dh_auto_build:
2816+ dh_auto_build -- CC=$(DEB_HOST_GNU_TYPE)-gcc PKG_CONFIG=$(DEB_HOST_GNU_TYPE)-pkg-config
2817+endif
2818+
2819 override_dh_installinit:
2820 dh_installinit -r --no-start -- start 89 0 6 .
2821+
2822+check:
2823+ # Check the syntax of any shell scripts.
2824+ set -e; for x in $$(find -type f \! -name \*.po \! -name \*.pot -print0 | xargs -0 file -i | grep "text/x-shellscript" | cut -d':' -f1); do \
2825+ sh -n $$x; \
2826+ done
2827
2828=== added directory 'debian/source'
2829=== added file 'debian/source/format'
2830--- debian/source/format 1970-01-01 00:00:00 +0000
2831+++ debian/source/format 2015-12-13 00:48:04 +0000
2832@@ -0,0 +1,1 @@
2833+3.0 (native)
2834
2835=== modified file 'debian/ubiquity-casper.install'
2836--- debian/ubiquity-casper.install 2006-04-21 11:34:56 +0000
2837+++ debian/ubiquity-casper.install 2015-12-13 00:48:04 +0000
2838@@ -1,2 +1,3 @@
2839+bin/casper-a11y-enable usr/bin
2840 bin/casper-reconfigure usr/bin
2841 ubiquity-hooks/* usr/lib/ubiquity/target-config
2842
2843=== modified file 'hooks/casper'
2844--- hooks/casper 2009-05-23 22:30:56 +0000
2845+++ hooks/casper 2015-12-13 00:48:04 +0000
2846@@ -20,6 +20,7 @@
2847
2848 manual_add_modules unionfs
2849 manual_add_modules aufs
2850+manual_add_modules overlayfs
2851
2852 # unionfs-fuse, if available
2853 if [ -x /usr/bin/unionfs-fuse ]; then
2854@@ -33,16 +34,17 @@
2855 mkdir -p ${DESTDIR}/lib/casper
2856 copy_exec /usr/share/casper/casper-reconfigure /bin
2857 copy_exec /usr/share/casper/casper-preseed /bin
2858+copy_exec /usr/share/casper/casper-set-selections /bin
2859
2860-mkdir -p ${DESTDIR}/lib/udev
2861+mkdir -p ${DESTDIR}/lib/udev/rules.d
2862+cp -p /lib/udev/rules.d/60-cdrom_id.rules ${DESTDIR}/lib/udev/rules.d/
2863 copy_exec /lib/udev/cdrom_id /lib/udev
2864-copy_exec /lib/udev/path_id /lib/udev
2865 copy_exec /usr/bin/eject /bin
2866
2867 # cifs boot
2868 if [ -x /sbin/mount.cifs ]; then
2869 copy_exec /sbin/mount.cifs /sbin
2870- for x in cifs; do
2871+ for x in cifs md4 des_generic; do
2872 manual_add_modules ${x}
2873 done
2874 fi
2875@@ -55,6 +57,7 @@
2876 manual_add_modules vfat
2877 manual_add_modules ext3
2878 manual_add_modules ext4
2879+manual_add_modules btrfs
2880 # needed for vfat. :-/
2881 manual_add_modules nls_cp437
2882 manual_add_modules nls_utf8
2883
2884=== modified file 'scripts/casper'
2885--- scripts/casper 2009-10-06 12:07:52 +0000
2886+++ scripts/casper 2015-12-13 00:48:04 +0000
2887@@ -6,6 +6,7 @@
2888
2889 mountpoint=/cdrom
2890 LIVE_MEDIA_PATH=casper
2891+[ -f /conf/uuid.conf ] && UUID="$(cat /conf/uuid.conf)"
2892
2893 root_persistence="casper-rw"
2894 home_persistence="home-rw"
2895@@ -38,24 +39,42 @@
2896 export PERSISTENT="Yes" ;;
2897 nopersistent)
2898 export PERSISTENT="" ;;
2899+ persistent-path=*)
2900+ export PERSISTENT_PATH="${x#persistent-path=}" ;;
2901 union=*)
2902 export UNIONFS="${x#union=}";;
2903- ip*)
2904+ ip=*)
2905 STATICIP=${x#ip=}
2906 if [ "${STATICIP}" = "" ]; then
2907 STATICIP="frommedia"
2908 fi
2909 export STATICIP ;;
2910+ uuid=*)
2911+ UUID=${x#uuid=} ;;
2912 ignore_uuid)
2913- IGNORE_UUID="Yes" ;;
2914+ UUID="" ;;
2915+ live-media=*)
2916+ LIVEMEDIA="${x#live-media=}"
2917+ export LIVEMEDIA
2918+ echo "export LIVEMEDIA=\"$LIVEMEDIA\"" >> /etc/casper.conf ;;
2919 live-media-path=*)
2920 LIVE_MEDIA_PATH="${x#live-media-path=}"
2921 export LIVE_MEDIA_PATH
2922 echo "export LIVE_MEDIA_PATH=\"$LIVE_MEDIA_PATH\"" >> /etc/casper.conf ;;
2923+ toram)
2924+ export TORAM="Yes" ;;
2925+ todisk=*)
2926+ export TODISK="${x#todisk=}" ;;
2927+ hostname=*)
2928+ export CMD_HOST="${x#hostname=}" ;;
2929+ userfullname=*)
2930+ export CMD_USERFULLNAME="${x#userfullname=}" ;;
2931+ username=*)
2932+ export CMD_USERNAME="${x#username=}" ;;
2933 esac
2934 done
2935 if [ "${UNIONFS}" = "" ]; then
2936- export UNIONFS="aufs"
2937+ export UNIONFS="DEFAULT"
2938 fi
2939 }
2940
2941@@ -72,15 +91,14 @@
2942 }
2943
2944 matches_uuid() {
2945- if [ "$IGNORE_UUID" ] || [ ! -e /conf/uuid.conf ]; then
2946+ if [ -z "$UUID" ]; then
2947 return 0
2948 fi
2949 path="$1"
2950- uuid="$(cat /conf/uuid.conf)"
2951 for try_uuid_file in "$path/.disk/casper-uuid"*; do
2952 [ -e "$try_uuid_file" ] || continue
2953 try_uuid="$(cat "$try_uuid_file")"
2954- if [ "$uuid" = "$try_uuid" ]; then
2955+ if [ "$UUID" = "$try_uuid" ]; then
2956 return 0
2957 fi
2958 done
2959@@ -125,7 +143,7 @@
2960
2961 is_nice_device() {
2962 sysfs_path="${1#/sys}"
2963- 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
2964+ if /sbin/udevadm info --query=all --path="${sysfs_path}" | egrep -q "DEVTYPE=disk"; then
2965 return 0
2966 fi
2967 if echo ${sysfs_path} | grep -q "^/block/dm-"; then
2968@@ -143,7 +161,7 @@
2969
2970 if [ "${copytodev}" = "ram" ]; then
2971 # copying to ram:
2972- freespace=$( expr $(awk '/MemFree/{print $2}' /proc/meminfo) + $( cat /proc/meminfo | grep Cached | head -n 1 | awk '/Cached/{print $2}' - ) )
2973+ freespace=$(awk '/^MemFree:/{f=$2} /^Cached:/{c=$2} END{print f+c}' /proc/meminfo)
2974 mount_options="-o size=${size}k"
2975 free_string="memory"
2976 fstype="tmpfs"
2977@@ -169,7 +187,10 @@
2978 mkdir "${copyto}"
2979 echo "mount -t ${fstype} ${mount_options} ${dev} ${copyto}"
2980 mount -t "${fstype}" ${mount_options} "${dev}" "${copyto}"
2981- cp -a ${copyfrom}/* ${copyto} # "cp -a" from busybox also copies hidden files
2982+ cp -a ${copyfrom}/* ${copyto}
2983+ if [ -e ${copyfrom}/.disk ]; then
2984+ cp -a ${copyfrom}/.disk ${copyto}
2985+ fi
2986 umount ${copyfrom}
2987 mount -r -o move ${copyto} ${copyfrom}
2988 rmdir ${copyto}
2989@@ -181,10 +202,11 @@
2990
2991 modprobe "${MP_QUIET}" af_packet # For DHCP
2992
2993- /sbin/udevadm trigger
2994- /sbin/udevadm settle
2995+ udevadm trigger
2996+ udevadm settle
2997
2998- ipconfig ${DEVICE} /tmp/net-${DEVICE}.conf | tee /netboot.config
2999+ configure_networking
3000+ export DEVICE
3001
3002 if [ "${NFSROOT}" = "auto" ]; then
3003 NFSROOT=${ROOTSERVER}:${ROOTPATH}
3004@@ -209,13 +231,15 @@
3005 modprobe "${MP_QUIET}" nfs
3006 if [ -z "${NFSOPTS}" ]; then
3007 NFSOPTS=""
3008+ else
3009+ NFSOPTS=",${NFSOPTS}"
3010 fi
3011
3012 [ "$quiet" != "y" ] && log_begin_msg "Trying nfsmount -o nolock -o ro ${NFSOPTS} ${NFSROOT} ${mountpoint}"
3013 # FIXME: This while loop is an ugly HACK round an nfs bug
3014 i=0
3015 while [ "$i" -lt 60 ]; do
3016- nfsmount -o nolock -o ro ${NFSOPTS} "${NFSROOT}" "${mountpoint}" && rc=0 && break
3017+ nfsmount -o nolock -o ro${NFSOPTS} "${NFSROOT}" "${mountpoint}" && rc=0 && break
3018 sleep 1
3019 i="$(($i + 1))"
3020 done
3021@@ -255,7 +279,7 @@
3022 todev=$(cat /proc/mounts | grep -s " $(base_path ${todir}) " | awk '{print $1}' )
3023 freespace=$(df -k | grep -s ${todev} | awk '{print $4}')
3024 else
3025- freespace=$( expr $(awk '/MemFree/{print $2}' /proc/meminfo) + $( cat /proc/meminfo | grep Cached | head -n 1 | awk '/Cached/{print $2}' - ))
3026+ freespace=$(awk '/^MemFree:/{f=$2} /^Cached:/{c=$2} END{print f+c}' /proc/meminfo)
3027 fi
3028
3029 tomount="/mnt/tmpsnap"
3030@@ -355,15 +379,23 @@
3031 image_directory="$1"
3032 rootmnt="$2"
3033
3034- case ${UNIONFS} in
3035- aufs|unionfs)
3036- modprobe "${MP_QUIET}" -b ${UNIONFS} || true
3037- if ! cut -f2 /proc/filesystems | grep -q "^${UNIONFS}\$" && \
3038- [ -x /bin/unionfs-fuse ]; then
3039- UNIONFS="unionfs-fuse"
3040+ if [ "${UNIONFS}" = 'DEFAULT' ]; then
3041+ for union in 'overlayfs' 'aufs' 'unionfs'
3042+ do
3043+ modprobe "${MP_QUIET}" -b ${union} || true
3044+ if cut -f2 /proc/filesystems | grep -q "^${union}\$"; then
3045+ UNIONFS="${union}"
3046+ break
3047 fi
3048- ;;
3049- esac
3050+ done
3051+ fi
3052+ if [ "${UNIONFS}" = 'DEFAULT' -a -x /bin/unionfs-fuse ]; then
3053+ UNIONFS="unionfs-fuse"
3054+ fi
3055+ # If all else fails fall back to aufs.
3056+ if [ "${UNIONFS}" = 'DEFAULT' ]; then
3057+ UNIONFS='aufs'
3058+ fi
3059
3060 # run-init can't deal with images in a subdir, but we're going to
3061 # move all of these away before it runs anyway. No, we're not,
3062@@ -375,9 +407,7 @@
3063 # Let's just mount the read-only file systems first
3064 rofsstring=""
3065 rofslist=""
3066- if [ "${NETBOOT}" = "nfs" ] ; then
3067- roopt="nfsro" # work around a bug in nfs-unionfs locking
3068- elif [ "${UNIONFS}" = "aufs" ]; then
3069+ if [ "${UNIONFS}" = "aufs" ]; then
3070 roopt="rr"
3071 elif [ "${UNIONFS}" = "unionfs-fuse" ]; then
3072 roopt="RO"
3073@@ -389,6 +419,13 @@
3074 for image_type in "ext2" "squashfs" "dir" ; do
3075 for image in "${image_directory}"/*."${image_type}"; do
3076 imagename=$(basename "${image}")
3077+
3078+ # Skip Edubuntu's extra squashfs
3079+ if [ "$imagename" = "ltsp.squashfs" ] ||
3080+ [ "$imagename" = "server.squashfs" ]; then
3081+ continue
3082+ fi
3083+
3084 if [ -d "${image}" ]; then
3085 # it is a plain directory: do nothing
3086 rofsstring="${image}=${roopt}:${rofsstring}"
3087@@ -417,7 +454,7 @@
3088 if [ -b "${cowprobe}" ]; then
3089 cowdevice=${cowprobe}
3090 cow_fstype=$(get_fstype "${cowprobe}")
3091- cow_mountopt="rw,noatime"
3092+ cow_mountopt="rw,noatime"
3093 else
3094 [ "$quiet" != "y" ] && log_warning_msg "Unable to find the persistent medium"
3095 fi
3096@@ -431,9 +468,29 @@
3097 mkdir -p /dev/.initramfs/varrun
3098 pidof unionfs-fuse >> /dev/.initramfs/varrun/sendsigs.omit || true
3099 ;;
3100- *)
3101+ aufs|unionfs)
3102 mount -t ${UNIONFS} -o noatime,dirs=/cow=rw:$rofsstring ${UNIONFS} "$rootmnt" || panic "${UNIONFS} mount failed"
3103 ;;
3104+ overlayfs)
3105+ # Mount the layers pairwise from the bottom onto rootmnt,
3106+ # for the second and later layers rootmnt forms the lower layer.
3107+ mounts=""
3108+ for mount in /cow $rofslist
3109+ do
3110+ mounts="$mount $mounts"
3111+ done
3112+ lower=""
3113+ for mount in $mounts
3114+ do
3115+ if [ "$lower" = "" ]; then
3116+ lower="$mount"
3117+ continue
3118+ fi
3119+ mount -t overlayfs -o "upperdir=$mount,lowerdir=$lower" \
3120+ "$mount" "$rootmnt"
3121+ lower="$rootmnt"
3122+ done
3123+ ;;
3124 esac
3125
3126 # Adding other custom mounts
3127@@ -516,7 +573,7 @@
3128 mount -t ${fstype} -o ro,noatime "${devname}" $mountpoint || continue
3129 [ -n "$devuid" ] && echo "$devuid" >> $tried
3130 if is_casper_path $mountpoint && \
3131- ([ "$skip_uuid_check" ] || matches_uuid $mountpoint); then
3132+ ([ "$skip_uuid_check" ] || [ "$UUID" = "$devuid" ] || matches_uuid $mountpoint); then
3133 echo $mountpoint
3134 return 0
3135 else
3136@@ -530,6 +587,20 @@
3137 return 1
3138 }
3139
3140+is_mapper() {
3141+ dev="$1"
3142+ # we don't consider control a mapper device
3143+ echo "$dev" |grep "/dev/mapper/control" >/dev/null && return 1
3144+ echo "$dev" |grep "/dev/mapper/.\+" >/dev/null && return 0
3145+ return 1
3146+}
3147+
3148+is_md() {
3149+ dev="$1"
3150+ echo "$dev" |grep "/dev/md[0-9]" >/dev/null && return 0
3151+ return 1
3152+}
3153+
3154 find_livefs() {
3155 timeout="${1}"
3156 # first look at the one specified in the command line
3157@@ -545,7 +616,7 @@
3158 fi
3159 fi
3160 # or do the scan of block devices
3161- for sysblock in $(echo /sys/block/* | tr ' ' '\n' | grep -vE "/(loop|ram|fd)"); do
3162+ for sysblock in $(echo /sys/block/* | tr ' ' '\n' | egrep -v "/(loop|ram|fd|md)"); do
3163 devname=$(sys2dev "${sysblock}")
3164 [ -e "$devname" ] || continue
3165 fstype=$(get_fstype "${devname}")
3166@@ -559,10 +630,15 @@
3167 return 0
3168 fi
3169 done
3170+ elif is_md "${devname}" || is_mapper "${devname}" ; then
3171+ if check_dev "null" "${devname}" ; then
3172+ return 0
3173+ fi
3174 elif [ "${fstype}" = "squashfs" -o \
3175 "${fstype}" = "ext4" -o \
3176 "${fstype}" = "ext3" -o \
3177- "${fstype}" = "ext2" ]; then
3178+ "${fstype}" = "ext2" -o \
3179+ "${fstype}" = "btrfs" ]; then
3180 # This is an ugly hack situation, the block device has
3181 # an image directly on it. It's hopefully
3182 # casper, so take it and run with it.
3183@@ -574,18 +650,6 @@
3184 return 1
3185 }
3186
3187-set_usplash_timeout() {
3188- if [ -x /sbin/usplash_write ]; then
3189- /sbin/usplash_write "TIMEOUT 120"
3190- fi
3191-}
3192-
3193-start_usplash_pulse() {
3194- if [ -x /sbin/usplash_write ]; then
3195- /sbin/usplash_write "PULSELOGO"
3196- fi
3197-}
3198-
3199 mountroot() {
3200 exec 6>&1
3201 exec 7>&2
3202@@ -596,17 +660,10 @@
3203
3204 parse_cmdline
3205
3206- set_usplash_timeout
3207- start_usplash_pulse
3208 [ "$quiet" != "y" ] && log_begin_msg "Running /scripts/casper-premount"
3209 run_scripts /scripts/casper-premount
3210 [ "$quiet" != "y" ] && log_end_msg
3211
3212- # Needed here too because some things (*cough* udev *cough*)
3213- # changes the timeout
3214-
3215- set_usplash_timeout
3216-
3217 if [ ! -z "${NETBOOT}" ]; then
3218 if do_netmount ; then
3219 livefs_root="${mountpoint}"
3220@@ -645,12 +702,61 @@
3221
3222 log_end_msg
3223
3224+ # Allow to override USERNAME and HOST based on media information
3225+ # make it skipable by setting FLAVOUR= in casper.conf
3226+ if [ -f /cdrom/.disk/info ] && [ -z "$FLAVOUR" ]; then
3227+ FLAVOUR="$(cut -d' ' -f1 "/cdrom/.disk/info" 2>/dev/null | tr '[A-Z]' '[a-z]')" || FLAVOUR=
3228+ if [ -n "$FLAVOUR" ]; then
3229+ HOST=$FLAVOUR
3230+ USERNAME=$FLAVOUR
3231+ export HOST USERNAME
3232+ sed -i "s,USERNAME=.*,USERNAME=\"$FLAVOUR\",g; s,HOST=.*,HOST=\"$FLAVOUR\",g" /etc/casper.conf
3233+ fi
3234+ fi
3235+
3236+ # Apply command lines override of HOST, USERNAME and USERFULLNAME
3237+ [ -n "$CMD_HOST" ] && HOST=$CMD_HOST && export HOST
3238+ [ -n "$CMD_USERNAME" ] && USERNAME=$CMD_USERNAME && export USERNAME
3239+ [ -n "$CMD_USERFULLNAME" ] && USERFULLNAME=$CMD_USERFULLNAME && export USERFULLNAME
3240+ if [ -n "$CMD_HOST" ] || [ -n "$CMD_USERNAME" ] || [ -n "$CMD_USERFULLNAME" ]; then
3241+ sed -i "s,USERNAME=.*,USERNAME=\"$USERNAME\",g; s,USERFULLNAME=.*,USERFULLNAME=\"$USERFULLNAME\",g; s,HOST=.*,HOST=\"$HOST\",g" /etc/casper.conf
3242+ fi
3243+
3244 # unionfs-fuse needs /dev to be bind-mounted for the duration of
3245 # casper-bottom; udev's init script will take care of things after that
3246 if [ "${UNIONFS}" = unionfs-fuse ]; then
3247 mount -n -o bind /dev "${rootmnt}/dev"
3248 fi
3249
3250+ # Open up two fifo's fd's for debconf-communicate to use. Speeds up
3251+ # the Casper process considerably.
3252+ log_begin_msg "Creating debconf-communicate fifo mechanism"
3253+ mkfifo /tmp/debconf-in.fifo
3254+ mkfifo /tmp/debconf-out.fifo
3255+
3256+ # Make the template database read-only, so that passthrough debconf
3257+ # instances can write to it directly; otherwise templates are only
3258+ # passed through when necessary. Use temporary config databases as
3259+ # well; we'll copy their contents back at the end.
3260+ DEBCONF_TMPDIR="$(chroot /root mktemp -dt debconf.XXXXXX)"
3261+ cp -a /root/var/cache/debconf/config.dat "/root$DEBCONF_TMPDIR/"
3262+ cp -a /root/var/cache/debconf/passwords.dat "/root$DEBCONF_TMPDIR/"
3263+ sed "s,^Filename: /var/cache/debconf/\(config\|passwords\).dat$,Filename: $DEBCONF_TMPDIR/\1.dat,; /^Name: templatedb/a\
3264+Readonly: true" /root/etc/debconf.conf >"/root$DEBCONF_TMPDIR/debconf.conf"
3265+
3266+ DEBCONF_SYSTEMRC="$DEBCONF_TMPDIR/debconf.conf" chroot /root debconf-communicate -fnoninteractive casper > /tmp/debconf-out.fifo < /tmp/debconf-in.fifo &
3267+ debconfpid="$!"
3268+
3269+ if [ ! -p /tmp/debconf-in.fifo ] || [ ! -p /tmp/debconf-out.fifo ]; then
3270+ log_warning_msg "failed to setup debconf-communicate channel"
3271+ fi
3272+ log_end_msg
3273+
3274+ # Order matters!
3275+ # These file descriptors must stay open until we're finished with
3276+ # debconf-communicate.
3277+ exec 4</tmp/debconf-out.fifo 3>/tmp/debconf-in.fifo
3278+
3279 maybe_break casper-bottom
3280 [ "$quiet" != "y" ] && log_begin_msg "Running /scripts/casper-bottom"
3281
3282@@ -661,6 +767,21 @@
3283 umount "${rootmnt}/dev"
3284 fi
3285
3286+ # Close the fd's associated with debconf-communicate.
3287+ exec 3>&- 4<&-
3288+ rm -f /tmp/debconf-in.fifo
3289+ rm -f /tmp/debconf-out.fifo
3290+ wait $debconfpid
3291+
3292+ # Copy config database changes back to the master files.
3293+ chroot /root debconf-copydb tmpdb config \
3294+ --config=Name:tmpdb --config=Driver:File \
3295+ --config="Filename:$DEBCONF_TMPDIR/config.dat"
3296+ chroot /root debconf-copydb tmpdb passwords \
3297+ --config=Name:tmpdb --config=Driver:File \
3298+ --config="Filename:$DEBCONF_TMPDIR/passwords.dat"
3299+ rm -rf "$DEBCONF_TMPDIR"
3300+
3301 exec 1>&6 6>&-
3302 exec 2>&7 7>&-
3303 kill "$tailpid"
3304
3305=== modified file 'scripts/casper-bottom/05mountpoints'
3306--- scripts/casper-bottom/05mountpoints 2010-01-05 16:54:40 +0000
3307+++ scripts/casper-bottom/05mountpoints 2015-12-13 00:48:04 +0000
3308@@ -24,4 +24,8 @@
3309 mkdir -p /root/cdrom
3310 mount -n -o move /cdrom /root/cdrom
3311
3312+# temporary hack for LP#727783
3313+mkdir -p /root/media
3314+ln -s /cdrom /root/media/cdrom
3315+
3316 log_end_msg
3317
3318=== added file 'scripts/casper-bottom/07remove_oem_config'
3319--- scripts/casper-bottom/07remove_oem_config 1970-01-01 00:00:00 +0000
3320+++ scripts/casper-bottom/07remove_oem_config 2015-12-13 00:48:04 +0000
3321@@ -0,0 +1,36 @@
3322+#!/bin/sh
3323+
3324+PREREQ=""
3325+DESCRIPTION="Removing oem-config if installed..."
3326+
3327+prereqs()
3328+{
3329+ echo "$PREREQ"
3330+}
3331+
3332+case $1 in
3333+# get pre-requisites
3334+prereqs)
3335+ prereqs
3336+ exit 0
3337+ ;;
3338+esac
3339+
3340+. /scripts/casper-functions
3341+load_confmodule
3342+
3343+# Reset oem-config/enable to false (for persistent installs)
3344+db_set oem-config/enable false
3345+
3346+# Only do this on ARM
3347+if ! uname -m | grep -q arm; then exit 0; fi
3348+
3349+log_begin_msg "$DESCRIPTION"
3350+
3351+# if oem-config is installed, we need to remove it to remove the desktop
3352+# file diversion, and to remove the OEM icons from showing up before we
3353+# install the image.
3354+
3355+chroot /root apt-get -y --purge remove oem-config </dev/null || true
3356+
3357+log_end_msg
3358
3359=== removed file 'scripts/casper-bottom/10adduser'
3360--- scripts/casper-bottom/10adduser 2010-01-05 16:54:40 +0000
3361+++ scripts/casper-bottom/10adduser 1970-01-01 00:00:00 +0000
3362@@ -1,111 +0,0 @@
3363-#!/bin/sh
3364-
3365-PREREQ=""
3366-DESCRIPTION="Adding live session user..."
3367-
3368-prereqs()
3369-{
3370- echo "$PREREQ"
3371-}
3372-
3373-case $1 in
3374-# get pre-requisites
3375-prereqs)
3376- prereqs
3377- exit 0
3378- ;;
3379-esac
3380-
3381-. /scripts/casper-functions
3382-
3383-log_begin_msg "$DESCRIPTION"
3384-
3385-# U6aMy0wojraho is just a blank password
3386-chroot /root debconf-communicate -fnoninteractive casper > /dev/null <<EOF
3387-set passwd/root-password-crypted *
3388-set passwd/user-password-crypted U6aMy0wojraho
3389-set passwd/user-fullname $USERFULLNAME
3390-set passwd/username $USERNAME
3391-set passwd/user-uid 999
3392-EOF
3393-
3394-chroot /root /usr/lib/user-setup/user-setup-apply > /dev/null
3395-
3396-# Clear out debconf database again to avoid confusing ubiquity later.
3397-chroot /root debconf-communicate -fnoninteractive casper > /dev/null <<EOF
3398-set passwd/root-password-crypted
3399-set passwd/user-password-crypted
3400-set passwd/user-fullname
3401-set passwd/username
3402-set passwd/user-uid
3403-EOF
3404-
3405-if [ -f /root/etc/sudoers ]; then
3406- if [ "${BUILD_SYSTEM}" = "Ubuntu" ]; then
3407- if grep -q '^%admin' /root/etc/sudoers; then
3408- sed -i -e '/^%admin/s/(ALL) ALL$/(ALL) NOPASSWD: ALL/' /root/etc/sudoers
3409- else
3410- echo '%admin ALL=(ALL) NOPASSWD: ALL' >> /root/etc/sudoers
3411- fi
3412- elif [ "${BUILD_SYSTEM}" = "Debian" ]; then
3413- echo "${USERNAME} ALL=(ALL) NOPASSWD: ALL" >> /root/etc/sudoers
3414- fi
3415-fi
3416-
3417-# XXX - awful hack to stop xscreensaver locking the screen (#7150)
3418-echo 'RUNNING_UNDER_GDM="yes"' >> /root/etc/environment
3419-
3420-RELEASE="$(cut -d' ' -f1-2 /root/cdrom/.disk/info 2>/dev/null)" || RELEASE=""
3421-for file in /usr/share/applications/ubiquity-gtkui.desktop /usr/share/applications/kde4/ubiquity-kdeui.desktop; do
3422- if [ -f "/root/$file" ]; then
3423- sed -i "s/RELEASE/$RELEASE/" "/root$file"
3424- chroot /root install -d -o $USERNAME -g $USERNAME /home/$USERNAME/Desktop
3425- chroot /root install -D -o $USERNAME -g $USERNAME $file /home/$USERNAME/Desktop/$(basename "$file")
3426- break
3427- fi
3428-done
3429-
3430-if [ -L /root/home/$USERNAME/Examples ]; then
3431- chroot /root install -o $USERNAME -g $USERNAME -d /home/$USERNAME/Desktop/
3432- mv /root/home/$USERNAME/Examples /root/home/$USERNAME/Desktop/
3433-fi
3434-
3435-if [ -f /root/home/$USERNAME/examples.desktop ]; then
3436- chroot /root install -o $USERNAME -g $USERNAME -d /home/$USERNAME/Desktop/
3437- mv /root/home/$USERNAME/examples.desktop /root/home/$USERNAME/Desktop/
3438-fi
3439-
3440-#Kubuntu
3441-if [ -f "/root/usr/bin/plasma" ]; then
3442- if [ -f "/root/usr/share/kde4/apps/khelpcenter/plugins/kubuntu/about-kubuntu.desktop" ]; then
3443- chroot /root install -d -o $USERNAME -g $USERNAME /home/$USERNAME/Desktop
3444- chroot /root install -D -o $USERNAME -g $USERNAME /usr/share/kde4/apps/khelpcenter/plugins/kubuntu/about-kubuntu.desktop /home/$USERNAME/Desktop/about-kubuntu.desktop
3445- fi
3446-fi
3447-
3448-#Ubuntu MID wants to be installed with --automatic
3449-if [ -f "/root/usr/share/ubuntu-mid-default-settings/mid-gui-start" ]; then
3450- if [ -f "/root/usr/share/applications/ubiquity-gtkui.desktop" ]; then
3451- sed -i 's/--desktop/--automatic --desktop/' "/root/usr/share/applications/ubiquity-gtkui.desktop"
3452- fi
3453-fi
3454-
3455-#Ubuntu MID uses kourou, and the ubiquity icon should be easy to find
3456-if [ -f "/root/usr/lib/hildon-desktop/kourou.py" ]; then
3457- if [ -f "/root/etc/xdg/menus/home.menu" ]; then
3458- sed -i '/<\/Include>/i\ <Filename>ubiquity-gtkui.desktop</Filename>' "/root/etc/xdg/menus/home.menu"
3459- fi
3460-fi
3461-
3462-#Mythbuntu
3463-if [ -d "/root/usr/share/mythbuntu" ]; then
3464- if [ -f "/root/usr/share/applications/mythbuntu-live-frontend.desktop" ]; then
3465- chroot /root install -d -o $USERNAME -g $USERNAME /home/$USERNAME/Desktop
3466- chroot /root install -D -o $USERNAME -g $USERNAME /usr/share/applications/mythbuntu-live-frontend.desktop /home/$USERNAME/Desktop/mythbuntu-live-frontend.desktop
3467- fi
3468- if [ -f "/root/etc/xdg/mythbuntu/xfce4/mcs_settings/desktop.xml" ]; then
3469- sed -i "s/<\/mcs/\t<option\ name=\"showremovable\"\ type=\"int\"\ value=\"0\"\/>\n<\/mcs/" /root/etc/xdg/mythbuntu/xfce4/mcs_settings/desktop.xml
3470- fi
3471-fi
3472-
3473-log_end_msg
3474
3475=== modified file 'scripts/casper-bottom/13swap'
3476--- scripts/casper-bottom/13swap 2010-01-05 16:54:40 +0000
3477+++ scripts/casper-bottom/13swap 2015-12-13 00:48:04 +0000
3478@@ -22,7 +22,7 @@
3479 log_begin_msg "$DESCRIPTION"
3480
3481 devices=""
3482-for device in /dev/[hs]d[a-z][0-9]*; do
3483+for device in /dev/[hsv]d[a-z][0-9]*; do
3484 if ! [ -b "$device" ]; then
3485 continue
3486 fi
3487
3488=== modified file 'scripts/casper-bottom/14locales'
3489--- scripts/casper-bottom/14locales 2010-01-05 16:54:40 +0000
3490+++ scripts/casper-bottom/14locales 2015-12-13 00:48:04 +0000
3491@@ -20,15 +20,9 @@
3492
3493 log_begin_msg "$DESCRIPTION"
3494
3495-if [ -e /root/etc/default/locale ]; then
3496- grep_file=/root/etc/default/locale
3497-elif [ -e /root/etc/environment ]; then # Old locales policy
3498- grep_file=/root/etc/environment
3499-fi
3500-
3501-if [ -n "${grep_file}" ]; then
3502+if [ -f /root/rofs/etc/default/locale ]; then
3503 # use rootfs configured locale
3504- locale=$(grep -s 'LANG=' ${grep_file} | sed s/'LANG='// | tr -d '"' )
3505+ locale=$(grep -s 'LANG=' /root/rofs/etc/default/locale | sed s/'LANG='// | tr -d '"' )
3506 fi
3507
3508 # commandline
3509@@ -58,8 +52,7 @@
3510
3511 if [ "${set_locale}" ]; then
3512 LANG=$(grep "^${locale}" /root/usr/share/i18n/SUPPORTED | grep UTF-8 |sed -e 's, .*,,' -e q)
3513- printf 'LANG="%s"\n' "${LANG}" >> /root/etc/default/locale
3514- printf 'LANG="%s"\n' "${LANG}" >> /root/etc/environment
3515+ printf 'LANG="%s"\n' "${LANG}" > /root/etc/default/locale
3516 printf '%s UTF-8\n' "${LANG}" > /root/etc/locale.gen
3517 chroot /root /usr/sbin/locale-gen "${LANG}"
3518 fi
3519
3520=== modified file 'scripts/casper-bottom/15autologin'
3521--- scripts/casper-bottom/15autologin 2010-01-05 16:54:40 +0000
3522+++ scripts/casper-bottom/15autologin 2015-12-13 00:48:04 +0000
3523@@ -20,16 +20,15 @@
3524
3525 log_begin_msg "$DESCRIPTION"
3526
3527-if [ -d /root/etc/gdm ] && [ ! -e /root/etc/gdm/custom.conf ]; then
3528+GDMCustomFile=/root/etc/gdm/custom.conf
3529+
3530+if [ -f $GDMCustomFile ]; then
3531 # Configure GDM autologin
3532- cat > /root/etc/gdm/custom.conf <<EOF
3533-[daemon]
3534-AutomaticLoginEnable=true
3535-AutomaticLogin=$USERNAME
3536-TimedLoginEnable=true
3537-TimedLogin=$USERNAME
3538-TimedLoginDelay=10
3539-EOF
3540+ sed -i -r \
3541+ -e "s/^#[ ]*AutomaticLoginEnable =.*\$/AutomaticLoginEnable=true/" \
3542+ -e "s/^#[ ]*AutomaticLogin =.*\$/AutomaticLogin=$USERNAME/" \
3543+ -e "s/^#[ ]*TimedLoginEnable =.*\$/TimedLoginEnable=false/" \
3544+ $GDMCustomFile
3545 fi
3546
3547 if [ -f /root/etc/kde4/kdm/kdmrc ]; then
3548@@ -41,4 +40,45 @@
3549 /root/etc/kde4/kdm/kdmrc
3550 fi
3551
3552+if [ -f /root/etc/lxdm/lxdm.conf ]; then
3553+ # Configure LXDM autologin with LXDE session
3554+ sed -i -r \
3555+ -e "s/^# autologin=dgod/autologin=$USERNAME/" \
3556+ -e "s/^# session/session/" \
3557+ -e "s/startlxde/startlubuntu/" \
3558+ /root/etc/lxdm/lxdm.conf
3559+fi
3560+
3561+if [ -f /root/etc/xdg/lubuntu/lxdm/lxdm.conf ]; then
3562+ # Configure LXDM autologin with Lubuntu session
3563+ sed -i -r \
3564+ -e "s/^# autologin=dgod/autologin=$USERNAME/" \
3565+ -e "s/^# session/session/" \
3566+ -e "s/startlxde/startlubuntu/" \
3567+ /root/etc/xdg/lubuntu/lxdm/lxdm.conf
3568+fi
3569+
3570+if [ -d /root/etc/lightdm ]; then
3571+ # Configure LightDM autologin
3572+ LightDMCustomFile=/root/etc/lightdm/lightdm.conf
3573+ AutologinParameters="allow-guest=false\n\
3574+autologin-guest=false\n\
3575+autologin-user=$USERNAME\n\
3576+autologin-user-timeout=0\n\
3577+autologin-session=lightdm-autologin"
3578+
3579+ # Prevent from updating if parameters already present (persistent usb key)
3580+ if ! `grep -qs '^autologin-user' $LightDMCustomFile` ; then
3581+ if ! `grep -qs '\[SeatDefaults\]' $LightDMCustomFile` ; then
3582+ echo '[SeatDefaults]' >> $LightDMCustomFile
3583+ fi
3584+ sed -i "s/\[SeatDefaults\]/\[SeatDefaults\]\n$AutologinParameters/" $LightDMCustomFile
3585+ fi
3586+
3587+ # LightDM on kubuntu-active wants to start ubuntu.desktop, workaround here for now jriddell 2012-03-15
3588+ if [ -e /root/usr/share/xsessions/plasma-active.desktop ]; then
3589+ cp /root/usr/share/xsessions/plasma-active.desktop /root/usr/share/xsessions/ubuntu.desktop
3590+ fi
3591+fi
3592+
3593 log_end_msg
3594
3595=== added file 'scripts/casper-bottom/16gdmnopasswd'
3596--- scripts/casper-bottom/16gdmnopasswd 1970-01-01 00:00:00 +0000
3597+++ scripts/casper-bottom/16gdmnopasswd 2015-12-13 00:48:04 +0000
3598@@ -0,0 +1,44 @@
3599+#!/bin/sh
3600+
3601+PREREQ=""
3602+DESCRIPTION="Setting up automatic login..."
3603+
3604+prereqs()
3605+{
3606+ echo "$PREREQ"
3607+}
3608+
3609+case $1 in
3610+# get pre-requisites
3611+prereqs)
3612+ prereqs
3613+ exit 0
3614+ ;;
3615+esac
3616+
3617+. /scripts/casper-functions
3618+
3619+log_begin_msg "$DESCRIPTION"
3620+
3621+STRING1=" if (this._userManager.list_users().length > 2 || !(this._userManager.get_user('ubuntu')))\n \
3622+ return GdmUtil.fadeInActor(this._promptLabel); \/\/show\n \
3623+ else\n \
3624+ this._promptLabel.hide();"
3625+STRING2=" if (this._userManager.list_users().length > 2 || !(this._userManager.get_user('ubuntu')))\n \
3626+ return GdmUtil.fadeInActor(this._promptEntry); \/\/show\n \
3627+ else\n \
3628+ this._promptEntry.hide();"
3629+
3630+GDMLoginFile=/root/usr/share/gnome-shell/js/gdm/loginDialog.js
3631+
3632+if [ -f $GDMLoginFile ]; then
3633+ # Configure GDM autologin
3634+
3635+ sed -i -e "s/^.*return GdmUtil.fadeInActor(this._promptLabel);\$/$STRING1/" \
3636+ -e "s/^.*return GdmUtil.fadeInActor(this._promptEntry);\$/$STRING2/" \
3637+ $GDMLoginFile
3638+
3639+fi
3640+
3641+
3642+log_end_msg
3643
3644=== modified file 'scripts/casper-bottom/19keyboard'
3645--- scripts/casper-bottom/19keyboard 2010-01-05 16:54:40 +0000
3646+++ scripts/casper-bottom/19keyboard 2015-12-13 00:48:04 +0000
3647@@ -48,6 +48,24 @@
3648 console-setup/modelcode\?=*)
3649 csmodel=${x#console-setup/modelcode\?=}
3650 ;;
3651+ keyboard-configuration/layoutcode=*)
3652+ cslayout=${x#keyboard-configuration/layoutcode=}
3653+ ;;
3654+ keyboard-configuration/layoutcode\?=*)
3655+ cslayout=${x#keyboard-configuration/layoutcode\?=}
3656+ ;;
3657+ keyboard-configuration/variantcode=*)
3658+ csvariant=${x#keyboard-configuration/variantcode=}
3659+ ;;
3660+ keyboard-configuration/variantcode\?=*)
3661+ csvariant=${x#keyboard-configuration/variantcode\?=}
3662+ ;;
3663+ keyboard-configuration/modelcode=*)
3664+ csmodel=${x#keyboard-configuration/modelcode=}
3665+ ;;
3666+ keyboard-configuration/modelcode\?=*)
3667+ csmodel=${x#keyboard-configuration/modelcode\?=}
3668+ ;;
3669 esac
3670 done
3671
3672@@ -151,45 +169,69 @@
3673 fi
3674 }
3675
3676-if [ -x /root/bin/setupcon ] && [ -f /root/etc/default/console-setup ]; then
3677+PREFIX=
3678+CONFIGFILE=
3679+if [ -f /root/etc/default/keyboard ]; then
3680+ PREFIX=keyboard-configuration
3681+ CONFIGFILE=/etc/default/keyboard
3682+elif [ -f /root/etc/default/console-setup ]; then
3683+ PREFIX=console-setup
3684+ CONFIGFILE=/etc/default/console-setup
3685+fi
3686+
3687+# Make a temporary copy of the current file for later diff
3688+cp /root$CONFIGFILE /tmp/keyboard.orig
3689+
3690+# Reset the config for persistent medias
3691+if [ -f /cow$CONFIGFILE ]; then
3692+ echo "Resetting $CONFIGFILE"
3693+ cp /root/rofs$CONFIGFILE /root$CONFIGFILE
3694+fi
3695+
3696+if [ -x /root/bin/setupcon ] && [ "$PREFIX" ] && [ "$CONFIGFILE" ]; then
3697 if [ "$cslayout" ]; then
3698 csoptions=
3699 adjust_console_setup
3700
3701 chroot /root sed -i "s/^XKBLAYOUT=.*/XKBLAYOUT=\"$cslayout\"/" \
3702- /etc/default/console-setup
3703+ "$CONFIGFILE"
3704 if [ "$csvariant" ]; then
3705 chroot /root sed -i "s/^XKBVARIANT=.*/XKBVARIANT=\"$csvariant\"/" \
3706- /etc/default/console-setup
3707+ "$CONFIGFILE"
3708 else
3709- casper-preseed /root console-setup/variantcode '' false
3710+ casper-preseed /root "$PREFIX/variantcode" '' false
3711 fi
3712 if [ "$csmodel" ]; then
3713 chroot /root sed -i "s/^XKBMODEL=.*/XKBMODEL=\"$csmodel\"/" \
3714- /etc/default/console-setup
3715+ "$CONFIGFILE"
3716 else
3717- casper-preseed /root console-setup/modelcode '' false
3718+ casper-preseed /root "$PREFIX/modelcode" '' false
3719 fi
3720 if [ "$csoptions" ]; then
3721 chroot /root sed -i "s/^XKBOPTIONS=.*/XKBOPTIONS=\"$csoptions\"/" \
3722- /etc/default/console-setup
3723+ "$CONFIGFILE"
3724 fi
3725 else
3726- casper-preseed /root console-setup/layoutcode '' false
3727- casper-preseed /root console-setup/variantcode '' false
3728- casper-preseed /root console-setup/modelcode '' false
3729+ casper-preseed /root "$PREFIX/layoutcode" '' false
3730+ casper-preseed /root "$PREFIX/variantcode" '' false
3731+ casper-preseed /root "$PREFIX/modelcode" '' false
3732 fi
3733- casper-preseed /root console-setup/optionscode '' false
3734+ casper-preseed /root "$PREFIX/optionscode" '' false
3735+ # prefix remains console-setup even with keyboard-configuration
3736 casper-preseed /root console-setup/codesetcode '' false
3737-
3738- if [ -f /root/etc/init.d/usplash ]; then
3739- sed -i 's/CONSOLE_SCREEN=$/CONSOLE_SCREEN=setupcon/; t END; b; : END; n; b END' /root/etc/init.d/usplash
3740- elif [ -f /root/etc/init/usplash.conf ]; then
3741- sed -i '/^post-stop script/a\
3742- setupcon' /root/etc/init/usplash.conf
3743- fi
3744 else
3745 chroot /root /usr/sbin/install-keymap $kbd
3746 casper-preseed /root debian-installer/keymap "$kbd"
3747 fi
3748+
3749+if [ "$(cat /root$CONFIGFILE)" != "$(cat /tmp/keyboard.orig)" ]; then
3750+ # The keyboard settings have changed, gsettings needs to be flushed
3751+ if [ -f /root/home/$USERNAME/.config/dconf/user ]; then
3752+ chroot /root sudo -u $USERNAME dbus-launch --exit-with-session gsettings reset-recursively org.gnome.libgnomekbd.keyboard
3753+ mount -n -o bind /proc /root/proc
3754+ chroot /root killall dbus-launch
3755+ umount /root/proc
3756+ fi
3757+fi
3758+
3759 log_end_msg
3760
3761=== renamed file 'scripts/casper-bottom/22screensaver' => 'scripts/casper-bottom/22desktop_settings'
3762--- scripts/casper-bottom/22screensaver 2010-01-05 16:54:40 +0000
3763+++ scripts/casper-bottom/22desktop_settings 2015-12-13 00:48:04 +0000
3764@@ -1,7 +1,7 @@
3765 #!/bin/sh
3766
3767 PREREQ=""
3768-DESCRIPTION="Configuring screensaver..."
3769+DESCRIPTION="Applying desktop settings..."
3770
3771 prereqs()
3772 {
3773@@ -20,11 +20,27 @@
3774
3775 log_begin_msg "$DESCRIPTION"
3776
3777-gnome_screensaver_version=$(chroot /root dpkg-query -W --showformat='${Version}' gnome-screensaver 2>/dev/null) || gnome_screensaver_version=""
3778-if [ -n "$gnome_screensaver_version" ]; then
3779- # Support legacy gconf value
3780- chroot /root sudo -u "$USERNAME" gconftool-2 -t bool -s /apps/gnome-screensaver/lock false
3781- chroot /root sudo -u "$USERNAME" gconftool-2 -t bool -s /apps/gnome-screensaver/lock_enabled false
3782+# Apply the gsettings overrides
3783+## Avoid adding duplicate sections when using persistent storage
3784+if [ -f /root/usr/share/glib-2.0/schemas/casper.gschema.override ]; then
3785+ rm /root/usr/share/glib-2.0/schemas/casper.gschema.override
3786+fi
3787+
3788+schemas_version=$(chroot /root /usr/bin/dpkg-query -W --showformat='${Version}' gsettings-desktop-schemas 2>/dev/null) || schemas_version=""
3789+if [ -n "$schemas_version" ]; then
3790+ printf "[org.gnome.desktop.lockdown]\ndisable-lock-screen=true\n" >> /root/usr/share/glib-2.0/schemas/casper.gschema.override
3791+ printf "[org.gnome.desktop.screensaver]\nlock-enabled=false\n" >> /root/usr/share/glib-2.0/schemas/casper.gschema.override
3792+ chroot /root glib-compile-schemas /usr/share/glib-2.0/schemas/
3793+fi
3794+
3795+# Apply the kde-profile overrides
3796+if [ -f /root/usr/share/kubuntu-default-settings/kde-profile/default/share/config/kdesktoprc ]; then
3797+ if [ -f /rofs/usr/share/kubuntu-default-settings/kde-profile/default/share/config/kdesktoprc ]; then
3798+ cp /rofs/usr/share/kubuntu-default-settings/kde-profile/default/share/config/kdesktoprc \
3799+ /root/usr/share/kubuntu-default-settings/kde-profile/default/share/config/kdesktoprc
3800+ else
3801+ rm /root/usr/share/kubuntu-default-settings/kde-profile/default/share/config/kdesktoprc
3802+ fi
3803 fi
3804
3805 if [ -d /root/usr/share/kubuntu-default-settings/kde-profile/default/share/config ]; then
3806
3807=== removed file 'scripts/casper-bottom/22gnome_panel_data'
3808--- scripts/casper-bottom/22gnome_panel_data 2010-01-05 16:54:40 +0000
3809+++ scripts/casper-bottom/22gnome_panel_data 1970-01-01 00:00:00 +0000
3810@@ -1,34 +0,0 @@
3811-#!/bin/sh
3812-
3813-PREREQ=""
3814-DESCRIPTION="Configuring gnome-panel-data..."
3815-
3816-prereqs()
3817-{
3818- echo "$PREREQ"
3819-}
3820-
3821-case $1 in
3822-# get pre-requisites
3823-prereqs)
3824- prereqs
3825- exit 0
3826- ;;
3827-esac
3828-
3829-. /scripts/casper-functions
3830-
3831-log_begin_msg "$DESCRIPTION"
3832-
3833-if [ -x /root/usr/sbin/laptop-detect ]; then
3834- if chroot /root laptop-detect; then
3835- casper-reconfigure /root gnome-panel-data
3836- fi
3837-fi
3838-
3839-panel_version=$(chroot /root /usr/bin/dpkg-query -W --showformat='${Version}' gnome-panel-data 2>/dev/null) || panel_version=""
3840-if [ -n "$panel_version" ]; then
3841- chroot /root sudo -u "$USERNAME" gconftool-2 -s -t bool /apps/panel/global/disable_lock_screen true
3842-fi
3843-
3844-log_end_msg
3845
3846=== modified file 'scripts/casper-bottom/22sslcert'
3847--- scripts/casper-bottom/22sslcert 2010-01-05 16:54:40 +0000
3848+++ scripts/casper-bottom/22sslcert 2015-12-13 00:48:04 +0000
3849@@ -17,6 +17,7 @@
3850 esac
3851
3852 . /scripts/casper-functions
3853+load_confmodule
3854
3855 log_begin_msg "$DESCRIPTION"
3856
3857
3858=== removed file 'scripts/casper-bottom/23etc_modules'
3859--- scripts/casper-bottom/23etc_modules 2010-01-05 16:54:40 +0000
3860+++ scripts/casper-bottom/23etc_modules 1970-01-01 00:00:00 +0000
3861@@ -1,30 +0,0 @@
3862-#! /bin/sh
3863-
3864-PREREQ=""
3865-DESCRIPTION="Preconfiguring /etc/modules..."
3866-
3867-prereqs()
3868-{
3869- echo "$PREREQ"
3870-}
3871-
3872-case $1 in
3873-# get pre-requisites
3874-prereqs)
3875- prereqs
3876- exit 0
3877- ;;
3878-esac
3879-
3880-. /scripts/casper-functions
3881-
3882-log_begin_msg "$DESCRIPTION"
3883-
3884-case "$DPKG_ARCH" in
3885-# load the right modules
3886-powerpc|ppc64)
3887- echo snd_powermac >> /root/etc/modules
3888- ;;
3889-esac
3890-
3891-log_end_msg
3892
3893=== modified file 'scripts/casper-bottom/23networking'
3894--- scripts/casper-bottom/23networking 2010-01-05 16:54:40 +0000
3895+++ scripts/casper-bottom/23networking 2015-12-13 00:48:04 +0000
3896@@ -28,13 +28,13 @@
3897 fi
3898
3899 cat > "$IFFILE" <<EOF
3900+# interfaces(5) file used by ifup(8) and ifdown(8)
3901 auto lo
3902 iface lo inet loopback
3903-
3904 EOF
3905
3906-/sbin/udevadm trigger
3907-/sbin/udevadm settle
3908+udevadm trigger
3909+udevadm settle
3910
3911 if [ -z "${NETBOOT}" -a -n "${STATICIP}" -a "${STATICIP}" != "frommedia" ]; then
3912 parsed=$(echo "${STATICIP}" | sed -e 's/:/ /g')
3913@@ -63,7 +63,8 @@
3914 fi
3915 # iterate the physical interfaces and add them to the interfaces list
3916 if [ "$method" != dhcp ] || [ ! -x /root/usr/sbin/NetworkManager ]; then
3917- for interface in /sys/class/net/eth* /sys/class/net/ath* /sys/class/net/wlan*; do
3918+ for device in /sys/class/net/*/device; do
3919+ interface="${device%*/device}"
3920 [ -e $interface ] || continue
3921 i="$(basename $interface)"
3922 cat >> "$IFFILE" <<EOF
3923@@ -73,36 +74,48 @@
3924 EOF
3925 done
3926 fi
3927- if [ ! -f /root/etc/resolv.conf -a -f /netboot.config ] ; then
3928- # create a resolv.conf if it is not present
3929- cp /netboot.config /root/var/log/netboot.config
3930- rc_search=$(cat netboot.config | awk '/domain/{print $3}')
3931- rc_server0=$(cat netboot.config | awk '/dns0/{print $5}')
3932- rc_server1=$(cat netboot.config | awk '/dns0/{print $8}')
3933- rc_server0="nameserver ${rc_server0}"
3934- if [ "${rc_server1}" = "0.0.0.0" ]; then
3935- rc_server1=""
3936- else
3937- rc_server1="nameserver ${rc_server1}"
3938- fi
3939- cat > /root/etc/resolv.conf <<EOF
3940+ if [ ! -f /root/etc/resolv.conf ] || [ -z "$(cat /root/etc/resolv.conf)" ]; then
3941+ if [ -n "${DEVICE}" ] && [ -e /run/net-"${DEVICE}".conf ]; then
3942+ # create a resolv.conf if it is not present
3943+ #ipconfig quotes DNSDOMAIN, quotes need to be removed for a correct resolv.conf
3944+ rc_search="$(sed -n "s/^DNSDOMAIN='\(.*\)'/\1/p" /run/net-"${DEVICE}".conf)"
3945+ #search might contain multiple entries but domain should only have one.
3946+ rc_domain="$(sed -n "s/^DNSDOMAIN='\([^ ]*\).*'/\1/p" /run/net-"${DEVICE}".conf)"
3947+ rc_server0="$(sed -n "s/^IPV4DNS0='\(.*\)'/\1/p" /run/net-"${DEVICE}".conf)"
3948+ rc_server1="$(sed -n "s/^IPV4DNS1='\(.*\)'/\1/p" /run/net-"${DEVICE}".conf)"
3949+
3950+ # Deal with resolvconf
3951+ # Writing to /run instead or /root/run as /sbin/init will move /run
3952+ # to /root/run a bit later on
3953+ if [ -x /root/sbin/resolvconf ] && [ -L /root/etc/resolv.conf ]; then
3954+ mkdir -p /run/resolvconf/interface/
3955+ resolv=/run/resolvconf/interface/casper
3956+ else
3957+ resolv=/root/etc/resolv.conf
3958+ fi
3959+
3960+ cat > $resolv <<EOF
3961 # /etc/resolv.conf
3962 # Autogenerated by casper
3963-search ${rc_search}
3964-domain ${rc_search}
3965-${rc_server0}
3966-${rc_server1}
3967 EOF
3968- cat /root/etc/resolv.conf >> /root/var/log/netboot.config
3969+ [ -n "$rc_search" ] && echo "search ${rc_search}" >> $resolv
3970+ [ -n "$rc_domain" ] && echo "domain ${rc_domain}" >> $resolv
3971+ [ -n "$rc_server0" ] && [ "$rc_server0" != "0.0.0.0" ] && echo "nameserver $rc_server0" >> $resolv
3972+ [ -n "$rc_server1" ] && [ "$rc_server1" != "0.0.0.0" ] && echo "nameserver $rc_server1" >> $resolv
3973+
3974+ cat $resolv >> /root/var/log/netboot.config
3975+ fi
3976 fi
3977 fi
3978
3979 if [ ! -x /root/usr/sbin/NetworkManager ]; then
3980- for i in eth0 eth1 eth2 ath0 wlan0; do
3981- grep -q "iface $i" $IFFILE && continue
3982+ for device in /sys/class/net/*/device; do
3983+ name=$(basename ${device%*/device})
3984+
3985+ grep -q "iface $name" $IFFILE && continue
3986 cat >> "$IFFILE" <<EOF
3987-auto $i
3988-iface $i inet dhcp
3989+auto $name
3990+iface $name inet dhcp
3991
3992 EOF
3993 done
3994
3995=== modified file 'scripts/casper-bottom/24preseed'
3996--- scripts/casper-bottom/24preseed 2010-01-20 23:33:29 +0000
3997+++ scripts/casper-bottom/24preseed 2015-12-13 00:48:04 +0000
3998@@ -17,13 +17,46 @@
3999 esac
4000
4001 . /scripts/casper-functions
4002+load_confmodule
4003
4004 log_begin_msg "$DESCRIPTION"
4005
4006 if [ -e /preseed.cfg ]; then
4007- chroot /root debconf-set-selections < /preseed.cfg
4008+ casper-set-selections /preseed.cfg
4009 fi
4010
4011+network_started=
4012+
4013+start_network () {
4014+ [ -z "$network_started" ] || return
4015+ [ -z "$NETBOOT" ] || return
4016+
4017+ mount -n -o bind /sys /root/sys
4018+ mount -n -o bind /proc /root/proc
4019+ mount -n -o bind /dev /root/dev
4020+ mkdir -p /root/var/run/network
4021+ # Close inherited fd's to prevent debconf-communicate from
4022+ # continuing to run post-casper.
4023+ for device in /sys/class/net/*/device; do
4024+ name=$(basename ${device%*/device})
4025+ chroot /root dhclient $name 3>&- 4<&-
4026+ done
4027+
4028+ network_started=1
4029+}
4030+
4031+stop_network () {
4032+ [ "$network_started" ] || return
4033+
4034+ for device in /sys/class/net/*/device; do
4035+ name=$(basename ${device%*/device})
4036+ chroot /root ifconfig $name down
4037+ done
4038+ umount /root/sys
4039+ umount /root/proc
4040+ umount /root/dev
4041+}
4042+
4043 locations=
4044 for x in $(cat /proc/cmdline); do
4045 case $x in
4046@@ -35,16 +68,8 @@
4047 ;;
4048 url=*)
4049 url_location="${x#url=}"
4050- mount -n -o bind /sys /root/sys
4051- mount -n -o bind /proc /root/proc
4052- mount -n -o bind /dev /root/dev
4053- mkdir -p /root/var/run/network
4054- [ "$NETBOOT" ] || chroot /root dhclient eth0
4055+ start_network
4056 chroot /root wget -P /tmp "$url_location"
4057- [ "$NETBOOT" ] || chroot /root ifconfig eth0 down
4058- umount /root/sys
4059- umount /root/proc
4060- umount /root/dev
4061 locations="/tmp/$(basename "$url_location") $locations"
4062 ;;
4063 */*\?=*)
4064@@ -57,8 +82,9 @@
4065 value="${x#*=}"
4066 casper-preseed /root "$question" "$value"
4067 ;;
4068- locale=*)
4069+ debian-installer/locale=*|locale=*)
4070 value="${x#*=}"
4071+ value="$(grep "^$value" /root/usr/share/i18n/SUPPORTED | grep UTF-8 | sed -e 's, .*,,' -e q)"
4072 casper-preseed /root debian-installer/locale "$value"
4073 ;;
4074 esac
4075@@ -66,16 +92,22 @@
4076
4077 if [ "$locations" ]; then
4078 for item in $locations; do
4079- chroot /root debconf-set-selections < "/root$item"
4080+ casper-set-selections "/root$item"
4081 done
4082 fi
4083
4084-reply="$(echo "GET preseed/early_command" | chroot /root debconf-communicate -fnoninteractive casper)"
4085-if [ "${reply#0 }" != "$reply" ]; then
4086- reply="${reply#0 }"
4087- sh -c "$reply"
4088+if db_get preseed/early_command && [ "$RET" ]; then
4089+ EARLY="$RET"
4090+ if db_get preseed/allow-network && [ "$RET" = true ]; then
4091+ start_network
4092+ fi
4093+ DEBIAN_HAS_FRONTEND= DEBCONF_REDIR= \
4094+ DEBIAN_FRONTEND=noninteractive \
4095+ sh -c "$EARLY"
4096 fi
4097
4098+stop_network
4099+
4100 # Clear out debconf database backup files to save memory.
4101 rm -f /root/var/cache/debconf/*.dat-old
4102
4103
4104=== added file 'scripts/casper-bottom/25adduser'
4105--- scripts/casper-bottom/25adduser 1970-01-01 00:00:00 +0000
4106+++ scripts/casper-bottom/25adduser 2015-12-13 00:48:04 +0000
4107@@ -0,0 +1,136 @@
4108+#!/bin/sh
4109+
4110+PREREQ=""
4111+DESCRIPTION="Adding live session user..."
4112+
4113+prereqs()
4114+{
4115+ echo "$PREREQ"
4116+}
4117+
4118+case $1 in
4119+# get pre-requisites
4120+prereqs)
4121+ prereqs
4122+ exit 0
4123+ ;;
4124+esac
4125+
4126+. /scripts/casper-functions
4127+load_confmodule
4128+
4129+log_begin_msg "$DESCRIPTION"
4130+
4131+debconf_backup () {
4132+ local question backup
4133+ for question; do
4134+ backup="$question-casper-backup"
4135+ db_register debian-installer/dummy "$backup"
4136+ db_get "$question"
4137+ db_set "$backup" "$RET"
4138+ db_fget "$question" seen
4139+ db_fset "$backup" seen "$RET"
4140+ done
4141+}
4142+
4143+debconf_restore () {
4144+ local question backup
4145+ for question; do
4146+ backup="$question-casper-backup"
4147+ db_get "$backup"
4148+ db_set "$question" "$RET"
4149+ db_fget "$backup" seen
4150+ db_fset "$question" seen "$RET"
4151+ db_unregister "$backup"
4152+ done
4153+}
4154+
4155+debconf_backup \
4156+ passwd/root-password-crypted \
4157+ passwd/root-password passwd/root-password-again \
4158+ passwd/user-password-crypted \
4159+ passwd/user-password passwd/user-password-again \
4160+ passwd/user-fullname passwd/username passwd/user-uid
4161+
4162+# U6aMy0wojraho is just a blank password
4163+db_set passwd/root-password-crypted '*'
4164+db_set passwd/user-password-crypted U6aMy0wojraho
4165+db_set passwd/user-fullname "$USERFULLNAME"
4166+db_set passwd/username "$USERNAME"
4167+db_set passwd/user-uid 999
4168+
4169+chroot /root /usr/lib/user-setup/user-setup-apply > /dev/null
4170+
4171+# Clear out debconf database again to avoid confusing ubiquity later.
4172+debconf_restore \
4173+ passwd/root-password-crypted \
4174+ passwd/root-password passwd/root-password-again \
4175+ passwd/user-password-crypted \
4176+ passwd/user-password passwd/user-password-again \
4177+ passwd/user-fullname passwd/username passwd/user-uid
4178+
4179+if [ -d /root/etc/sudoers.d/ ]; then
4180+ echo "${USERNAME} ALL=(ALL) NOPASSWD: ALL" > /root/etc/sudoers.d/casper
4181+fi
4182+
4183+LTS="$(cut -d' ' -f3 /root/cdrom/.disk/info 2>/dev/null)" || LTS=
4184+RELEASE="$(cut -d' ' -f1-2 /root/cdrom/.disk/info 2>/dev/null | sed 's/-/ /')" || RELEASE=
4185+if [ "$LTS" = "LTS" ] && [ -n "$RELEASE" ]; then
4186+ RELEASE="$RELEASE LTS"
4187+fi
4188+for file in /usr/share/applications/ubiquity.desktop /usr/share/applications/kde4/ubiquity-kdeui.desktop; do
4189+ if [ -f "/root/$file" ]; then
4190+ sed -i "s/RELEASE/$RELEASE/" "/root$file"
4191+ chroot /root install -d -o $USERNAME -g $USERNAME /home/$USERNAME/Desktop
4192+ chroot /root install -D -o $USERNAME -g $USERNAME $file /home/$USERNAME/Desktop/$(basename "$file")
4193+ break
4194+ fi
4195+done
4196+
4197+if [ -L /root/home/$USERNAME/Examples ]; then
4198+ chroot /root install -o $USERNAME -g $USERNAME -d /home/$USERNAME/Desktop/
4199+ mv /root/home/$USERNAME/Examples /root/home/$USERNAME/Desktop/
4200+fi
4201+
4202+if [ -f /root/home/$USERNAME/examples.desktop ]; then
4203+ chroot /root install -o $USERNAME -g $USERNAME -d /home/$USERNAME/Desktop/
4204+ mv /root/home/$USERNAME/examples.desktop /root/home/$USERNAME/Desktop/
4205+fi
4206+
4207+#GDM
4208+if [ -d /root/etc/gdm ]; then
4209+ sed -i '/^[UG]ID_MIN/s/\<1000$/ 999/' /root/etc/login.defs
4210+fi
4211+
4212+# Kubuntu
4213+if [ -f "/root/usr/bin/plasma-desktop" ]; then
4214+ if [ -f "/root/usr/share/kde4/apps/khelpcenter/plugins/kubuntu/a_welcome.desktop" ]; then
4215+ chroot /root install -d -o $USERNAME -g $USERNAME /home/$USERNAME/Desktop
4216+ chroot /root install -D -o $USERNAME -g $USERNAME /usr/share/kde4/apps/khelpcenter/plugins/kubuntu/a_welcome.desktop /home/$USERNAME/Desktop/a_welcome.desktop
4217+ fi
4218+fi
4219+
4220+# Kubuntu Netbook
4221+if [ -f "/root/usr/bin/plasma-netbook" ]; then
4222+ config="/root/usr/share/kubuntu-netbook-default-settings/share/apps/plasma/layout-templates/org.kde.plasma-netbook.defaultSal/contents/layout.js"
4223+ escaped_desktop="\/usr\/share\/applications\/kde4\/ubiquity-kdeui.desktop"
4224+ if [ -f $config ]; then
4225+ sed -i "s/\/\/__UBIQUITY_PLACEHOLDER__\/\//\"$escaped_desktop\"/" $config
4226+ fi
4227+fi
4228+
4229+#Ubuntu MID wants to be installed with --automatic
4230+if [ -f "/root/usr/share/ubuntu-mid-default-settings/mid-gui-start" ]; then
4231+ if [ -f "/root/usr/share/applications/ubiquity.desktop" ]; then
4232+ sed -i 's/--desktop/--automatic --desktop/' "/root/usr/share/applications/ubiquity.desktop"
4233+ fi
4234+fi
4235+
4236+#Ubuntu MID uses kourou, and the ubiquity icon should be easy to find
4237+if [ -f "/root/usr/lib/hildon-desktop/kourou.py" ]; then
4238+ if [ -f "/root/etc/xdg/menus/home.menu" ]; then
4239+ sed -i '/<\/Include>/i\ <Filename>ubiquity.desktop</Filename>' "/root/etc/xdg/menus/home.menu"
4240+ fi
4241+fi
4242+
4243+log_end_msg
4244
4245=== modified file 'scripts/casper-bottom/25configure_init'
4246--- scripts/casper-bottom/25configure_init 2010-01-05 16:54:40 +0000
4247+++ scripts/casper-bottom/25configure_init 2015-12-13 00:48:04 +0000
4248@@ -54,7 +54,7 @@
4249 rm -f /root/etc/rc?.d/[SK]??postfix
4250
4251 # Avoid clobbering the user's clock
4252-rm -f /root/etc/rc?.d/K??hwclock.sh
4253+rm -f /root/etc/rc?.d/K??hwclock.sh /root/etc/init/hwclock-save.conf
4254
4255 # Disable readahead since it doesn't play well with squashfs + unionfs
4256 # use chmod instead of mv to not trigger unionfs bugs.
4257@@ -65,7 +65,7 @@
4258 # Disable ureadahead too since we don't ship a pack file for it anyway, so
4259 # all we'll end up doing is profiling the live CD boot. ureadahead also
4260 # breaks partman occasionally by reading from its synchronisation FIFOs.
4261-rm -f /root/etc/init/ureadahead.conf
4262+rm -f /root/etc/init/ureadahead*.conf
4263
4264 log_end_msg
4265
4266
4267=== renamed file 'scripts/casper-bottom/22serialtty' => 'scripts/casper-bottom/26serialtty'
4268=== modified file 'scripts/casper-bottom/30accessibility'
4269--- scripts/casper-bottom/30accessibility 2010-01-05 16:54:40 +0000
4270+++ scripts/casper-bottom/30accessibility 2015-12-13 00:48:04 +0000
4271@@ -1,173 +1,74 @@
4272 #!/bin/sh
4273-# If you change this, please also change the copy in ubiquity-hooks/30accessibility.
4274+# If you are looking to change accessibility profile settings, plesae look in
4275+# bin/casper-a11y-enable.
4276
4277 PREREQ=""
4278 DESCRIPTION="Configuring accessibility options..."
4279
4280 prereqs()
4281 {
4282- echo "$PREREQ"
4283+ echo "$PREREQ"
4284 }
4285
4286 case $1 in
4287 # get pre-requisites
4288-prereqs)
4289- prereqs
4290- exit 0
4291- ;;
4292+ prereqs)
4293+ prereqs
4294+ exit 0
4295+ ;;
4296 esac
4297
4298 . /scripts/casper-functions
4299
4300 log_begin_msg "$DESCRIPTION"
4301
4302-gconf_version=$(chroot /root /usr/bin/dpkg-query -W --showformat='${Version}' gconf2 2>/dev/null) || gconf_version=""
4303-
4304-gct() {
4305- if [ "$gconf_version" ]; then
4306- chroot /root sudo -u "$USERNAME" gconftool-2 "$@"
4307- fi
4308-}
4309-
4310-kderc_addtoprefixes() {
4311- if [ -e "/root/etc/kde4rc" ]; then
4312- sed -i "s|\\(prefixes=/usr/share/kubuntu-default-settings/kde-profile/default/\\)|\\1,$1|" /root/etc/kde4rc
4313- fi
4314-}
4315-
4316-# Code to remove an applet from the default panel setup
4317-# This is rather hacky, but I can't think of a one or two line regular
4318-# expression to do this any more efficiently. Patches welcome.
4319-# In addition, setting these via gconf also doesn't work for some reason.
4320-remove_applet()
4321-{
4322- local line_no prior_line next_line
4323-
4324- line_no=$(grep -n "<string>$1</string>" /root/usr/share/gconf/defaults/05_panel-default-setup.entries | cut -f 1 -d :)
4325- [ "$line_no" ] || return
4326- prior_line=$((line_no-1))
4327- next_line=$((line_no+1))
4328- sed -i -n "${prior_line},${next_line}!p" /root/usr/share/gconf/defaults/05_panel-default-setup.entries
4329- chroot /root update-gconf-defaults
4330-}
4331-
4332 for x in $(cat /proc/cmdline); do
4333- case $x in
4334- # Lesser Visual Impairment
4335- access=v1)
4336- gct -s -t string /desktop/gnome/interface/gtk_theme HighContrastLargePrint
4337- gct -s -t string /desktop/gnome/interface/icon_theme HighContrast
4338- gct -s -t string /desktop/gnome/interface/monospace_font_name "monospace 18"
4339- gct -s -t string /desktop/gnome/interface/font_name "sans 18"
4340- gct -s -t string /apps/metacity/general/theme Atlanta
4341- gct -s -t string /desktop/gnome/background/picture_filename ""
4342- gct -s -t string /desktop/gnome/background/picture_options none
4343- gct -s -t string /desktop/gnome/background/primary_color \#666666
4344- gct -s -t string /desktop/gnome/background/secondary_color \#7F7F7F
4345- gct -s -t string /desktop/gnome/background/color_shading_type solid
4346- gct -s -t int /desktop/gnome/peripherals/mouse/cursor_size 48
4347- gct -s -t string /desktop/gnome/peripherals/mouse/cursor_theme whiteglass
4348-
4349- kderc_addtoprefixes /usr/share/kubuntu-default-settings/kde-profile/lesser-visual-impairment/
4350- if [ -d /root/usr/share/xubuntu-default-settings/accessibility ]; then
4351- cp -a /root/usr/share/xubuntu-default-settings/accessibility/* /root/etc/xdg/
4352- fi
4353- ;;
4354- # Moderate Visual Impairment
4355- access=v2)
4356- gct -s -t bool /desktop/gnome/interface/accessibility true
4357- gct -s -t bool /desktop/gnome/applications/at/visual/startup true
4358- gct -s -t string /desktop/gnome/applications/at/visual/exec orca
4359- if [ -x /root/usr/bin/orca ]; then
4360- mkdir -p /root/home/$USERNAME/.orca
4361- echo "import orca.settings" >> /root/home/$USERNAME/.orca/user-settings.py
4362- echo "orca.settings.enableSpeech = False" >> /root/home/$USERNAME/.orca/user-settings.py
4363- echo "orca.settings.enableMagnifier = True" >> /root/home/$USERNAME/.orca/user-settings.py
4364- chroot /root chown -R $USERNAME.$USERNAME /home/$USERNAME/.orca
4365- fi
4366- gct -s -t bool /apps/gksu/disable-grab true
4367- gct -s -t string /desktop/gnome/applications/window_manager/default /usr/bin/metacity
4368- 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
4369- kderc_addtoprefixes /usr/share/kubuntu-default-settings/kde-profile/lesser-visual-impairment/,/usr/share/kubuntu-default-settings/kde-profile/moderate-visual-impairment/
4370- ;;
4371- # Blindness
4372- access=v3)
4373- gct -s -t bool /desktop/gnome/interface/accessibility true
4374- gct -s -t bool /apps/gksu/disable-grab true
4375- gct -s -t string /desktop/gnome/applications/window_manager/default /usr/bin/metacity
4376- gct -s -t bool /desktop/gnome/applications/at/visual/startup true
4377- gct -s -t string /desktop/gnome/applications/at/visual/exec orca
4378- remove_applet fast_user_switch
4379- if [ -x /root/usr/bin/pulse-session ]; then
4380- mkdir -p /root/var/lib/pulseaudio
4381- touch /root/var/lib/pulseaudio/pulse_a11y_nostart
4382- chroot /root chown root.root /var/lib/pulseaudio/pulse_a11y_nostart
4383- mkdir -p /root/home/$USERNAME/.pulse
4384- echo "autospawn = no" > /root/home/$USERNAME/.pulse/client.conf
4385- chroot /root chown -R $USERNAME.$USERNAME /home/$USERNAME/.pulse
4386- fi
4387- 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
4388- if [ -x /root/usr/bin/orca ]; then
4389- mkdir -p /root/home/$USERNAME/.orca
4390- chroot /root chown -R $USERNAME.$USERNAME /home/$USERNAME/.orca
4391- fi
4392- ;;
4393- # Braille
4394- braille=ask)
4395- gct -s -t bool /desktop/gnome/interface/accessibility true
4396- gct -s -t bool /desktop/gnome/applications/at/visual/startup true
4397- gct -s -t string /desktop/gnome/applications/at/visual/exec orca
4398- if [ -x /root/usr/bin/orca ]; then
4399- mkdir -p /root/home/$USERNAME/.orca
4400- echo "import orca.settings" >> /root/home/$USERNAME/.orca/user-settings.py
4401- echo "orca.settings.enableSpeech = False" >> /root/home/$USERNAME/.orca/user-settings.py
4402- echo "orca.settings.enableBraille = True" >> /root/home/$USERNAME/.orca/user-settings.py
4403- chroot /root chown -R $USERNAME.$USERNAME /home/$USERNAME/.orca
4404- fi
4405- gct -s -t bool /apps/gksu/disable-grab true
4406- gct -s -t string /desktop/gnome/applications/window_manager/default /usr/bin/metacity
4407- remove_applet fast_user_switch
4408- 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
4409- if [ -x /root/usr/bin/pulse-session ]; then
4410- mkdir -p /root/var/lib/pulseaudio
4411- touch /root/var/lib/pulseaudio/pulse_a11y_nostart
4412- chroot /root chown root.root /var/lib/pulseaudio/pulse_a11y_nostart
4413- mkdir -p /root/home/$USERNAME/.pulse
4414- echo "autospawn = no" > /root/home/$USERNAME/.pulse/client.conf
4415- chroot /root chown -R $USERNAME.$USERNAME /home/$USERNAME/.pulse
4416- fi
4417- ;;
4418- # Minor Motor Difficulties
4419- access=m1)
4420- gct -s -t bool /desktop/gnome/accessibility/keyboard/enable true
4421- gct -s -t bool /desktop/gnome/accessibility/keyboard/mousekeys_enable true
4422- gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_enable true
4423- gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_modifier_beep true
4424- gct -s -t bool /desktop/accessibility/gnome/keyboard/stickykeys_two_key_off false
4425- gct -s -t bool /desktop/gnome/peripherals/keyboard/repeat true
4426- gct -s -t int /desktop/gnome/peripherals/keyboard/delay 700
4427- gct -s -t int /desktop/gnome/peripherals/keyboard/rate 10
4428- gct -s -t bool /apps/gksu/disable-grab true
4429- kderc_addtoprefixes /usr/share/kubuntu-default-settings/kde-profile/minor-motor-difficulties/
4430- if [ -e /root/etc/xdg/xfce4/mcs_settings/keyboard.xml ]; then
4431- sed -i 's/0/1/' /root/etc/xdg/xfce4/mcs_settings/keyboard.xml
4432- fi
4433- ;;
4434- # Motor Difficulties - pointing devices
4435- access=m2)
4436- gct -s -t bool /desktop/gnome/accessibility/keyboard/enable true
4437- gct -s -t bool /desktop/gnome/interface/accessibility true
4438- gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_enable true
4439- gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_modifier_beep false
4440- gct -s -t bool /desktop/accessibility/gnome/keyboard/stickykeys_two_key_off false
4441- gct -s -t bool /desktop/gnome/applications/at/mobility/startup true
4442- gct -s -t string /desktop/gnome/applications/at/mobility/exec onboard
4443-
4444- kderc_addtoprefixes /usr/share/kubuntu-default-settings/kde-profile/minor-motor-difficulties/,/usr/share/kubuntu-default-settings/kde-profile/motor-difficulties-pointing-devices/
4445- if [ -e /root/etc/xdg/xfce4/mcs_settings/keyboard.xml ]; then
4446- sed -i '/Sticky/ s/0/1/' /root/etc/xdg/xfce4/mcs_settings/keyboard.xml
4447- fi
4448- ;;
4449- esac
4450+ case $x in
4451+ # Lesser Visual Impairment
4452+ access=v1)
4453+ /root/usr/bin/casper-a11y-enable -initramfs -user="$USERNAME" -chroot=/root -script high-contrast
4454+ ;;
4455+ # Moderate Visual Impairment
4456+ access=v2)
4457+ /root/usr/bin/casper-a11y-enable -initramfs -user="$USERNAME" -chroot=/root -script magnifier
4458+ ;;
4459+ # Blindness
4460+ access=v3)
4461+ /root/usr/bin/casper-a11y-enable -initramfs -user="$USERNAME" -chroot=/root -script blindness
4462+ ;;
4463+ # Braille
4464+ braille=ask)
4465+ /root/usr/bin/casper-a11y-enable -initramfs -user="$USERNAME" -chroot=/root -script braille
4466+ ;;
4467+ # Minor Motor Difficulties
4468+ access=m1)
4469+ /root/usr/bin/casper-a11y-enable -initramfs -user="$USERNAME" -chroot=/root -script keyboard-modifiers
4470+ ;;
4471+ # Motor Difficulties - pointing devices
4472+ access=m2)
4473+ /root/usr/bin/casper-a11y-enable -initramfs -user="$USERNAME" -chroot=/root -script onscreen-keyboard
4474+ ;;
4475+ maybe-ubiquity|only-ubiquity)
4476+ NO_A11Y_DESKTOP_FILE=1
4477+ ;;
4478+ esac
4479 done
4480+
4481+# Write out a desktop file that will be triggered if the screen-reader-enabled
4482+# gsettings key is enabled, to set up the screen reader profile. THis key
4483+# is enabled if the user launches orca with a shortcut key. We don't want
4484+# to write out the file if the user is running oem-config, or botts directly
4485+# into ubiquity, where there is code to deal with the setting of the profile.
4486+if [ -z "$NO_A11Y_DESKTOP_FILE" ]; then
4487+ cat <<EOF > /root/etc/xdg/autostart/screen-reader-profile.desktop
4488+[Desktop Entry]
4489+Type=Application
4490+Name=Screen Reader Accessibility Profile
4491+Exec=/usr/bin/casper-a11y-enable blindness
4492+NoDisplay=true
4493+AutostartCondition=GSettings org.gnome.desktop.a11y.applications screen-reader-enabled
4494+X-GNOME-AutoRestart=false
4495+OnlyShowIn=GNOME;Unity;
4496+EOF
4497+fi
4498 log_end_msg
4499
4500=== modified file 'scripts/casper-bottom/31disable_update_notifier'
4501--- scripts/casper-bottom/31disable_update_notifier 2010-01-05 16:54:40 +0000
4502+++ scripts/casper-bottom/31disable_update_notifier 2015-12-13 00:48:04 +0000
4503@@ -31,4 +31,12 @@
4504 # 'apt-get update' equivalent, so we disable it entirely.
4505 rm -f /root/usr/share/autostart/adept_notifier_auto.desktop
4506
4507+# Upgrading the live CD to new releases is probably not a great plan.
4508+chroot /root dpkg-divert --add --rename --quiet \
4509+ /usr/lib/ubuntu-release-upgrader/check-new-release
4510+ln -sf /bin/true /root/usr/lib/ubuntu-release-upgrader/check-new-release
4511+chroot /root dpkg-divert --add --rename --quiet \
4512+ /usr/lib/ubuntu-release-upgrader/check-new-release-gtk
4513+ln -sf /bin/true /root/usr/lib/ubuntu-release-upgrader/check-new-release-gtk
4514+
4515 log_end_msg
4516
4517=== modified file 'scripts/casper-bottom/32disable_hibernation'
4518--- scripts/casper-bottom/32disable_hibernation 2010-01-05 16:54:40 +0000
4519+++ scripts/casper-bottom/32disable_hibernation 2015-12-13 00:48:04 +0000
4520@@ -20,15 +20,11 @@
4521
4522 log_begin_msg "$DESCRIPTION"
4523
4524-
4525-gpm_version=$(chroot /root /usr/bin/dpkg-query -W --showformat='${Version}' gnome-power-manager 2>/dev/null) || panel_version=""
4526-if [ -n "$gpm_version" ]; then
4527-# casper-reconfigure /root gnome-power-manager
4528- chroot /root sudo -u "$USERNAME" gconftool-2 -s -t bool /apps/gnome-power-manager/general/can_hibernate false
4529-fi
4530-
4531-if [ -d /root/usr/share/kubuntu-default-settings/kde-profile/default/share/config ]; then
4532- echo "disableHibernate=1" >> /root/usr/share/kubuntu-default-settings/kde-profile/default/share/config/guidance-power-managerrc
4533-fi
4534+cat <<EOF > /root/var/lib/polkit-1/localauthority/50-local.d/disable-hibernate.pkla
4535+[Disable hibernate in live system]
4536+Identity=unix-user:*
4537+Action=org.freedesktop.upower.hibernate
4538+ResultActive=no
4539+EOF
4540
4541 log_end_msg
4542
4543=== modified file 'scripts/casper-bottom/33enable_apport_crashes'
4544--- scripts/casper-bottom/33enable_apport_crashes 2010-01-05 16:54:40 +0000
4545+++ scripts/casper-bottom/33enable_apport_crashes 2015-12-13 00:48:04 +0000
4546@@ -20,8 +20,12 @@
4547
4548 log_begin_msg "$DESCRIPTION"
4549
4550-if [ -e /root/etc/default/apport ]; then
4551+# During development releases apport is enabled, no need to change anything;
4552+# for released versions, enable it only for Ubiquity (LP #593606)
4553+if grep -q 'enabled=0' /root/etc/default/apport; then
4554 sed -i 's/enabled=0/enabled=1/' /root/etc/default/apport
4555+ mkdir -p /root/etc/apport/whitelist.d/
4556+ echo "/usr/lib/ubiquity/bin/ubiquity" > /root/etc/apport/whitelist.d/ubiquity
4557 fi
4558
4559 log_end_msg
4560
4561=== added file 'scripts/casper-bottom/34disable_kde_services.OTHER'
4562--- scripts/casper-bottom/34disable_kde_services.OTHER 1970-01-01 00:00:00 +0000
4563+++ scripts/casper-bottom/34disable_kde_services.OTHER 2015-12-13 00:48:04 +0000
4564@@ -0,0 +1,36 @@
4565+#! /bin/sh
4566+
4567+PREREQ=""
4568+DESCRIPTION="Disabling unnecessary KDE services..."
4569+
4570+prereqs()
4571+{
4572+ echo "$PREREQ"
4573+}
4574+
4575+case $1 in
4576+# get pre-requisites
4577+prereqs)
4578+ prereqs
4579+ exit 0
4580+ ;;
4581+esac
4582+
4583+. /scripts/casper-functions
4584+
4585+log_begin_msg "$DESCRIPTION"
4586+
4587+rm -f /root/usr/share/autostart/kab2kabc.desktop
4588+rm -f /root/usr/share/autostart/kaddressbookmigrator.desktop
4589+rm -f /root/usr/share/autostart/korgac.desktop
4590+rm -f /root/usr/share/autostart/printer-applet.desktop
4591+rm -f /root/usr/share/autostart/nepomukserver.desktop
4592+rm -f /root/usr/share/kde4/services/kwalletd.desktop
4593+rm -f /root/usr/share/kde4/services/kded/kpackagekitd.desktop
4594+if [ -z "${PERSISTENT}" ]; then
4595+ rm -f /root/usr/share/kde4/services/kded/freespacenotifier.desktop
4596+fi
4597+rm -f /root/usr/share/kde4/services/plasma-runner-contacts.desktop # starts akonadi
4598+rm -f /root/usr/share/kde4/services/plasma-dataengine-calendar.desktop # starts akonadi
4599+
4600+log_end_msg
4601
4602=== modified file 'scripts/casper-bottom/35fix_language_selector'
4603--- scripts/casper-bottom/35fix_language_selector 2010-01-05 16:54:40 +0000
4604+++ scripts/casper-bottom/35fix_language_selector 2015-12-13 00:48:04 +0000
4605@@ -20,8 +20,10 @@
4606
4607 log_begin_msg "$DESCRIPTION"
4608
4609-if [ -e /root/usr/share/applications/language-selector.desktop ]; then
4610- sed -i '/^Exec/ s|/usr/bin/gnome-language-selector|& -n|' /root/usr/share/applications/language-selector.desktop
4611+if [ -e /rofs/usr/share/applications/language-selector.desktop ]; then
4612+ sed '/^Exec/ s|/usr/bin/gnome-language-selector|& -n|' \
4613+ /rofs/usr/share/applications/language-selector.desktop \
4614+ > /root/usr/share/applications/language-selector.desktop
4615
4616 fi
4617
4618
4619=== removed file 'scripts/casper-bottom/37kubuntu_netbook_installer_link'
4620--- scripts/casper-bottom/37kubuntu_netbook_installer_link 2010-01-05 16:54:40 +0000
4621+++ scripts/casper-bottom/37kubuntu_netbook_installer_link 1970-01-01 00:00:00 +0000
4622@@ -1,28 +0,0 @@
4623-#! /bin/sh
4624-
4625-PREREQ=""
4626-DESCRIPTION="Adding installer to Kubuntu Netbook favourites..."
4627-
4628-prereqs()
4629-{
4630- echo "$PREREQ"
4631-}
4632-
4633-case $1 in
4634-# get pre-requisites
4635-prereqs)
4636- prereqs
4637- exit 0
4638- ;;
4639-esac
4640-
4641-. /scripts/casper-functions
4642-
4643-log_begin_msg "$DESCRIPTION"
4644-
4645-if [ -e "/root/usr/share/kubuntu-netbook-default-settings/share/config/moved_plasma-netbook-appletsrc" ]; then
4646- mv /root/usr/share/kubuntu-netbook-default-settings/share/config/moved_plasma-netbook-appletsrc \
4647- /root/usr/share/kubuntu-netbook-default-settings/share/config/plasma-netbook-appletsrc
4648-fi
4649-
4650-log_end_msg
4651
4652=== modified file 'scripts/casper-bottom/40install_driver_updates'
4653--- scripts/casper-bottom/40install_driver_updates 2010-01-05 16:54:40 +0000
4654+++ scripts/casper-bottom/40install_driver_updates 2015-12-13 00:48:04 +0000
4655@@ -34,7 +34,13 @@
4656 for deb in "/root$install_dir"/*; do
4657 [ -f "$deb" ] || continue
4658 debbase="${deb##*/}"
4659- if ! chroot /root dpkg -i "$install_dir/$debbase"; then
4660+ DEBIAN_HAS_FRONTEND= DEBCONF_REDIR= \
4661+ DEBIAN_FRONTEND=noninteractive \
4662+ chroot /root dpkg -i "$install_dir/$debbase"
4663+ ret=$?
4664+ if [ $ret != 0 ]; then
4665+ DEBIAN_HAS_FRONTEND= DEBCONF_REDIR= \
4666+ DEBIAN_FRONTEND=noninteractive \
4667 chroot /root dpkg -P "${debbase%%_*}"
4668 fi
4669 done
4670
4671=== modified file 'scripts/casper-bottom/41apt_cdrom'
4672--- scripts/casper-bottom/41apt_cdrom 2010-01-05 16:54:40 +0000
4673+++ scripts/casper-bottom/41apt_cdrom 2015-12-13 00:48:04 +0000
4674@@ -18,4 +18,21 @@
4675
4676 . /scripts/casper-functions
4677
4678-chroot /root apt-cdrom -m add
4679+log_begin_msg "$DESCRIPTION"
4680+
4681+# apt-cdrom would fail otherwise
4682+if [ ! -s /root/cdrom/.disk/info ]; then
4683+ exit 0
4684+fi
4685+
4686+mount -n -o bind /sys /root/sys
4687+mount -n -o bind /proc /root/proc
4688+mount -n -o bind /dev /root/dev
4689+chroot /root apt-cdrom -o Acquire::cdrom::mount=/cdrom \
4690+ -o Dir::Media::MountPath=/cdrom \
4691+ -o Acquire::cdrom::AutoDetect=false -m add
4692+umount /root/dev
4693+umount /root/proc
4694+umount /root/sys
4695+
4696+log_end_msg
4697
4698=== removed file 'scripts/casper-bottom/42disable_apparmor'
4699--- scripts/casper-bottom/42disable_apparmor 2010-01-05 16:54:40 +0000
4700+++ scripts/casper-bottom/42disable_apparmor 1970-01-01 00:00:00 +0000
4701@@ -1,26 +0,0 @@
4702-#!/bin/sh
4703-# workaround for AppArmor bug #131976
4704-
4705-PREREQ=""
4706-DESCRIPTION="Disabling AppArmor (does not work with stacked file systems)..."
4707-
4708-prereqs()
4709-{
4710- echo "$PREREQ"
4711-}
4712-
4713-case $1 in
4714-# get pre-requisites
4715-prereqs)
4716- prereqs
4717- exit 0
4718- ;;
4719-esac
4720-
4721-. /scripts/casper-functions
4722-
4723-log_begin_msg "$DESCRIPTION"
4724-
4725-chroot /root update-rc.d -f apparmor remove
4726-
4727-log_end_msg
4728
4729=== modified file 'scripts/casper-bottom/43disable_updateinitramfs'
4730--- scripts/casper-bottom/43disable_updateinitramfs 2010-01-05 16:54:40 +0000
4731+++ scripts/casper-bottom/43disable_updateinitramfs 2015-12-13 00:48:04 +0000
4732@@ -23,25 +23,24 @@
4733
4734 chroot /root dpkg-divert --add --rename --quiet \
4735 /usr/sbin/update-initramfs
4736+
4737 # Running off a USB disk or other writable media.
4738-if [ -w /root/cdrom ] && \
4739- # rw is guaranteed to be first.
4740- grep -q ' /root/cdrom rw[, ]' /proc/self/mountinfo; then
4741- cat > /root/usr/sbin/update-initramfs <<'EOF'
4742-#! /bin/sh
4743-update-initramfs.distrib "$@"
4744-cp /initrd.img /cdrom/casper/initrd.gz
4745-cp /vmlinuz /cdrom/casper/vmlinuz
4746-exit 0
4747-EOF
4748-else
4749- cat > /root/usr/sbin/update-initramfs <<EOF
4750+if [ ! -e /root/usr/sbin/update-initramfs ] && \
4751+ [ ! -L /root/usr/sbin/update-initramfs ]; then
4752+ if [ -w /root/cdrom ] && \
4753+ # rw is guaranteed to be first.
4754+ grep -q ' /root/cdrom rw[, ]' /proc/self/mountinfo; then
4755+
4756+ ln -s /usr/share/casper/casper-update-initramfs \
4757+ /root/usr/sbin/update-initramfs
4758+ else
4759+ cat > /root/usr/sbin/update-initramfs <<EOF
4760 #! /bin/sh
4761 echo "update-initramfs is disabled since running on read-only media"
4762 exit 0
4763 EOF
4764+ chmod 755 /root/usr/sbin/update-initramfs
4765+ fi
4766 fi
4767
4768-chmod 755 /root/usr/sbin/update-initramfs
4769-
4770 log_end_msg
4771
4772=== modified file 'scripts/casper-bottom/44pk_allow_ubuntu'
4773--- scripts/casper-bottom/44pk_allow_ubuntu 2010-01-05 16:54:40 +0000
4774+++ scripts/casper-bottom/44pk_allow_ubuntu 2015-12-13 00:48:04 +0000
4775@@ -1,7 +1,7 @@
4776 #!/bin/sh
4777
4778 PREREQ=""
4779-DESCRIPTION="Grant administrative PolicyKit pivilieges to default user..."
4780+DESCRIPTION="Grant administrative PolicyKit privileges to default user..."
4781
4782 prereqs()
4783 {
4784@@ -21,35 +21,14 @@
4785 log_begin_msg "$DESCRIPTION"
4786
4787 # configure PolicyKit in live session
4788-mkdir -p /root/etc/PolicyKit
4789-cat << EOF > /root/etc/PolicyKit/PolicyKit.conf
4790-<?xml version="1.0" encoding="UTF-8"?> <!-- -*- XML -*- -->
4791-
4792-<!DOCTYPE pkconfig PUBLIC "-//freedesktop//DTD PolicyKit Configuration 1.0//EN"
4793-"http://hal.freedesktop.org/releases/PolicyKit/1.0/config.dtd">
4794-
4795-<!-- See the manual page PolicyKit.conf(5) for file format -->
4796-
4797-<config version="0.1">
4798- <match user="root">
4799- <return result="yes"/>
4800- </match>
4801- <!-- don't ask password for user in live session -->
4802- <match user="$USERNAME">
4803- <return result="yes"/>
4804- </match>
4805- <define_admin_auth group="admin"/>
4806-</config>
4807-EOF
4808-
4809 mkdir -p /root/var/lib/polkit-1/localauthority/10-vendor.d
4810 cat << EOF > /root/var/lib/polkit-1/localauthority/10-vendor.d/10-live-cd.pkla
4811 # Policy to allow the livecd user to bypass policykit
4812 [Live CD user permissions]
4813-Identity=unix-user:$USERNAME
4814+Identity=unix-user:$USERNAME;unix-user:lightdm
4815 Action=*
4816 ResultAny=no
4817-ResultInactive=no
4818+ResultInactive=yes
4819 ResultActive=yes
4820 EOF
4821
4822
4823=== removed file 'scripts/casper-bottom/45disable_guest_account'
4824--- scripts/casper-bottom/45disable_guest_account 2010-01-05 16:54:40 +0000
4825+++ scripts/casper-bottom/45disable_guest_account 1970-01-01 00:00:00 +0000
4826@@ -1,25 +0,0 @@
4827-#!/bin/sh
4828-
4829-PREREQ=""
4830-DESCRIPTION="Disabling gdm guest session functionality..."
4831-
4832-prereqs()
4833-{
4834- echo "$PREREQ"
4835-}
4836-
4837-case $1 in
4838-# get pre-requisites
4839-prereqs)
4840- prereqs
4841- exit 0
4842- ;;
4843-esac
4844-
4845-. /scripts/casper-functions
4846-
4847-log_begin_msg "$DESCRIPTION"
4848-
4849-chroot /root dpkg -P gdm-guest-session || true
4850-
4851-log_end_msg
4852
4853=== added file 'scripts/casper-bottom/45jackd2'
4854--- scripts/casper-bottom/45jackd2 1970-01-01 00:00:00 +0000
4855+++ scripts/casper-bottom/45jackd2 2015-12-13 00:48:04 +0000
4856@@ -0,0 +1,33 @@
4857+#!/bin/sh
4858+
4859+PREREQ=""
4860+DESCRIPTION="Configuring jackd2..."
4861+
4862+prereqs()
4863+{
4864+ echo "$PREREQ"
4865+}
4866+
4867+case $1 in
4868+# get pre-requisites
4869+prereqs)
4870+ prereqs
4871+ exit 0
4872+ ;;
4873+esac
4874+
4875+. /scripts/casper-functions
4876+
4877+log_begin_msg "$DESCRIPTION"
4878+
4879+if fgrep -qs jackd/tweak_rt_limits /tmp/casper-preseed.log; then
4880+ # So far this has only been set in casper's environment. Copy it
4881+ # over to the master files early so that dpkg-reconfigure in /root
4882+ # can see it.
4883+ fgrep jackd/tweak_rt_limits /tmp/casper-preseed.log | \
4884+ chroot /root debconf-set-selections
4885+
4886+ casper-reconfigure /root jackd2
4887+fi
4888+
4889+log_end_msg
4890
4891=== removed file 'scripts/casper-bottom/47unr_ubiquity'
4892--- scripts/casper-bottom/47unr_ubiquity 2010-01-05 16:54:40 +0000
4893+++ scripts/casper-bottom/47unr_ubiquity 1970-01-01 00:00:00 +0000
4894@@ -1,39 +0,0 @@
4895-#!/bin/sh
4896-
4897-PREREQ=""
4898-DESCRIPTION="Set ubiquity favourite for UNR..."
4899-
4900-prereqs()
4901-{
4902- echo "$PREREQ"
4903-}
4904-
4905-case $1 in
4906-# get pre-requisites
4907-prereqs)
4908- prereqs
4909- exit 0
4910- ;;
4911-esac
4912-
4913-. /scripts/casper-functions
4914-
4915-log_begin_msg "$DESCRIPTION"
4916-
4917-gconf_version=$(chroot /root /usr/bin/dpkg-query -W --showformat='${Version}' gconf2 2>/dev/null) || gconf_version=""
4918-
4919-gct() {
4920- if [ "$gconf_version" ]; then
4921- chroot /root sudo -u "$USERNAME" gconftool-2 "$@"
4922- fi
4923-}
4924-
4925-if ! gct -g /apps/netbook-launcher/favorites/favorites_list | grep -q ubiquity; then
4926- gct -s -t string /apps/netbook-launcher/favorites/ubiquity/type application
4927- gct -s -t string /apps/netbook-launcher/favorites/ubiquity/desktop_file /usr/share/applications/ubiquity-gtkui.desktop
4928- favs=$(gct -g /apps/netbook-launcher/favorites/favorites_list)
4929- gct -s -t list --list-type=string /apps/netbook-launcher/favorites/favorites_list $(echo "$favs" | sed -e 's/]$/,ubiquity]/')
4930-fi
4931-
4932-log_end_msg
4933-
4934
4935=== removed file 'scripts/casper-bottom/48enable_kubuntu_netbook'
4936--- scripts/casper-bottom/48enable_kubuntu_netbook 2010-01-27 13:56:03 +0000
4937+++ scripts/casper-bottom/48enable_kubuntu_netbook 1970-01-01 00:00:00 +0000
4938@@ -1,27 +0,0 @@
4939-#! /bin/sh
4940-
4941-PREREQ=""
4942-DESCRIPTION="Enabling Plasma Netbook workspace if appropriate..."
4943-
4944-prereqs()
4945-{
4946- echo "$PREREQ"
4947-}
4948-
4949-case $1 in
4950-# get pre-requisites
4951-prereqs)
4952- prereqs
4953- exit 0
4954- ;;
4955-esac
4956-
4957-. /scripts/casper-functions
4958-
4959-log_begin_msg "$DESCRIPTION"
4960-
4961-if [ -e "/root/usr/share/autostart/plasma-netbook.desktop" ]; then
4962- sed -i "s,Hidden=true,," /root/usr/share/autostart/plasma-netbook.desktop
4963-fi
4964-
4965-log_end_msg
4966
4967=== added file 'scripts/casper-bottom/48kubuntu_disable_restart_notifications'
4968--- scripts/casper-bottom/48kubuntu_disable_restart_notifications 1970-01-01 00:00:00 +0000
4969+++ scripts/casper-bottom/48kubuntu_disable_restart_notifications 2015-12-13 00:48:04 +0000
4970@@ -0,0 +1,5 @@
4971+#! /bin/sh
4972+
4973+if [ -d /root/usr/share/kubuntu-default-settings/ ]; then
4974+ echo "[Event]\nhideRestartNotifier=true" >> /root/usr/share/kubuntu-default-settings/kde4-profile/default/share/config/notificationhelper
4975+fi
4976
4977=== added file 'scripts/casper-bottom/49kubuntu_mobile_session'
4978--- scripts/casper-bottom/49kubuntu_mobile_session 1970-01-01 00:00:00 +0000
4979+++ scripts/casper-bottom/49kubuntu_mobile_session 2015-12-13 00:48:04 +0000
4980@@ -0,0 +1,5 @@
4981+#! /bin/sh
4982+
4983+if [ -d /root/usr/share/kubuntu-mobile-default-settings/ ]; then
4984+ cp /root/usr/share/kubuntu-mobile-default-settings/share/nodm /root/etc/default/nodm
4985+fi
4986
4987=== added file 'scripts/casper-bottom/50ubiquity-bluetooth-agent'
4988--- scripts/casper-bottom/50ubiquity-bluetooth-agent 1970-01-01 00:00:00 +0000
4989+++ scripts/casper-bottom/50ubiquity-bluetooth-agent 2015-12-13 00:48:04 +0000
4990@@ -0,0 +1,8 @@
4991+#!/bin/sh
4992+
4993+if [ -f /root/usr/bin/ubiquity-bluetooth-agent ] &&
4994+ [ -f /root/usr/bin/bluetooth-applet ] &&
4995+ [ ! -L /root/usr/bin/bluetooth-applet ]; then
4996+ chroot /root dpkg-divert --package casper --divert /usr/bin/bluetooth-applet.orig --rename /usr/bin/bluetooth-applet
4997+ ln -s ubiquity-bluetooth-agent /root/usr/bin/bluetooth-applet
4998+fi
4999
5000=== modified file 'scripts/casper-functions'
The diff has been truncated for viewing.

Subscribers

People subscribed via source and target branches