Bug 1398891

Summary: unable to start gui - python errors, wayland
Product: [Fedora] Fedora Reporter: Subhendu Ghosh <sghosh>
Component: solaarAssignee: Eric Smith <spacewar>
Status: CLOSED NOTABUG QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: urgent Docs Contact:
Priority: unspecified    
Version: 25CC: j, richardfearn, sghosh, spacewar
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-12-12 02:30:15 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:

Description Subhendu Ghosh 2016-11-27 04:23:31 UTC
Description of problem:
#sudo solaar

No protocol specified
Unable to init server: Could not connect: Connection refused
No protocol specified
Unable to init server: Could not connect: Connection refused
/usr/lib/python2.7/site-packages/solaar/gtk.py:34: PyGIWarning: Gtk was imported without specifying a version first. Use gi.require_version('Gtk', '3.0') before import to ensure that the right version gets loaded.
  __import__(module)
/usr/lib/python2.7/site-packages/solaar/ui/notify.py:33: PyGIWarning: Notify was imported without specifying a version first. Use gi.require_version('Notify', '0.7') before import to ensure that the right version gets loaded.
  from gi.repository import Notify
No protocol specified
Unable to init server: Could not connect: Connection refused

(solaar:2534): Gtk-WARNING **: cannot open display: :0


Version-Release number of selected component (if applicable):
rpm -q solaar
solaar-0.9.2-4.20150528gitcf27328.fc25.4.noarch

How reproducible:
always

Steps to Reproduce:
1.start solaar
2.
3.

Actual results:


Expected results:


Additional info:

Comment 1 Richard Fearn 2016-11-27 11:51:33 UTC
I see the same when running solaar using sudo. But that shouldn't be necessary. Can you not run it as yourself? That seems to work for me on F25.

Comment 2 Richard Fearn 2016-11-27 11:54:50 UTC
Incidentally, the Python errors are benign as far as I can tell so these messages:

> /usr/lib/python2.7/site-packages/solaar/gtk.py:34: PyGIWarning: Gtk was
> imported without specifying a version first. Use gi.require_version('Gtk',
> '3.0') before import to ensure that the right version gets loaded.
>   __import__(module)
> /usr/lib/python2.7/site-packages/solaar/ui/notify.py:33: PyGIWarning: Notify
> was imported without specifying a version first. Use
> gi.require_version('Notify', '0.7') before import to ensure that the right
> version gets loaded.
>   from gi.repository import Notify

don't matter whereas these:

> No protocol specified
> Unable to init server: Could not connect: Connection refused
> No protocol specified
> Unable to init server: Could not connect: Connection refused
> [...]
> No protocol specified
> Unable to init server: Could not connect: Connection refused
> 
> (solaar:2534): Gtk-WARNING **: cannot open display: :0

do indicate a problem.

Comment 3 Subhendu Ghosh 2016-11-28 00:20:16 UTC
$ lsmod | grep logi
hid_logitech_hidpp     28672  0
hid_logitech_dj        20480  0
$ uname -r
4.8.8-300.fc25.x86_64

$ solaar
/usr/lib/python2.7/site-packages/solaar/gtk.py:34: PyGIWarning: Gtk was imported without specifying a version first. Use gi.require_version('Gtk', '3.0') before import to ensure that the right version gets loaded.
  __import__(module)
/usr/lib/python2.7/site-packages/solaar/ui/notify.py:33: PyGIWarning: Notify was imported without specifying a version first. Use gi.require_version('Notify', '0.7') before import to ensure that the right version gets loaded.
  from gi.repository import Notify
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/solaar/ui/__init__.py", line 100, in _startup
    window.init()
  File "/usr/lib/python2.7/site-packages/solaar/ui/window.py", line 735, in init
    Gtk.Window.set_default_icon_from_file(_icons.icon_file(NAME.lower()))
TypeError: Argument 0 does not allow None as a value
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/solaar/ui/__init__.py", line 111, in _activate
    app.add_window(window._window)
TypeError: Argument 1 does not allow None as a value

Comment 4 Richard Fearn 2016-12-03 22:56:01 UTC
I don't think the problem you are having is due to Wayland. I am using Wayland, and solaar works fine.

I think this is something to do with the theme you have set. What desktop environment (GNOME 3? KDE?) and theme are you using?

Can you do the following in a Python shell:

  >>> from solaar.ui import icons
  >>> icons._init_icon_paths()
  >>> icons._default_theme.get_search_path()
  >>> icons._default_theme.has_icon("solaar")

Those last two lines should produce some output - please paste it here. Thanks!

Comment 5 Subhendu Ghosh 2016-12-12 02:07:14 UTC
Default F25 GNOME3

$ python
Python 2.7.12 (default, Sep 29 2016, 12:52:02) 
[GCC 6.2.1 20160916 (Red Hat 6.2.1-2)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from solaar.ui import icons
/usr/lib/python2.7/site-packages/solaar/ui/__init__.py:27: PyGIWarning: Gtk was imported without specifying a version first. Use gi.require_version('Gtk', '3.0') before import to ensure that the right version gets loaded.
  from gi.repository import GLib, Gtk
/usr/lib/python2.7/site-packages/solaar/ui/notify.py:33: PyGIWarning: Notify was imported without specifying a version first. Use gi.require_version('Notify', '0.7') before import to ensure that the right version gets loaded.
  from gi.repository import Notify
>>> icons._init_icon_paths()
>>> icons._default_theme.get_search_path()
['/usr/share/solaar/icons', '/home/sghosh/.local/share/icons', '/home/sghosh/.icons', '/home/sghosh/.local/share/flatpak/exports/share/icons', '/var/lib/flatpak/exports/share/icons', '/usr/local/share/icons', '/usr/share/icons', '/home/sghosh/.local/share/flatpak/exports/share/pixmaps', '/var/lib/flatpak/exports/share/pixmaps', '/usr/local/share/pixmaps', '/usr/share/pixmaps']
>>> icons._default_theme.has_icon("solaar")
False
>>>

Comment 6 Subhendu Ghosh 2016-12-12 02:30:15 UTC
just installed latest updates - solaar is back to normal

Comment 7 Richard Fearn 2016-12-12 11:43:10 UTC
Thanks for the update! This:

    >>> icons._default_theme.has_icon("solaar")
    False

would have been a problem, but it sounds like it's OK again now after updates.