Bug 1091542

Summary: initial-setup requires initial-setup-gui to run
Product: [Fedora] Fedora Reporter: Paul Whalen <pwhalen>
Component: anacondaAssignee: David Shea <dshea>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: anaconda-maint-list, awilliam, dennis, g.kaviyarasu, jonathan, mkolman, pbrobinson, pwhalen, robatino, vanmeeuwen+fedora, vpodzime
Target Milestone: ---   
Target Release: ---   
Hardware: arm   
OS: Linux   
Whiteboard:
Fixed In Version: anaconda-21.35-1 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-05-16 16:36:38 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1043119    

Description Paul Whalen 2014-04-25 20:06:38 UTC
Description of problem:
When attempting to boot a minimal arm image, initial-setup fails to run.

Version-Release number of selected component (if applicable):

initial-setup-0.3.17-1.fc21.armv7hl


Steps to Reproduce:
1. boot minimal arm image or run 'initial-setup'


Actual results:
Error:
ImportError: cannot import name Gtk

Additional info:
After installing initial-setup-gui, the initial-setup program runs (in german BZ#1091470)

Comment 1 Vratislav Podzimek 2014-04-28 08:49:59 UTC
Could you please provide the whole traceback? initial-setup on its own doesn't import Gtk, so the error 'ImportError: cannot import name Gtk' has to come from somewhere else, probably from anaconda.

Comment 2 Vratislav Podzimek 2014-04-28 12:27:18 UTC
The following commit:

commit 6fa26dd55b7a76cf67501024355f39952d498f59
Author: David Shea <dshea>
Date:   Wed Mar 19 16:08:07 2014 -0400

added the import of Gtk to the pyanaconda/ui/helpers.py code that is used from the Anaconda's TUI code.

Comment 3 Vratislav Podzimek 2014-04-29 08:12:53 UTC
*** Bug 1092362 has been marked as a duplicate of this bug. ***

Comment 4 Peter Robinson 2014-04-29 08:52:22 UTC
The traceback is:

Traceback (most recent call last):
  File "/usr/lib/python2.7/runpy.py", line 162, in _run_module_as_main
    "__main__", fname, loader, pkg_name)
  File "/usr/lib/python2.7/runpy.py", line 72, in _run_code
    exec code in run_globals
  File "/usr/lib/python2.7/site-packages/initial_setup/__main__.py", line 105, in <module>
    ui.setup(data)
  File "/usr/lib/python2.7/site-packages/pyanaconda/ui/tui/__init__.py", line 150, in setup
    spokes = self._collectActionClasses(self.paths["spokes"], StandaloneSpoke)
  File "/usr/lib/python2.7/site-packages/pyanaconda/ui/__init__.py", line 159, in _collectActionClasses
    standalones.extend(collect(module_pattern, path, lambda obj: issubclass(obj, standalone_class) and \
  File "/usr/lib/python2.7/site-packages/pyanaconda/ui/common.py", line 615, in collect
    fo, module_path, module_flags)
  File "/usr/lib/python2.7/site-packages/pyanaconda/ui/tui/spokes/source.py", line 37, in <module>
    from pyanaconda.ui.helpers import SourceSwitchHandler
  File "/usr/lib/python2.7/site-packages/pyanaconda/ui/helpers.py", line 68, in <module>
    from gi.repository import Gtk
ImportError: cannot import name Gtk

Comment 5 Adam Williamson 2014-04-29 17:54:36 UTC
To expand on the Alpha blocker nomination: this violates https://fedoraproject.org/wiki/Fedora_21_Alpha_Release_Criteria#Expected_installed_system_boot_behavior , "A working mechanism to create a user account must be clearly presented during installation and/or first boot of the installed system." for ARM minimal disk image deployments. initial-setup should run on first boot of the written image to let you create a user account, but this bug prevents that.

Comment 6 David Shea 2014-05-02 13:53:54 UTC
Posted a patch to move the GUI helper stuff into a different module. initial-setup doesn't use any helper code directly so no initial-setup changes should be needed.