Install python module required by program

quodlibet (my favorite audio player) needs the dbus module for some plugins.

[…]
    from quodlibet.util.dbusutils import dbus_unicode_validate
  File "/nix/store/...-quodlibet-4.6.0/lib/python3.11/site-packages/quodlibet/util/dbusutils.py", line 10, in <module>
    import dbus
ModuleNotFoundError: No module named 'dbus'

So I searched and came to the conclusion that I need python311Packages.dbus-python, which I added to environment.systemPackages. After a rebuild I still receive the same message about the missing module.

  • Does perhaps someone see where I got it wrong?
  • is there an easy way to find which package contains a specific module? (I am not sure I got the right package)

Wrong conclusion, you need to ensure the package itself can see the python module, which requires overriding the package.

1 Like

Okay, looking at the expression in nixpkgs, you can use quodlibet-full instead of quodlibet if you want full plugin support.

1 Like