hhannine / superpaper

A cross-platform multi monitor wallpaper manager.
MIT License
1.12k stars 46 forks source link

SuperPaper won't start: OnInit returned false, exiting... #8

Closed patoski closed 5 years ago

patoski commented 5 years ago

Hi, I'm running LXQt, dual screen, Void Linux, and Python 3.6.8. When I run SuperPaper in debug mode I get the following:

$ ./superpaper --debug
None
None
None
None
None
None
True
use_hotkeys: True
hkBinding_next: ('control', 'super', 'w')
hkBinding_pause: ('control', 'super', 'shift', 'p')
Traceback (most recent call last):
  File "superpaper.pyw", line 2526, in OnInit
  File "superpaper.pyw", line 2166, in __init__
  File "superpaper.pyw", line 775, in getDisplayData
  File "screeninfo/screeninfo.py", line 412, in get_monitors
  File "screeninfo/screeninfo.py", line 407, in _get_enumerator
NotImplementedError: This environment is not supported.
OnInit returned false, exiting...

The system tray briefly appears and then disappears. Thank you for creating this badly needed program!

hhannine commented 5 years ago

Thanks for the debug output. Unfortunately it sounds like that the monitor data library (screeninfo) that Superpaper uses, does not know how to handle your system. Their stated supported Linux systems are:

GNU/Linux: X11 (through Xinerama) GNU/Linux: DRM (experimental)

Does your system match either of these?

If you're unsure, to verify that this is the cause of your issue would you mind installing screeninfo and trying to get the monitor list from it? From their GitHub page: https://github.com/rr-/screeninfo Install: pip install screeninfo and to get the monitor listing in Python:

from screeninfo import get_monitors get_monitors()

Does this result in the same 'NotImplementedError: This environment is not supported' error message?

patoski commented 5 years ago

Hey, thanks for the kindly response. DRM seems to be working just fine.

$ grep . /sys/class/drm/*/status
/sys/class/drm/card1-DP-1/status:disconnected
/sys/class/drm/card1-HDMI-A-1/status:disconnected
/sys/class/drm/card1-LVDS-1/status:connected
/sys/class/drm/card1-VGA-1/status:connected

However, I still get a NotImplementedError by screeninfo when importing the module into a python command line and doing get_monitors() as you instructed. Guess I'll just have to wait for the experimental support to mature. Thanks for your help!

hhannine commented 5 years ago

No problem! Thanks for verifying the cause of the issue.