Cadence icon indicating copy to clipboard operation
Cadence copied to clipboard

jackdbus not available

Open Cyclic3 opened this issue 6 years ago • 36 comments

When I open cadence, I am greeted with "-- jackdbus is not available --". This prevents me from being able to control jack at all.

I am running debian sid, with a 4.9.0-6-rt-amd64 kernel. I have added both kxstudio repositories, and have installed, amongst other things, jackd2 from the repositories.

Any ideas?

Cyclic3 avatar Mar 15 '18 18:03 Cyclic3

This was before I pushed the new qt5 cadence, so I wonder how can this be... Did you used cadence from the git (installed yourself), or from the kxstudio repos?

In using the repos, please update. cadence was ported to qt5 and updated in the repos. So it will be have differently anyway now, testing welcome.

falkTX avatar Mar 19 '18 08:03 falkTX

Thanks for the reply!

I have tried both repo and git, and both of them have this error.

Cyclic3 avatar Mar 25 '18 16:03 Cyclic3

Do you have python3-dbus.mainloop.pyqt5 package installed? If yes, please paste here the contents of the package. (you can do so by using dpkg -L <pkg>)

falkTX avatar Apr 02 '18 10:04 falkTX

I do have python3-dbus. Here is the output of the command:

$ sudo dpkg -L python3-dbus
/.
/usr
/usr/lib
/usr/lib/python3
/usr/lib/python3/dist-packages
/usr/lib/python3/dist-packages/_dbus_bindings.cpython-36m-x86_64-linux-gnu.so
/usr/lib/python3/dist-packages/_dbus_glib_bindings.cpython-36m-x86_64-linux-gnu.so
/usr/lib/python3/dist-packages/dbus
/usr/lib/python3/dist-packages/dbus/__init__.py
/usr/lib/python3/dist-packages/dbus/_compat.py
/usr/lib/python3/dist-packages/dbus/_dbus.py
/usr/lib/python3/dist-packages/dbus/_expat_introspect_parser.py
/usr/lib/python3/dist-packages/dbus/bus.py
/usr/lib/python3/dist-packages/dbus/connection.py
/usr/lib/python3/dist-packages/dbus/decorators.py
/usr/lib/python3/dist-packages/dbus/exceptions.py
/usr/lib/python3/dist-packages/dbus/gi_service.py
/usr/lib/python3/dist-packages/dbus/glib.py
/usr/lib/python3/dist-packages/dbus/lowlevel.py
/usr/lib/python3/dist-packages/dbus/mainloop
/usr/lib/python3/dist-packages/dbus/mainloop/__init__.py
/usr/lib/python3/dist-packages/dbus/mainloop/glib.py
/usr/lib/python3/dist-packages/dbus/proxies.py
/usr/lib/python3/dist-packages/dbus/server.py
/usr/lib/python3/dist-packages/dbus/service.py
/usr/lib/python3/dist-packages/dbus/types.py
/usr/share
/usr/share/doc
/usr/share/doc/python3-dbus
/usr/share/doc/python3-dbus/NEWS.gz
/usr/share/doc/python3-dbus/README
/usr/share/doc/python3-dbus/changelog.Debian.gz
/usr/share/doc/python3-dbus/changelog.gz
/usr/share/doc/python3-dbus/copyright
/usr/share/lintian
/usr/share/lintian/overrides
/usr/share/lintian/overrides/python3-dbus

Cyclic3 avatar Apr 02 '18 15:04 Cyclic3

then you're missing python3-dbus.mainloop.pyqt5, install that as it is required for DBus access with Qt5 applications.

falkTX avatar Apr 02 '18 16:04 falkTX

I do have that:

sudo apt install python3-dbus.mainloop.pyqt5
Reading package lists... Done
Building dependency tree       
Reading state information... Done
python3-dbus.mainloop.pyqt5 is already the newest version (5.9.2+dfsg-1).
python3-dbus.mainloop.pyqt5 set to manually installed.
The following packages were automatically installed and are no longer required:
  libdns169 libisc166
Use 'sudo apt autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 81 not upgraded.

Cyclic3 avatar Apr 02 '18 17:04 Cyclic3

ok, so as I asked, what is the content of it?

falkTX avatar Apr 02 '18 17:04 falkTX

/.
/usr
/usr/lib
/usr/lib/python3
/usr/lib/python3/dist-packages
/usr/lib/python3/dist-packages/dbus
/usr/lib/python3/dist-packages/dbus/mainloop
/usr/lib/python3/dist-packages/dbus/mainloop/pyqt5.cpython-36m-x86_64-linux-gnu.so
/usr/share
/usr/share/doc
/usr/share/doc/python3-dbus.mainloop.pyqt5
/usr/share/doc/python3-dbus.mainloop.pyqt5/changelog.Debian.gz
/usr/share/doc/python3-dbus.mainloop.pyqt5/changelog.gz
/usr/share/doc/python3-dbus.mainloop.pyqt5/copyright

Cyclic3 avatar Apr 02 '18 17:04 Cyclic3

ok, so I wonder if it's possible to import that. Run this and post the output: python3 -c 'from dbus.mainloop.pyqt5 import DBusQtMainLoop; print("DBus import ok")'

Also, do you have all updates installed? eg: sudo apt-get update; sudo apt-get dist-upgrade

falkTX avatar Apr 02 '18 18:04 falkTX

The first command gives:

Traceback (most recent call last):
File "<string>", line 1, in <module>
ModuleNotFoundError: No module named 'dbus.mainloop.pyqt5'

I cannot perform a dist-upgrade without removing some necessary parts of my system. The kept back packages are these:

cpp cpp-7 cpp-8 default-jdk-headless default-jre default-jre-headless g++ g++-7 g++-7-multilib g++-multilib gcc
  gcc-7 gcc-7-base gcc-7-base:i386 gcc-7-multilib gcc-8-base gcc-8-base:i386 gcc-multilib gfortran gfortran-7 gnat-7
  lib32asan4 lib32atomic1 lib32cilkrts5 lib32gcc-7-dev lib32gcc1 lib32gomp1 lib32itm1 lib32mpx2 lib32quadmath0
  lib32stdc++-7-dev lib32stdc++6 lib32ubsan0 libasan4 libasan5 libatomic1 libcc1-0 libgcc-7-dev libgcc-8-dev libgcc1
  libgcc1:i386 libgfortran-7-dev libgfortran4 libgnat-7 libgnatvsn7 libgomp1 libgomp1:i386 libitm1 liblsan0 libmlt6
  libmpx2 libobjc-7-dev libobjc4 liboctave4 libopenal-data libopenal1 libopenal1:i386 libquadmath0 libstdc++-7-dev
  libstdc++-8-dev libstdc++6 libstdc++6:i386 libtsan0 libubsan0 libubsan1 libx32asan4 libx32atomic1 libx32cilkrts5
  libx32gcc-7-dev libx32gcc1 libx32gomp1 libx32itm1 libx32quadmath0 libx32stdc++-7-dev libx32stdc++6 libx32ubsan0
  octave octave-common

None of these appear to be a part of cadence

Cyclic3 avatar Apr 02 '18 18:04 Cyclic3

Well, those things explain it. python3 cannot import the module needed for dbus in pyqt5 apps. Likely a case of binary or symbols incompatibility, due to partial updated system.

I can't help you here, you need to fix your system first.

falkTX avatar Apr 02 '18 18:04 falkTX

I think, I'll hijack this issue, because I have the same issue.

I think it started some weeks ago (I cannot say exactly, I had no spare time, so I left it in this state and used other methods to start my sound system).

My package contents is exactly like listed above, but the import works (on first sight):

% python3 -c 'from dbus.mainloop.pyqt5 import DBusQtMainLoop; print("DBus import ok")'
DBus import ok

jackdbus runs:

% px jackdbus       # px is a shortcut for some ps with options
harald    4616 ?          0  0.2     /usr/bin/jackdbus auto

I have several package sources (mainly Debian testing mixed with some Ubuntu xenial, artful and kxstudio).

I see "interesting" dependencies:

i A --\ cadence-tools                     2:0.9.0+git20180322v5     2:0.9.0+git20180322v5          3  xenial            
...
  Maintainer: falkTX <[email protected]>
  Architecture: amd64
...
  Source Package: cadence
  Origin: GCC 5:16.04/xenial [amd64]
  Origin URI: http://ppa.launchpad.net/kxstudio-debian/gcc5/ubuntu/pool/main/c/cadence/cadence-tools_0.9.0+git20180322v5
  --\ Depends (11)
...
    --- python3-dbus
    --\ python3-dbus.mainloop.pyqt5 (< 5.9.2+dfsg-1+16.04+xenial+build14) | python3-dbus.mainloop.pyqt5-neonfix
p     python3-dbus.mainloop.pyqt5 5.5.1+df                                                     1    3  xenial
p     python3-dbus.mainloop.pyqt5 5.6+dfsg                                                     500  3  xenial
p     python3-dbus.mainloop.pyqt5 5.7+dfsg                                                     500  3  stable
p     python3-dbus.mainloop.pyqt5 5.7+dfsg                                                     1    3  artful
i     python3-dbus.mainloop.pyqt5-neonfix                                                      500  2  xenial
    --\ python3-dbus.mainloop.pyqt5 (> 5.9.2+dfsg-1+16.04+xenial+build14) | python3-dbus.mainloop.pyqt5-neonfix
i     python3-dbus.mainloop.pyqt5 5.10.1+d                                                     900  3  testing,unstable
p     python3-dbus.mainloop.pyqt5 5.10.1+d                                                     1    3  bionic
i     python3-dbus.mainloop.pyqt5-neonfix                                                      500  2  xenial
...
  --\ Versions of cadence-tools (2)
p A 2:0.8.1+git20170711                                                                       500  0  trusty
i A 2:0.9.0+git20180322v5                                                                     500  3  xenial

In strace I see the import loading the Debian version (which is 36m vs. 35m in "neonfix") stat("/usr/lib/python3/dist-packages/dbus/mainloop/pyqt5.cpython-36m-x86_64-linux-gnu.so", {st_mode=S_IFREG|0644, st_size=23560, ...}) = 0

However, "neonfix" is located in /opt/kxstudio/... and the package depends on python3-dbus.mainloop.pyqt5, but the version of the installed python3-dbus.mainloop.pyqt5 is 5.10.1 which does not match condition (< 5.9.2+dfsg-1+16.04+xenial+build14). python3-dbus.mainloop.pyqt5=5.9.2+dfsg-1+16.04+xenial+build14 (because < and > that version) does not exist in my sources. E: Version '5.9.2+dfsg-1+16.04+xenial+build14' for 'python3-dbus.mainloop.pyqt5' was not found

Is this correct? should neonfix really depend on the normal module? I guess the neonfix module should be loaded instead?

I tried deinstalling the Debian version of python3-dbus.mainloop.pyqt5, but this does not work because of the dependency.

hg42 avatar Apr 21 '18 20:04 hg42

Ok, I tried some older versions of python3-dbus.mainloop.pyqt5 (restricting myself to xenial and Debian, because that usually works with kxstudio), but they all need python 3.5 and I have python 3.6.

The last possibility finally works: python3-dbus.mainloop.pyqt5 5.7+dfsg-6 which is from artful. Version 5.7+dfsg-5 from Debian stable did not work either, because it needs python 3.5, fortunately the version from artful uses/needs python 3.6.

I guess "neonfix" should depend on python3-dbus.mainloop.pyqt5 (< 5.9.2+dfsg-1+16.04+xenial+build14)?

I wonder what the these dependencies are made for:

    --- python3-dbus.mainloop.pyqt5 (< 5.9.2+dfsg-1+16.04+xenial+build14) | python3-dbus.mainloop.pyqt5-neonfix         
    --- python3-dbus.mainloop.pyqt5 (> 5.9.2+dfsg-1+16.04+xenial+build14) | python3-dbus.mainloop.pyqt5-neonfix

I think, in my last post I was wrong, because <x and >x can never match, so it could also be python3-dbus.mainloop.pyqt5-neonfix alone, or do I miss something?

hg42 avatar Apr 21 '18 20:04 hg42

I have the same issue on debian stretch. I see that cadence is installed, but there is no jackd package installed - I am no expert in the land of linux audio chaos, but it seems that cadence is a frontend for that jack thing - so why does it not install jack? Falk, your work is really appreciated, maybe you would like to also test on debian stretch, too, would be really great to know that the developer test stuff on debian stretch before release! KDE neon and other exotics should be kept for experts.

COLABORATI avatar Apr 29 '18 13:04 COLABORATI

Also it is totally unclear to me which one of the many 'jack' packages is needed for cadence to do what it wants to do - what is one more reason to make the needed jack package a dependency on this cadence. There are simply too many options, what is really frustrating. Please make it more easy to understand the linux audio chaos and do not let the user alone with questions like 'which of these bazillion jack packages do i need to install now'?

COLABORATI avatar Apr 29 '18 13:04 COLABORATI

https://github.com/KXStudio/Repository/issues/170

COLABORATI avatar Apr 29 '18 14:04 COLABORATI

I think there is no necesary version of the jackd package. I usually can switch between versions without affecting Cadence. Cadence also has multiple ways to start jack. Additionally, Cadence may even work without jack (I think...not sure), it manages several tools. If Cadence would depend on a specific version of jack, it could only be used by a small set of distributions (in this case debian derivatives, we have a lot of them!). I guess, you would not like this, if your distribution wouldn't be supported, right?

hg42 avatar Apr 29 '18 14:04 hg42

btw. if you only take packages from kxstudio, the set of possibilities should be very small, right? usually the version contains kxstudio if it's something unusual.

hg42 avatar Apr 29 '18 14:04 hg42

so, let's see if I can clear up some bits...

cadence does install JACK, and you already got JACK on your system anyway (it is a base dependency of a lot of applications). There are 2 versions of JACK, 1 and 2. 99% of time we use JACK2, JACK1 is legacy now and should be ignored. It does not matter what you install, JACK as available in the KXStudio repos always has "jackd" and DBus support.

The thing for neon was a workaround I added, because they broke DBus in PyQt5. It is fixed again in 18.04, so it is only a specific package on Ubuntu 16.04 that is broken. This is why the dependency has python3-dbus.mainloop.pyqt5 (< 5.9.2+dfsg-1+16.04+xenial+build14) | python3-dbus.mainloop.pyqt5-neonfix as I know 5.9.2+dfsg-1+16.04+xenial+build14 is a broken package. No need to bother with this if not using neon 16.04.

now, we have 3 different users here, and I am confused now by what exact problem is going on. so let's solve one at a time. @hg42 what distro are you running? what architecture? do you have extra repos installed like ubuntu-toolchain, neon, kde-backports, etc?

falkTX avatar Apr 30 '18 15:04 falkTX

I have a big system 9many packages) and it's a mix, mainly Debian testing but also stable, unstable, Ubuntu xenial, artful and some bionic + several PPAs. Multiarchitecture, but mainly 64bit. 32bit only for a few packages that don't support 64bit and wine. I once had kde installed for test purposes, but currently it's completely erased from the system.

So don't take my system into account too much. However, it only works with sane dependencies.

I'm not sure if I correctly understand the part about the mainloop package. Is the purpose of these dependenies to explicitely exclude the broken package and force installation of the neonfix package?

hg42 avatar May 01 '18 12:05 hg42

my comments about jackd etc. were reactions to @COLABORATI. My system worked after manually installing python3-dbus.mainloop.pyqt5 5.7+dfsg-6 from artful.

hg42 avatar May 01 '18 13:05 hg42

ah ok, so you got things working on your system. About the dependencies and neon, it is as you say - if the version of pyqt5 is one that is known to be broken, the neon-fix package gets installed.

falkTX avatar May 01 '18 17:05 falkTX

FYI...

lately, I installed KDE instead of XFCE, and I got the "-- jackdbus is not available --" issue again (python etc. were upgraded in the process).

I tried python3-dbus.mainloop.pyqt5 version 5.10.1+dfsg-1ubuntu2 (bionic) and 5.11.3+dfsg-1+b1 (testing).

As I said above, "installing python3-dbus.mainloop.pyqt5 5.7+dfsg-6 from artful" solved the problem -- and now again.

Note, that python3-dbus.mainloop.pyqt5-neonfix version 20180318 was installed all the time. The dependencies force the installation of the neonfix package, if a bionic or testing version is installed.

it is also possible to downgrade the cadence packages:

cadence-tools (2:0.8.1+git20170711)
catia (2:0.8.1+git20170711)
claudia (2:0.8.1+git20170711)
cadence (2:0.8.1+git20170711)
python3-dbus.mainloop.pyqt5 (5.11.3+dfsg-1+b1)

but this doesn't work at runtime:

~  % cadence 
Traceback (most recent call last):
  File "/usr/share/cadence/src/cadence.py", line 23, in <module>
    from PyQt4.QtCore import QFileSystemWatcher, QThread
RuntimeError: the sip module implements API v12.0 to v12.3 but the PyQt4.QtCore module requires API v12.4

I also got this error months ago. It seems to be a dependency bug...probably of that sip module.

Can you tell, what's the problem with the python3-dbus.mainloop.pyqt5 module? The neonfix module says it is adding a python 3 version which works for neon. But neon is kind of a rolling version....

This works on my system:

------------------------------------------------------------------------------------------------------------(=1 0s)--(2018-11-06 00:21)--
pts/0 haraldpc:harald  ~  % pk l  python3-dbus.mainloop.pyqt5-neonfix
/.
/usr
/usr/share
/usr/share/doc
/usr/share/doc/python3-dbus.mainloop.pyqt5-neonfix
/usr/share/doc/python3-dbus.mainloop.pyqt5-neonfix/copyright
/usr/share/doc/python3-dbus.mainloop.pyqt5-neonfix/changelog.gz
/opt
/opt/kxstudio
/opt/kxstudio/python3
/opt/kxstudio/python3/dist-packages
/opt/kxstudio/python3/dist-packages/dbus
/opt/kxstudio/python3/dist-packages/dbus/mainloop
/opt/kxstudio/python3/dist-packages/dbus/mainloop/pyqt5.cpython-35m-x86_64-linux-gnu.so
                                                                                                                                         
------------------------------------------------------------------------------------------------------------(=0 1s)--(2018-11-06 00:35)--
pts/0 haraldpc:harald  ~  % pk l python3-dbus.mainloop.pyqt5         
/.
/usr
/usr/lib
/usr/lib/python3
/usr/lib/python3/dist-packages
/usr/lib/python3/dist-packages/dbus
/usr/lib/python3/dist-packages/dbus/mainloop
/usr/lib/python3/dist-packages/dbus/mainloop/pyqt5.cpython-36m-x86_64-linux-gnu.so
/usr/share
/usr/share/doc
/usr/share/doc/python3-dbus.mainloop.pyqt5
/usr/share/doc/python3-dbus.mainloop.pyqt5/changelog.Debian.gz
/usr/share/doc/python3-dbus.mainloop.pyqt5/copyright

this doesn't work:

-----------------------------------------------------------------------------------------------------------(=0 13s)--(2018-11-06 00:41)--
pts/0 haraldpc:harald  ~  % pk l  python3-dbus.mainloop.pyqt5-neonfix
/.
/usr
/usr/share
/usr/share/doc
/usr/share/doc/python3-dbus.mainloop.pyqt5-neonfix
/usr/share/doc/python3-dbus.mainloop.pyqt5-neonfix/copyright
/usr/share/doc/python3-dbus.mainloop.pyqt5-neonfix/changelog.gz
/opt
/opt/kxstudio
/opt/kxstudio/python3
/opt/kxstudio/python3/dist-packages
/opt/kxstudio/python3/dist-packages/dbus
/opt/kxstudio/python3/dist-packages/dbus/mainloop
/opt/kxstudio/python3/dist-packages/dbus/mainloop/pyqt5.cpython-35m-x86_64-linux-gnu.so
                                                                                                                                         
------------------------------------------------------------------------------------------------------------(=0 1s)--(2018-11-06 00:41)--
pts/0 haraldpc:harald  ~  % pk l python3-dbus.mainloop.pyqt5         
/.
/usr
/usr/lib
/usr/lib/python3
/usr/lib/python3/dist-packages
/usr/lib/python3/dist-packages/dbus
/usr/lib/python3/dist-packages/dbus/mainloop
/usr/lib/python3/dist-packages/dbus/mainloop/pyqt5.cpython-36m-x86_64-linux-gnu.so
/usr/lib/python3/dist-packages/dbus/mainloop/pyqt5.cpython-37m-x86_64-linux-gnu.so
/usr/share
/usr/share/doc
/usr/share/doc/python3-dbus.mainloop.pyqt5
/usr/share/doc/python3-dbus.mainloop.pyqt5/NEWS.gz
/usr/share/doc/python3-dbus.mainloop.pyqt5/changelog.Debian.amd64.gz
/usr/share/doc/python3-dbus.mainloop.pyqt5/changelog.Debian.gz
/usr/share/doc/python3-dbus.mainloop.pyqt5/changelog.gz
/usr/share/doc/python3-dbus.mainloop.pyqt5/copyright

May be the neonfix module has to provide 36m and 37m versions? Currently I have Python 3.6.7 on my system, but at some point I already had 3.7, only a few dependencies are preventing this.

hg42 avatar Nov 05 '18 23:11 hg42

I just did a distro-upgrade from ubuntu 17.10 to 18.04

I can start Jack using QJackCtl - and subsequently start and use Carla, but Cadence won't do anything "jackdbus is not available".

I could live with this - but ... I can't connect my secondary usb-card (a recorder), it just hangs with a "please wait" msg.

Question for hg42:

" python3-dbus.mainloop.pyqt5 5.7+dfsg-6" <- how do you install that?

Here is some output:

python3 -c 'from dbus.mainloop.pyqt5 import DBusQtMainLoop; print("DBus import ok")'
ModuleNotFoundError: No module named 'dbus.mainloop.pyqt5'

(same result with 'python -c'

sudo apt install python3-dbus.mainloop.pyqt5
python3-dbus.mainloop.pyqt5 is already the newest version (5.10.1+dfsg-1ubuntu2)

`

acebone avatar Dec 30 '18 12:12 acebone

@acebone I think it's a Debian package (my system is a wild mix of Debian, Ubuntu, some PPAs, in several versions, based on Debian "testing").

For you it might be more practical to search for the package on https://www.debian.org/distrib/packages#search_packages (probably choosing "all" for distribution) and install the deb file manually

hg42 avatar Dec 31 '18 18:12 hg42

I just looked at my package list....I still use:

python3-dbus.mainloop.pyqt5:amd64 5.7+dfsg-6

a quick search on google gave me http://archive.ubuntu.com/ubuntu/pool/universe/p/pyqt5/

interesting: debian stable only has ...5.7-dfsg-5...

and

$ wajig versions python3-dbus.mainloop.pyqt5
python3-dbus.mainloop.pyqt5:amd64/artful 5.7+dfsg-6 uptodate
python3-dbus.mainloop.pyqt5:i386 not installed

(same as apt-show-versions ...)

so it's installed from ubuntu artful

hg42 avatar Dec 31 '18 19:12 hg42

I also tested other versions from my repos:

python3-dbus.mainloop.pyqt5_5.10.1+dfsg-1ubuntu2_amd64.deb (from bionic, works) python3-dbus.mainloop.pyqt5_5.11.3+dfsg-1+b2_amd64.deb (from testing, fails)

EDIT: I could not test the version from debian stable, because it needs python3.5 and I am bound to 3.6 otherwise

so I upgraded it to bionic.

Btw. I use apt preferences to pin the version:

# cat /etc/apt/preferences.d/100--sound
Package: python3-dbus.mainloop.pyqt5
Pin: release a=bionic
Pin-Priority: 1001

(the 1001 might be too high for your system, it forces to always install this version)

hg42 avatar Dec 31 '18 19:12 hg42

feeling the power of a new year coming (good luck everyone!) I tried to rework my system. The python version was pinned to 3.6 by some packages I don't really use. So I installed python3.7, which also needed an upgrade of the mainloop pacakge:

python3-dbus.mainloop.pyqt5:amd64/unstable 5.11.3+dfsg-1+b3

(and still python3-dbus.mainloop.pyqt5-neonfix:amd64/xenial 20180318)

It seems the cadence version didn't update (cadence:all/xenial 2:0.9.0+git20180427v5 seems to be old), but the appearance changed, the tabs are now centered.

Everything seems to work in this configuration.

So, you can use the package from artful or bionic for python3.6 and the package from debian unstable for python3.7.

hg42 avatar Dec 31 '18 20:12 hg42

I was having this same issue of jackdbus not being available in Cadence with an Arch Linux distro, not Debian/Ubuntu.

I searched for about three hours and tinkered with the system, reinstalled packages etc. I found that Qt apps must have this DBusQtMainLoop to use dbus.

Python wasn't able to import DBusQtMainLoop even though I had basically all the packages installed on the system plus extras: (this was 2 hours + in fixing the problem)

On the package manager (pacman): python-dbus, python-dbus-common, python2-dbus, dbus, dbus-glib, pyqt5-common, pyqt4-common, python-pyqt5, python-pyqt4, python2-pyqt5 and the lib32 variants when available for dbus and Jack audio 2 (already with jackdbus working).

On pip (both python2 and python3): dbus-python, PyQt5.

Basically everything even if not needed. Just in case.

Still when I opened an Python CLI on a terminal and tried from dbus.mainloop.pyqt5 import DBusQtMainLoop it said there wasn't a module called dbus.mainloop.pyqt5 so I went to check into the site-packages folder.

Yes indeed there were those required files in the system under the directory /usr/lib/python3.7/site-packages/dbus/mainloop/, there was the pyqt5.so, qt.so, glib.py files.

So why Python wasn't finding these folder / files?

Welp I could get Cadence working again with a hacky non-"committable" fix.

Wasn't hard to find where and what Python script of the entire repo was trying to import this and giving errors: cadence.py, the obvious one I guess.

The "fix" was three lines changed: add these before importing DBusQtMainLoop

import sys sys.path.append('/usr/lib/python3.7/site-packages/dbus/mainloop')

And change from dbus.mainloop.pyqt5 import DBusQtMainLoop to from pyqt5 import DBusQtMainLoop and it worked!!

Yeah, kinda hacky solution, something clearly is wrong here..

I'm not sure if I have some Path stuff wrong (but why, everything else works fine in Python) in my system (honestly this might be the case but wasn't only me with this problem...?) or if this is still a problem however I think this could (?) help here?

Sorry if it's my system specific stuff happening here. I'm kinda new to GitHub and giving feedback / directions to fix a problem but at least I got the program working again with some clues on what is wrong.

Tremeschin avatar Sep 28 '19 17:09 Tremeschin

I started getting this issue after doing this

pip3 install PyQt5==5.10.1 (which also produced package breaks in synaptic)

To resolve the issue, I reinstalled PyQt5

pip3 uninstall PyQt5

then

pip3 install PyQt5

and now Cadence reconnects to JACKDBUS

but I did pip3 install PyQt5==5.10.1 to get Frescobaldi to run which it did after the installing PyQt5 v5.10.1

after correcting the problem with Cadence, Frescobaldi returns the same error again that it had prior to trying the downgrade

ModuleNotFoundError: No module named 'PyQt5.QtWebEngineWidgets'

tank-trax avatar Dec 18 '19 19:12 tank-trax

For anyone that's still stuck on this, I had the same issue on Arch, though it also wasn't following my Qt style guidelines. Ended up using pip3 uninstall PyQt5 and pip3 uninstall dbus-python to solve the style and dbus issues respectively. Wonder if it should have been using a different version installed by the package manager? Who knows?

(please bear in mind I feel this is a risky approach, and was reaaal ready to install them again then and there if it went awry. Hoping this solution hasn't affected other programs)

EDIT: I also had this on my laptop, with none of the above approaches working there. Turns out I just needed to run yay -S jack2 to replace Jack1 with Jack2... Makes sense though, as Jack1 appears to not have DBUS support, at least out of the box: https://github.com/jackaudio/jackaudio.github.com/wiki/Differences-between-jack1-and-jack2

OctarineSourcerer avatar Aug 19 '20 12:08 OctarineSourcerer

I fixed my issue by reinstalling Python QtWebEngineWidgets via apt rather than via pip or pip3

tank-trax avatar Aug 19 '20 15:08 tank-trax

I also ran into this Problem on Debian Bullseye. Cadence stopped after I upgraded dbus-python to version 1.2.18 via pip. After pip3 uninstall dbus-python the apt-installed, older version 1.2.16 started to work immediatly with Cadence. Whats wrong with dbus-python 1.2.18?

pappou99 avatar Dec 20 '21 09:12 pappou99

upgrading stuff via pip is the problem. it messes up with the system provided packages. it can work sometimes, but others it breaks. there is no way to know.

falkTX avatar Dec 20 '21 11:12 falkTX

Greetings! I had the same problem for the past 5 hours, I also couldn't install "jack-audio-connection-kit-dbus" because it was conflicting with "pipewire-jack-audio-connection-kit-0.3.48-1.fc35.x86_64". Here is the ERROR message: Error: Problem: problem with installed package pipewire-jack-audio-connection-kit-0.3.48-1.fc35.x86_64 package pipewire-jack-audio-connection-kit-0.3.48-1.fc35.x86_64 conflicts with jack-audio-connection-kit-dbus provided by jack-audio-connection-kit-dbus-1.9.19-1.fc35.x86_64 package pipewire-jack-audio-connection-kit-0.3.38-1.fc35.x86_64 conflicts with jack-audio-connection-kit-dbus provided by jack-audio-connection-kit-dbus-1.9.19-1.fc35.x86_64 conflicting requests What solved my problem was just adding --allowerasing at the end of the installation command. DO NOT USE --skip-broken, I first tried to use them both at the same time (I do not know what I was thinking, actually) which, of course, did not help at all. Hope it helps!

UPD: Because I removed pipewire jack connection kit, I couldn't get any output from guitarixx (Or rakarrack). I reinstalled that package and proceeded to work with guitarixx + qjackctl alone.

AdiKsOnDev avatar Mar 20 '22 08:03 AdiKsOnDev