Register Guidelines E-Books Search Today's Posts Mark Forums Read

Go Back   MobileRead Forums > E-Book Software > Calibre

Notices

Reply
 
Thread Tools Search this Thread
Old 11-26-2018, 07:50 PM   #1
Thorned Rose
Member
Thorned Rose began at the beginning.
 
Thorned Rose's Avatar
 
Posts: 12
Karma: 10
Join Date: Dec 2017
Location: New Zealand
Device: Kobo Aura H2O (1st Edition)
Exclamation Calibre crashes immediately after the splash [Linux]

Some time ago (and several system updates later, including updates to Calibre) Calibre starting failing to load (crashing?) after the splash screen.
I start Calibre -> The splash screen appears and shows the usual loading. -> The splash screen disappears. -> Calibre does not load. There are no errors. No tray icon. Just nothing.

I'm on Arch Linux with Deepin DE (system is up to date including Calibre).

I tried running Calibre in debug mode (calibre-debug) to no avail. After some hunting I found this command
Code:
calibre-debug -c "from calibre.gui2.main import main; import os, sys; os.fork() != 0 and sys.exit(0); os.setsid(); main()"
from https://bugs.launchpad.net/calibre/+...00/comments/26 (Main thread here: https://bugs.launchpad.net/calibre/+bug/1360200 )

That got Calibre to run. Splash screen appeared followed by Calibre loading. I will be honest and say that I have no idea what that command actually does. I used it as a Hail Mary as I couldn't find anything else and nothing else I tried was working.

However, since running it, Calibre seems to have blitzed my custom columns, preferences, etc. Like Calibre has reset to default but my library is still there. Maybe that command runs Calibre in a 'default mode'?

Here's the terminal output when running Caibre with that command:
Code:
Turning on automatic hidpi scaling
devicePixelRatio: 1.0
logicalDpi: 96.0 x 96.0
physicalDpi: 93.9653179191 x 94.0740740741
Using calibre Qt style: True
[rose@visas-marr ~]$ [0.00] Starting up...
[0.00] Showing splash screen...
[0.12] splash screen shown
[0.12] Initializing db...
[0.17] db initialized
[0.17] Constructing main UI...
DEBUG:    0.0 KoboUtilites::action.py - loading translations
DEBUG:    0.0 KoboUtilites::dialogs.py - loading translations
DEBUG:    0.0 KoboUtilites::action.py - loading translations
DBusExport: Failed to connect to DBUS session bus, with error: To make asynchronous calls, receive signals or export objects, D-Bus connections must be attached to a main loop by passing mainloop=... to the constructor or calling dbus.set_default_main_loop(...)
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: known incorrect sRGB profile
Failed to create system tray icon, your desktop environment probably does not support the StatusNotifier spec https://www.freedesktop.org/wiki/Specifications/StatusNotifierItem/
Device 0 (VID=04e8 and PID=6860) is a Samsung Galaxy models (MTP).
error returned by libusb_claim_interface() = -6LIBMTP PANIC: Unable to initialize device
Error while trying to open MTPDevice(busnum=1, devnum=2, vendor_id=1256, product_id=26720, bcd=1024, serial=u'94cdb40e', manufacturer=u'SAMSUNG', product=u'SAMSUNG_Android') (Driver: <calibre.devices.mtp.driver.MTP_DEVICE object at 0x7f04f55dcad0>)
Traceback (most recent call last):
  File "/usr/lib/calibre/calibre/gui2/device.py", line 295, in detect_device
    dev.open(cd, self.current_library_uuid)
  File "/usr/lib/calibre/calibre/devices/mtp/driver.py", line 126, in open
    BASE.open(self, device, library_uuid)
  File "/usr/lib/calibre/calibre/devices/mtp/base.py", line 26, in synchronizer
    return func(self, *args, **kwargs)
  File "/usr/lib/calibre/calibre/devices/mtp/unix/driver.py", line 220, in open
    connected_device, as_unicode(e)))
OpenFailed: Failed to open MTPDevice(busnum=1, devnum=2, vendor_id=1256, product_id=26720, bcd=1024, serial=u'94cdb40e', manufacturer=u'SAMSUNG', product=u'SAMSUNG_Android'): Error: Unable to open MTP device with busnum=1 and devnum=2, tried 1 such devices
Looking for desktop notifier support from: org.freedesktop.Notifications
org.freedesktop.Notifications found in 0.0 seconds
DEBUG:    0.8 No Kobo Touch, Glo or Mini appears to be connected
DEBUG:    0.8 rebuild_menus - self.supports_ratings=None, self.supports_tiles=None
DEBUG:    0.8 KoboUtilities:set_toolbar_button_tooltip - start: text='None'
DEBUG:    0.8 KoboUtilities:set_toolbar_button_tooltip - setting to text='Utilities to use with Kobo ereaders

Driver: KoboTouchExtended'
DEBUG:    0.0 HttpHelper::__init__: proxy=None
[1.08] main UI initialized...
[1.08] Hiding splash screen
[1.22] splash screen hidden
[1.22] Started up in 1.22 seconds with 79 books
Unable to open device <calibre.devices.android.driver.ANDROID object at 0x7f04f55d3910>
Traceback (most recent call last):
  File "/usr/lib/calibre/calibre/gui2/device.py", line 198, in do_connect
    dev.open(detected_device, self.current_library_uuid)
  File "/usr/lib/calibre/calibre/devices/usbms/device.py", line 826, in open
    self.open_linux()
  File "/usr/lib/calibre/calibre/devices/usbms/device.py", line 572, in open_linux
    %self.__class__.__name__)
DeviceError: Unable to detect the ANDROID disc drive. Either the device has already been ejected, or your kernel is exporting a deprecated version of SYSFS.

Connect to device failed, retrying in 5 seconds...
Continuing on, I search these forums and found this thread which have me the idea of turning the splash screen off.
https://www.mobileread.com/forums/sh...t=crash+splash

I used the above command to start Calibre then when into the Preferences and disabled the splash. Then I tried to start Calibre like normal (i.e. how I used to before it stopped working). It still will not load, however now it comes up with an "ERROR:Startup error" box with the following:
Code:
calibre, version 3.34.0
ERROR: Startup error: There was an error during calibre startup. Parts of calibre may not function. Click Show details to learn more.

Traceback (most recent call last):
  File "/usr/lib/calibre/calibre/gui2/main.py", line 289, in initialize_db_stage2
    self.start_gui(db)
  File "/usr/lib/calibre/calibre/gui2/main.py", line 233, in start_gui
    main.initialize(self.library_path, db, self.listener, self.actions)
  File "/usr/lib/calibre/calibre/gui2/ui.py", line 271, in initialize
    self.system_tray_icon = factory(app_id='com.calibre-ebook.gui').create_system_tray_icon(parent=self, title='calibre')
  File "/usr/lib/calibre/calibre/gui2/dbus_export/widgets.py", line 227, in create_system_tray_icon
    self.register_status_notifier(ans)
  File "/usr/lib/calibre/calibre/gui2/dbus_export/widgets.py", line 221, in register_status_notifier
    self.bus.call_blocking(*args, timeout=1)
  File "/usr/lib/python2.7/site-packages/dbus/connection.py", line 651, in call_blocking
    message, timeout)
DBusException: org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
I have tried uninstalling and reinstalling and double checked the dependencies.

Clearly, something that was updated has caused issues but I have no idea what and I am out of ideas for fixing this myself. Help much appreciated and thanks in advance!
Thorned Rose is offline   Reply With Quote
Old 11-26-2018, 09:52 PM   #2
kovidgoyal
creator of calibre
kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.
 
kovidgoyal's Avatar
 
Posts: 33,724
Karma: 10215826
Join Date: Oct 2006
Location: Mumbai, India
Device: Various
the system tray implementation on your system is broken -- it is not responding to dbus queries. Fix that and you will be fine.
kovidgoyal is offline   Reply With Quote
Advert
Old 11-30-2018, 08:26 PM   #3
Thorned Rose
Member
Thorned Rose began at the beginning.
 
Thorned Rose's Avatar
 
Posts: 12
Karma: 10
Join Date: Dec 2017
Location: New Zealand
Device: Kobo Aura H2O (1st Edition)
Quote:
Originally Posted by kovidgoyal View Post
the system tray implementation on your system is broken -- it is not responding to dbus queries. Fix that and you will be fine.
I went through all my packages to see if there was any weird stray packages related to the system tray and dbus and uninstalled. I tried uninstalling Calibre and all related packages and reinstalled. I had some new updates to my system which included updated dbus packages so ran a system update.

But still Calibre wouldn't run I then tried deleting the existing config folder (/home/user/.config/calibre) and now it runs just fine. So it's something gone bad in the config, I'm just not sure what yet. Ideas on what could possibly be causing issues in the config?
Thorned Rose is offline   Reply With Quote
Old 11-30-2018, 08:33 PM   #4
Thorned Rose
Member
Thorned Rose began at the beginning.
 
Thorned Rose's Avatar
 
Posts: 12
Karma: 10
Join Date: Dec 2017
Location: New Zealand
Device: Kobo Aura H2O (1st Edition)
Using the old gui.py (all other files new-install-default) file causes the following error:

Code:
Traceback (most recent call last):
  File "/usr/lib/calibre/calibre/gui2/main.py", line 289, in initialize_db_stage2
    self.start_gui(db)
  File "/usr/lib/calibre/calibre/gui2/main.py", line 233, in start_gui
    main.initialize(self.library_path, db, self.listener, self.actions)
  File "/usr/lib/calibre/calibre/gui2/ui.py", line 271, in initialize
    self.system_tray_icon = factory(app_id='com.calibre-ebook.gui').create_system_tray_icon(parent=self, title='calibre')
  File "/usr/lib/calibre/calibre/gui2/dbus_export/widgets.py", line 227, in create_system_tray_icon
    self.register_status_notifier(ans)
  File "/usr/lib/calibre/calibre/gui2/dbus_export/widgets.py", line 221, in register_status_notifier
    self.bus.call_blocking(*args, timeout=1)
  File "/usr/lib/python2.7/site-packages/dbus/connection.py", line 651, in call_blocking
    message, timeout)
DBusException: org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
However despite restoring the new-install-default gui.py file, Calibre will now not load - no splash screen, no error.

EDIT: If I reboot my system, Calibre will load fine again. I get a system stop job message on shutdown however.

Last edited by Thorned Rose; 11-30-2018 at 08:38 PM.
Thorned Rose is offline   Reply With Quote
Old 11-30-2018, 09:10 PM   #5
Thorned Rose
Member
Thorned Rose began at the beginning.
 
Thorned Rose's Avatar
 
Posts: 12
Karma: 10
Join Date: Dec 2017
Location: New Zealand
Device: Kobo Aura H2O (1st Edition)
Final update: I restored all my config files and library to the fresh install EXCEPT the gui.py file in the .config. Now Calibre runs fine so it seems to be that it was caused by something different with gui.py....

(I still have to restore my plugins as they seem to be the only thing that hasn't transferred between the two installs)

EDIT: I have opened my original gui.py with the new-install-default in Meld (file comparison) and found that in the new one the line "systray_icon" is set to false whereas in the crashing one, it is set to true.



Of course, none of this explains why having the system tray icon turned on is crashing Calibre. But I don't have the foggiest of how to fix that :/

Last edited by Thorned Rose; 11-30-2018 at 09:12 PM.
Thorned Rose is offline   Reply With Quote
Advert
Old 11-30-2018, 09:54 PM   #6
Thorned Rose
Member
Thorned Rose began at the beginning.
 
Thorned Rose's Avatar
 
Posts: 12
Karma: 10
Join Date: Dec 2017
Location: New Zealand
Device: Kobo Aura H2O (1st Edition)
Putting this here as reference because I can only assume that StatusNotifier is the issue here

https://superuser.com/questions/1224...-18-1-cinnamon
Thorned Rose is offline   Reply With Quote
Old 12-01-2018, 03:16 AM   #7
kovidgoyal
creator of calibre
kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.
 
kovidgoyal's Avatar
 
Posts: 33,724
Karma: 10215826
Join Date: Oct 2006
Location: Mumbai, India
Device: Various
statusNotifier works over dbus. When you turn on the sytem tray icon in calibre settings, it uses dbus to contact the system. You system is not replying, hence the crash.
kovidgoyal is offline   Reply With Quote
Reply

Tags
crash, crashing, linux, splash screen, splashscreen

Thread Tools Search this Thread
Search this Thread:

Advanced Search

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Calibre is not immediately detecting Samsung Galaxy Tab 4 kenmac999 Devices 1 09-02-2015 11:52 PM
Calibre 2.0 crashes at startup under Linux Mint 17 pearl298 Calibre 2 08-29-2014 03:21 PM
Sigil for Mac Crashes Immediately Hobbiworx Sigil 0 12-20-2013 10:38 AM
Turning off calibre splash screen siddharthp Calibre 2 05-23-2011 05:58 AM
Calibre immediately freezes? BrookeJ Calibre 10 10-09-2010 07:26 PM


All times are GMT -4. The time now is 01:55 PM.


MobileRead.com is a privately owned, operated and funded community.