firstboot: fix error reporting on "Service VMs" page

Also check for user existence in all required cases, not only when
"default VMs" was selected.
This commit is contained in:
Marek Marczykowski-Górecki 2014-04-08 05:27:18 +02:00
parent 9d8a1f945b
commit d2cc07b04f

View File

@ -44,15 +44,24 @@ class moduleClass(Module):
self.icon = "qubes.png"
self.admin = libuser.admin()
def _showErrorMessage(self, text):
dlg = gtk.MessageDialog(None, 0, gtk.MESSAGE_ERROR, gtk.BUTTONS_OK, text)
dlg.set_position(gtk.WIN_POS_CENTER)
dlg.set_modal(True)
rc = dlg.run()
dlg.destroy()
return None
def apply(self, interface, testing=False):
try:
qubes_users = self.admin.enumerateUsersByGroup('qubes')
if self.radio_servicevms_and_appvms.get_active() and len(qubes_users) < 1:
self._showErrorMessage(_("You must create a user account to create default AppVMs."))
return RESULT_FAILURE
else:
self.qubes_user = qubes_users[0]
if not self.radio_dontdoanything.get_active():
if len(qubes_users) < 1:
self._showErrorMessage(_("You must create a user account to create default VMs."))
return RESULT_FAILURE
else:
self.qubes_user = qubes_users[0]
self.radio_servicevms_and_appvms.set_sensitive(False)
self.radio_onlyservicevms.set_sensitive(False)