Calibre 启动错误:总线名称已存在

Calibre 启动错误:总线名称已存在

我无法启动 calibre 应用程序。我尝试重新安装它。然而,它每次仍然给我以下消息。

calibre, version 2.55.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 276, in initialize_db_stage2
    self.start_gui(db)
  File "/usr/lib/calibre/calibre/gui2/main.py", line 216, in start_gui
    main.initialize(self.library_path, db, self.listener, self.actions)
  File "/usr/lib/calibre/calibre/gui2/ui.py", line 261, 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 232, in create_system_tray_icon
    ans = StatusNotifierItem(parent=parent, title=title, app_id=self.app_id, category=category)
  File "/usr/lib/calibre/calibre/gui2/dbus_export/tray.py", line 44, in __init__
    self.dbus_api = StatusNotifierItemAPI(self, **kw)
  File "/usr/lib/calibre/calibre/gui2/dbus_export/tray.py", line 114, in __init__
    self.dbus_name = BusName(self.name, bus=bus, do_not_queue=True)
  File "/usr/lib/calibre/calibre/utils/dbus_service.py", line 238, in __new__
    raise NameExistsException(name)
NameExistsException: Bus name already exists: org.kde.StatusNotifierItem-3230-1

需要帮助来解决这个问题。

答案1

您是通过 apt-get 安装的吗?我发现 Calibre 相当挑剔且脆弱。

我曾经通过手动重新安装python-dbus软件包来修复上面粘贴的错误,但是相同的修复对于随后再次出现的该错误不起作用。

我最终按照开发人员的建议直接安装了:

sudo -v && wget -nv -O- https://raw.githubusercontent.com/kovidgoyal/calibre/master/setup/linux-installer.py | sudo python -c "import sys; main=lambda:sys.stderr.write('Download failed\n'); exec(sys.stdin.read()); main()"

这导致了[大多] 无故障安装(在 Ubuntu 和 OpenSUSE 上)。

官方安装页面上还有其他安装选项(除了上面列出的选项):

Linux 版 Calibre 下载

此页说明:

请不要使用发行版提供的 calibre 包,因为它们通常有缺陷/过时。请改用下面描述的二进制安装。

我最初忽略了这条建议,因为我通常更喜欢从默认包管理器安装包。但就 Calibre 而言,我花了大量时间排除故障和修复问题,而这些问题最终通过遵循官方安装说明而避免。

如果你做过通过 apt 安装,请确保在尝试上述操作之前删除(卸载)。

相关内容