The REAL Preferred Python Binding Library
Dave Morgan
dbus at 1001111.com
Thu Dec 10 06:15:26 UTC 2020
Hello All,
Sorry to post before I lurk. but I cannot get any of the 3
preferred python approaches to D-Bus interactions to work 100%. The
issues have to with packaging data.
The 3 approaches I am aware of are:
pydbus:
- nice interface
- not maintained
- communicates easily with gnome apps, the example is from
org.gnome.Contacts.SearchProvider through
org.gnome.Shell.SearchProvider2 and works perfectly
- response =
bus_conn.GetResultMetas(bus_conn.GetInitialResultSet([self.full_name]))
- cannot package complex data properly (navit mapping app, D-Bus
method set_destination, requires a format of "(iii)s")
dbus:
- maintained
- does not communicate well with gnome apps
- I cannot get a simple
bus_conn.GetInitialResultSet([self.full_name])) to work in what should
be the same environment as above
- I am aware I build the bus and connection differently
with dbus
- packages everything perfectly, read the format spec, write it
out, it is that easy, other than org.gnome stuff, lol
Gio, GLib:
- very well maintained
- communicates with everything well
- more complex coding required to implement
- difficult to package complex data types like "(iii)s"
- I assume this is due to my personal deficiency of not
understanding something.
- I do feel a sense of pride when I have created something so
complex the interpreter complains that that it is an illegal
GLib.Variant format
At this point I have a python class which encapsulates 2 of the 3
versions (dbus and pydus) and use the connection I need in classes that
use a DBus connection
Which is the preferred python method in 2020? I looked at the perl
bindings and they appear to be no more mature than the python stuff.
If Gio, GLib is the future then I need help with GLib.Variant
I'm new to python,and it has been 25 years since I have done serious C.
My head hurts
The objective to do is integrate a Voice Assistant, Kalliope, into a
Linux OS phone (www.pine64.org)
TIA
Dave
--
Dave Morgan
Senior Consultant, 1001111 Alberta Limited
dave.morgan at 1001111.com
403 399 2442
More information about the dbus
mailing list