Merge lp:~xnox/ubiquity/r-proposed into lp:ubiquity

Proposed by Dimitri John Ledkov on 2012-11-26
Status: Merged
Merged at revision: 5771
Proposed branch: lp:~xnox/ubiquity/r-proposed
Merge into: lp:ubiquity
Diff against target: 506 lines (+111/-69)
9 files modified
bin/oem-config-firstboot (+0/-8)
debian/changelog (+12/-0)
gui/gtk/ubiquity.ui (+51/-32)
partman/commit.d/unmount_busy (+8/-0)
ubiquity/frontend/gtk_ui.py (+9/-14)
ubiquity/i18n.py (+1/-5)
ubiquity/plugins/ubi-language.py (+2/-6)
ubiquity/plugins/ubi-partman.py (+27/-2)
ubiquity/plugins/ubi-timezone.py (+1/-2)
To merge this branch: bzr merge lp:~xnox/ubiquity/r-proposed
Reviewer Review Type Date Requested Status
Colin Watson 2012-11-26 Approve on 2012-11-26
Review via email: mp+136165@code.launchpad.net

Description of the change

I'm planning to land this today, if there are no objections.

To post a comment you must log in.
Colin Watson (cjwatson) wrote :

Looks OK to me. Thanks!

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'bin/oem-config-firstboot'
2--- bin/oem-config-firstboot 2012-03-21 20:39:21 +0000
3+++ bin/oem-config-firstboot 2012-11-26 13:11:19 +0000
4@@ -35,14 +35,6 @@
5 # Remove the oem-config-prepare menu item.
6 rm -f /usr/share/applications/oem-config-prepare-gtk.desktop \
7 /usr/share/applications/kde4/oem-config-prepare-kde.desktop
8-# Adjust fontconfig configuration, if possible.
9-if type fontconfig-voodoo >/dev/null 2>&1; then
10- RET="$(echo GET debian-installer/locale | debconf-communicate)"
11- if [ "${RET%% *}" = 0 ]; then
12- LC_ALL="${RET#* }" fontconfig-voodoo --auto --force --quiet \
13- || true
14- fi
15-fi
16 # Run a command just before starting oem-config.
17 RET="$(echo GET oem-config/early_command | debconf-communicate)" || true
18 if [ "${RET%% *}" = 0 ]; then
19
20=== modified file 'debian/changelog'
21--- debian/changelog 2012-11-22 16:27:21 +0000
22+++ debian/changelog 2012-11-26 13:11:19 +0000
23@@ -1,7 +1,19 @@
24 ubiquity (2.13.4) UNRELEASED; urgency=low
25
26+ [ Colin Watson ]
27 * Huge pile of minor changes to make ubiquity compatible with pep8 1.3.
28
29+ [ Dmitrijs Ledkovs ]
30+ * Clear "Read release notes or update the installer" if neither action
31+ are possible. (LP: #1066302)
32+ * If there is only one disk & use_device recipe is used, change next step
33+ button to "Install Now". (LP: #1050044)
34+ * When auto-partitioning is not possible, allow to manually partition
35+ the same drive installation medium is on. (LP: #1053030)
36+ * Fix the question_dialog height-for-width (LP: #862270)
37+ * Fonconfig-voodoo is gone, not sure if some other "fontconfig"ury
38+ should be called instead. (LP: #1043031)
39+
40 -- Colin Watson <cjwatson@ubuntu.com> Thu, 22 Nov 2012 16:25:28 +0000
41
42 ubiquity (2.13.3) raring; urgency=low
43
44=== modified file 'gui/gtk/ubiquity.ui'
45--- gui/gtk/ubiquity.ui 2012-09-08 11:14:48 +0000
46+++ gui/gtk/ubiquity.ui 2012-11-26 13:11:19 +0000
47@@ -5,7 +5,6 @@
48 <property name="can_focus">False</property>
49 <child>
50 <object class="GtkMenuItem" id="a11y_high_contrast">
51- <property name="use_action_appearance">False</property>
52 <property name="visible">True</property>
53 <property name="can_focus">False</property>
54 <property name="label" translatable="yes">_High Contrast</property>
55@@ -16,7 +15,6 @@
56 </child>
57 <child>
58 <object class="GtkMenuItem" id="a11y_screen_reader">
59- <property name="use_action_appearance">False</property>
60 <property name="visible">True</property>
61 <property name="can_focus">False</property>
62 <property name="label" translatable="yes">_Screen Reader</property>
63@@ -27,7 +25,6 @@
64 </child>
65 <child>
66 <object class="GtkMenuItem" id="a11y_keyboard_modifiers">
67- <property name="use_action_appearance">False</property>
68 <property name="visible">True</property>
69 <property name="can_focus">False</property>
70 <property name="label" translatable="yes">_Keyboard Modifiers</property>
71@@ -37,7 +34,6 @@
72 </child>
73 <child>
74 <object class="GtkMenuItem" id="a11y_onscreen_keyboard">
75- <property name="use_action_appearance">False</property>
76 <property name="visible">True</property>
77 <property name="can_focus">False</property>
78 <property name="label" translatable="yes">_On-screen Keyboard</property>
79@@ -72,11 +68,9 @@
80 <child>
81 <object class="GtkButton" id="grub_fail_okbutton">
82 <property name="label">gtk-ok</property>
83- <property name="use_action_appearance">False</property>
84 <property name="visible">True</property>
85 <property name="can_focus">True</property>
86 <property name="receives_default">True</property>
87- <property name="use_action_appearance">False</property>
88 <property name="use_underline">True</property>
89 <property name="use_stock">True</property>
90 </object>
91@@ -176,11 +170,9 @@
92 <child>
93 <object class="GtkRadioButton" id="grub_new_device">
94 <property name="label" translatable="yes">Choose a different device to install the bootloader on:</property>
95- <property name="use_action_appearance">False</property>
96 <property name="visible">True</property>
97 <property name="can_focus">True</property>
98 <property name="receives_default">False</property>
99- <property name="use_action_appearance">False</property>
100 <property name="xalign">0</property>
101 <property name="active">True</property>
102 <property name="draw_indicator">True</property>
103@@ -232,11 +224,9 @@
104 <child>
105 <object class="GtkRadioButton" id="grub_no_new_device">
106 <property name="label" translatable="yes">Continue without a bootloader.</property>
107- <property name="use_action_appearance">False</property>
108 <property name="visible">True</property>
109 <property name="can_focus">True</property>
110 <property name="receives_default">False</property>
111- <property name="use_action_appearance">False</property>
112 <property name="xalign">0</property>
113 <property name="active">True</property>
114 <property name="draw_indicator">True</property>
115@@ -310,11 +300,9 @@
116 <child>
117 <object class="GtkRadioButton" id="grub_fail_option">
118 <property name="label" translatable="yes">Cancel the installation.</property>
119- <property name="use_action_appearance">False</property>
120 <property name="visible">True</property>
121 <property name="can_focus">True</property>
122 <property name="receives_default">False</property>
123- <property name="use_action_appearance">False</property>
124 <property name="xalign">0</property>
125 <property name="active">True</property>
126 <property name="draw_indicator">True</property>
127@@ -431,12 +419,10 @@
128 <child>
129 <object class="GtkButton" id="closebutton1">
130 <property name="label">gtk-close</property>
131- <property name="use_action_appearance">False</property>
132 <property name="visible">True</property>
133 <property name="can_focus">True</property>
134 <property name="can_default">True</property>
135 <property name="receives_default">False</property>
136- <property name="use_action_appearance">False</property>
137 <property name="use_underline">True</property>
138 <property name="use_stock">True</property>
139 </object>
140@@ -555,12 +541,10 @@
141 <child>
142 <object class="GtkButton" id="quit_button">
143 <property name="label" translatable="yes">Continue using the live CD</property>
144- <property name="use_action_appearance">False</property>
145 <property name="visible">True</property>
146 <property name="can_focus">True</property>
147 <property name="can_default">True</property>
148 <property name="receives_default">False</property>
149- <property name="use_action_appearance">False</property>
150 <property name="use_underline">True</property>
151 <signal name="clicked" handler="quit_installer" swapped="no"/>
152 </object>
153@@ -573,14 +557,12 @@
154 <child>
155 <object class="GtkButton" id="reboot_button">
156 <property name="label" translatable="yes">Restart now</property>
157- <property name="use_action_appearance">False</property>
158 <property name="visible">True</property>
159 <property name="can_focus">True</property>
160 <property name="has_focus">True</property>
161 <property name="can_default">True</property>
162 <property name="has_default">True</property>
163 <property name="receives_default">False</property>
164- <property name="use_action_appearance">False</property>
165 <property name="use_underline">True</property>
166 <signal name="clicked" handler="reboot" swapped="no"/>
167 </object>
168@@ -593,12 +575,10 @@
169 <child>
170 <object class="GtkButton" id="shutdown_button">
171 <property name="label" translatable="yes">Shutdown now</property>
172- <property name="use_action_appearance">False</property>
173 <property name="visible">True</property>
174 <property name="can_focus">True</property>
175 <property name="can_default">True</property>
176 <property name="receives_default">False</property>
177- <property name="use_action_appearance">False</property>
178 <property name="use_underline">True</property>
179 <signal name="clicked" handler="shutdown" swapped="no"/>
180 </object>
181@@ -816,12 +796,10 @@
182 <child>
183 <object class="GtkButton" id="quit">
184 <property name="label">gtk-quit</property>
185- <property name="use_action_appearance">False</property>
186 <property name="visible">True</property>
187 <property name="can_focus">True</property>
188 <property name="can_default">True</property>
189 <property name="receives_default">True</property>
190- <property name="use_action_appearance">False</property>
191 <property name="use_underline">True</property>
192 <property name="use_stock">True</property>
193 <signal name="clicked" handler="on_quit_clicked" swapped="no"/>
194@@ -835,12 +813,10 @@
195 <child>
196 <object class="GtkButton" id="back">
197 <property name="label">gtk-go-back</property>
198- <property name="use_action_appearance">False</property>
199 <property name="visible">True</property>
200 <property name="can_focus">True</property>
201 <property name="can_default">True</property>
202 <property name="receives_default">True</property>
203- <property name="use_action_appearance">False</property>
204 <property name="use_underline">True</property>
205 <property name="use_stock">True</property>
206 <signal name="clicked" handler="on_back_clicked" swapped="no"/>
207@@ -854,13 +830,11 @@
208 <child>
209 <object class="GtkButton" id="next">
210 <property name="label">Continue</property>
211- <property name="use_action_appearance">False</property>
212 <property name="visible">True</property>
213 <property name="can_focus">True</property>
214 <property name="can_default">True</property>
215 <property name="has_default">True</property>
216 <property name="receives_default">True</property>
217- <property name="use_action_appearance">False</property>
218 <property name="use_underline">True</property>
219 <property name="use_stock">True</property>
220 <signal name="clicked" handler="on_next_clicked" swapped="no"/>
221@@ -981,10 +955,8 @@
222 <child>
223 <object class="GtkButton" id="progress_cancel_button">
224 <property name="label" translatable="yes">_Skip</property>
225- <property name="use_action_appearance">False</property>
226 <property name="can_focus">True</property>
227 <property name="receives_default">True</property>
228- <property name="use_action_appearance">False</property>
229 <property name="use_underline">True</property>
230 <signal name="clicked" handler="on_progress_cancel_button_clicked" swapped="no"/>
231 </object>
232@@ -1028,6 +1000,57 @@
233 </object>
234 </child>
235 </object>
236+ <object class="GtkDialog" id="ubi_question_dialog">
237+ <property name="can_focus">False</property>
238+ <property name="halign">start</property>
239+ <property name="valign">start</property>
240+ <property name="border_width">5</property>
241+ <property name="resizable">False</property>
242+ <property name="modal">True</property>
243+ <property name="window_position">center-on-parent</property>
244+ <property name="type_hint">dialog</property>
245+ <property name="transient_for">live_installer</property>
246+ <child internal-child="vbox">
247+ <object class="GtkBox" id="dialog-vbox14">
248+ <property name="can_focus">False</property>
249+ <property name="halign">start</property>
250+ <property name="valign">start</property>
251+ <property name="orientation">vertical</property>
252+ <property name="spacing">2</property>
253+ <child internal-child="action_area">
254+ <object class="GtkButtonBox" id="dialog-action_area14">
255+ <property name="can_focus">False</property>
256+ <property name="layout_style">end</property>
257+ <child>
258+ <placeholder/>
259+ </child>
260+ <child>
261+ <placeholder/>
262+ </child>
263+ </object>
264+ <packing>
265+ <property name="expand">False</property>
266+ <property name="fill">True</property>
267+ <property name="pack_type">end</property>
268+ <property name="position">0</property>
269+ </packing>
270+ </child>
271+ <child>
272+ <object class="GtkLabel" id="question_label">
273+ <property name="visible">True</property>
274+ <property name="can_focus">False</property>
275+ <property name="label" translatable="yes">label</property>
276+ <property name="wrap">True</property>
277+ </object>
278+ <packing>
279+ <property name="expand">False</property>
280+ <property name="fill">True</property>
281+ <property name="position">1</property>
282+ </packing>
283+ </child>
284+ </object>
285+ </child>
286+ </object>
287 <object class="GtkDialog" id="warning_dialog">
288 <property name="can_focus">True</property>
289 <property name="title" translatable="yes">Abort the installation?</property>
290@@ -1052,12 +1075,10 @@
291 <child>
292 <object class="GtkButton" id="cancelbutton">
293 <property name="label">gtk-cancel</property>
294- <property name="use_action_appearance">False</property>
295 <property name="visible">True</property>
296 <property name="can_focus">True</property>
297 <property name="can_default">True</property>
298 <property name="receives_default">False</property>
299- <property name="use_action_appearance">False</property>
300 <property name="use_underline">True</property>
301 <property name="use_stock">True</property>
302 <signal name="clicked" handler="on_quit_cancelled" swapped="no"/>
303@@ -1071,12 +1092,10 @@
304 <child>
305 <object class="GtkButton" id="exitbutton">
306 <property name="label">gtk-quit</property>
307- <property name="use_action_appearance">False</property>
308 <property name="visible">True</property>
309 <property name="can_focus">True</property>
310 <property name="can_default">True</property>
311 <property name="receives_default">False</property>
312- <property name="use_action_appearance">False</property>
313 <property name="use_underline">True</property>
314 <property name="use_stock">True</property>
315 <signal name="clicked" handler="quit_installer" swapped="no"/>
316
317=== modified file 'partman/commit.d/unmount_busy'
318--- partman/commit.d/unmount_busy 2009-09-09 10:06:30 +0000
319+++ partman/commit.d/unmount_busy 2012-11-26 13:11:19 +0000
320@@ -4,6 +4,14 @@
321 # checks for mounted partitions at startup, but it may still serve as
322 # insurance against partitions being mounted while the partitioner is
323 # running.
324+#
325+# This has saved us a few times when different Desktop Environments
326+# envent a new way to auto-mount partitions.
327+#
328+# But maybe this should skip "locked" partitions in partmans view,
329+# e.g. the installation media on /dev/sda1 as it can handle those
330+# cases.
331+#
332
333 . /lib/partman/lib/base.sh
334
335
336=== modified file 'ubiquity/frontend/gtk_ui.py'
337--- ubiquity/frontend/gtk_ui.py 2012-11-22 16:27:21 +0000
338+++ ubiquity/frontend/gtk_ui.py 2012-11-26 13:11:19 +0000
339@@ -1706,21 +1706,16 @@
340 text = option
341 if text is None:
342 text = option
343- buttons.extend((text, len(buttons) / 2 + 1))
344- dialog = Gtk.Dialog(
345- title, self.live_installer, Gtk.DialogFlags.MODAL, tuple(buttons))
346- vbox = Gtk.Box()
347- vbox.set_orientation(Gtk.Orientation.VERTICAL)
348- vbox.set_border_width(5)
349- label = Gtk.Label(label=msg)
350- label.set_line_wrap(True)
351- label.set_selectable(False)
352- vbox.pack_start(label, True, True, 0)
353- vbox.show_all()
354- dialog.get_content_area().pack_start(vbox, True, True, 0)
355- response = dialog.run()
356+ buttons.append((text, len(buttons) / 2 + 1))
357+
358+ self.ubi_question_dialog.set_title(title)
359+ self.question_label.set_text(msg)
360+ for text, response_id in buttons:
361+ self.ubi_question_dialog.add_button(text, response_id)
362+ self.ubi_question_dialog.show_all()
363+ response = self.ubi_question_dialog.run()
364 self.allow_change_step(saved_allowed_change_step)
365- dialog.hide()
366+ self.ubi_question_dialog.hide()
367 if response < 0:
368 # something other than a button press, probably destroyed
369 return None
370
371=== modified file 'ubiquity/i18n.py'
372--- ubiquity/i18n.py 2012-11-22 16:27:21 +0000
373+++ ubiquity/i18n.py 2012-11-26 13:11:19 +0000
374@@ -30,8 +30,7 @@
375 from ubiquity import misc, im_switch
376
377
378-# if 'just_country' is True, only the country is changing
379-def reset_locale(frontend, just_country=False):
380+def reset_locale(frontend):
381 frontend.start_debconf()
382 di_locale = frontend.db.get('debian-installer/locale')
383 if not di_locale:
384@@ -47,9 +46,6 @@
385 except locale.Error as e:
386 print('locale.setlocale failed: %s (LANG=%s)' % (e, di_locale),
387 file=sys.stderr)
388- if not just_country:
389- misc.execute_root(
390- 'fontconfig-voodoo', '--auto', '--force', '--quiet')
391 im_switch.start_im()
392 return di_locale
393
394
395=== modified file 'ubiquity/plugins/ubi-language.py'
396--- ubiquity/plugins/ubi-language.py 2012-11-22 16:27:21 +0000
397+++ ubiquity/plugins/ubi-language.py 2012-11-26 13:11:19 +0000
398@@ -350,6 +350,8 @@
399 elif self.update_installer:
400 text = i18n.get_string('update_installer_only', lang)
401 self.release_notes_label.set_markup(text)
402+ else:
403+ self.release_notes_label.set_markup('')
404
405 def set_oem_id(self, text):
406 return self.oem_id_entry.set_text(text)
407@@ -745,10 +747,4 @@
408 locale.setlocale(locale.LC_ALL, '')
409 except locale.Error:
410 pass
411- # fontconfig configuration needs to be adjusted based on the
412- # selected locale (from language-selector-common.postinst). Ignore
413- # errors.
414- misc.execute(
415- 'chroot', target, 'fontconfig-voodoo',
416- '--auto', '--force', '--quiet')
417 return rv
418
419=== modified file 'ubiquity/plugins/ubi-partman.py'
420--- ubiquity/plugins/ubi-partman.py 2012-11-22 16:27:21 +0000
421+++ ubiquity/plugins/ubi-partman.py 2012-11-26 13:11:19 +0000
422@@ -271,7 +271,9 @@
423 use_device = self.use_device.get_active()
424 biggest_free = 'biggest_free' in self.extra_options
425 crypto = self.use_crypto.get_active()
426- disks = self.extra_options['use_device'][1]
427+ disks = self.extra_options.get('use_device', [])
428+ if disks:
429+ disks = disks[1]
430 one_disk = len(disks) == 1
431
432 if custom:
433@@ -305,7 +307,7 @@
434 self.show_encryption_passphrase(crypto)
435 self.controller.go_to_page(self.current_page)
436 self.controller.toggle_next_button('install_button')
437- self.plugin_is_install = True
438+ self.plugin_is_install = one_disk
439 self.info_loop(None)
440 return True
441
442@@ -419,6 +421,9 @@
443 elif (self.resize_use_free.get_active() and
444 'biggest_free' in self.extra_options):
445 return True
446+ elif (self.use_device.get_active() and
447+ len(self.extra_options['use_device'][1]) == 1):
448+ return True
449 else:
450 return False
451
452@@ -2052,6 +2057,10 @@
453 '''
454 options = {}
455 release = misc.get_release()
456+ if not operating_systems:
457+ operating_systems = []
458+ if not ubuntu_systems:
459+ ubuntu_systems = []
460 os_count = len(operating_systems)
461 wubi_option = 'wubi' in self.extra_options
462
463@@ -2074,6 +2083,11 @@
464 desc = self.extended_description(q)
465 options['manual'] = PartitioningOption(title, desc)
466
467+ # Panda board without SD-card does not have use_device options
468+ # quit here for now
469+ if 'use_device' not in self.extra_options:
470+ return options
471+
472 if os_count == 0:
473 # "There are no operating systems present" case
474 q = 'ubiquity/partitioner/no_systems_format'
475@@ -2391,6 +2405,17 @@
476 elif question == 'partman/choose_partition':
477 self.autopartition_question = None # not autopartitioning any more
478
479+ if 'manual' not in self.extra_options:
480+ # Couldn't autopartition hence the partAsk page was skipped.
481+ self.extra_options['manual'] = self.manual_desc
482+ options = self.calculate_autopartitioning_options(False, False)
483+ self.ui.set_autopartition_options(options, self.extra_options)
484+ if hasattr(self.ui, 'plugin_on_next_clicked'):
485+ self.ui.plugin_on_next_clicked()
486+ # Here be dragons...
487+ self.preseed('ubiquity/partman-skip-unmount', 'true',
488+ seen=False)
489+
490 if not self.building_cache and self.update_partitions:
491 # Rebuild our cache of just these partitions.
492 self.__state = [['', None, None]]
493
494=== modified file 'ubiquity/plugins/ubi-timezone.py'
495--- ubiquity/plugins/ubi-timezone.py 2012-11-22 16:27:21 +0000
496+++ ubiquity/plugins/ubi-timezone.py 2012-11-26 13:11:19 +0000
497@@ -702,8 +702,7 @@
498
499 def cleanup(self):
500 plugin.Plugin.cleanup(self)
501- self.ui.controller.set_locale(
502- i18n.reset_locale(self.frontend, just_country=True))
503+ self.ui.controller.set_locale(i18n.reset_locale(self.frontend))
504
505
506 class Install(plugin.InstallPlugin):

Subscribers

People subscribed via source and target branches

to status/vote changes: