! Please note that this is a snapshot of our old Bugzilla server, which is read only since May 29, 2020. Please go to gitlab.xfce.org for our new server !
DBUS headaches
Status:
CLOSED: FIXED
Product:
Xfdesktop
Component:
General

Comments

Description Olivier Fourdan editbugs 2006-09-04 10:46:53 CEST
xfdesktop in RC1 requires DBUS >= 0.34 - It doesn't build on a Sarge. Too bad.

Ok, I'll install the latest 0.92 along with dbus-glib 0.71 (latest).

Now Thunar doesn't build :

thunar-dbus-service.c:31:37: dbus/dbus-glib-bindings.h: No such file or directory
Comment 1 Benedikt Meurer editbugs 2006-09-04 10:53:34 CEST
Created attachment 768 
Possible fix

Hm, looks like the recent dbus-glib bindings dropped header files that were declared public in previous releases. This patch should fix the problem.
Comment 2 Olivier Fourdan editbugs 2006-09-04 21:07:39 CEST
Benny, 

There are two problems here though IMHO.

- Terminal and Thunar support DBUS 0.2x, 0.34 and now 0.9x (all three incompatible API)

- xfdesktop doesn't support DBUS API 0.20, dunno about 0.9x.

We really need to be coherent. By choosing to use DBUS, we knew the API was not stable and was subject to change. Now we must support that decision.

So I think xfdesktop should support a wider range of incompatible DBUS versions.

What do you think ?
Comment 3 Benedikt Meurer editbugs 2006-09-04 23:00:29 CEST
Terminal still supports 0.2x releases, but that's for historic reasons. Thunar supports 0.3x and above. xfdesktop should do the same. The fact that xfdesktop build fails with D-Bus 0.2x is a bug in xfdesktop's configure checks, that should be fixed (i.e. if D-Bus available but < 0.34, disable D-Bus, just like Thunar does).

The API is pretty much stable starting with 0.3x, except for some new symbols which can be tested easily (if required at all), and some header file removals (for whatever reason, maybe the maintainer had too much coffee that day, dunno). Of course the ABI is not, so people will need to recompile with new D-Bus installations, but that's the deal with D-Bus, and that's why it's still optional in all Xfce packages.

Using the GLib bindings tool makes the software somewhat immune to D-Bus API changes, as the details of the D-Bus core API is hidden behind the generated stubs (plus the core is a lot more readable). Both Thunar and xfdesktop use the bindings tool to generate stubs now.

Supporting 0.2x for Thunar - while of course possible - would add a lot of #ifdef's and work-arounds, and is therefore out of question.
Comment 4 Olivier Fourdan editbugs 2006-09-06 17:37:37 CEST
Ok, as long we stay coherent between Thunar and xfdesktop, I'm fine with that.
Comment 5 Olivier Fourdan editbugs 2006-09-19 20:14:37 CEST
Did you commit that patch? I couldn't have a chance to try it unfortunately.
Comment 6 Brian J. Tarricone (not reading bugmail) 2006-09-19 20:33:21 CEST
I made a decision to support two "feature modes":

1) thunar-vfs + dbus
2) no thunar-vfs + no dbus

The third possible configuration, thunar-vfs + no dbus requires extra work that I don't really have the time or inclination to do.

I did somewhat mess up the configure logic: right now if you have thunar-vfs but no dbus, configure will just fail, instead of gracefully disabling file/launcher icons.  Anyway, I opened bug 2344 so I don't forget to fix it.
Comment 7 Benedikt Meurer editbugs 2006-09-21 16:24:05 CEST
Committed with revision 23193.

2006-09-21	Benedikt Meurer <benny@xfce.org>

	* thunar/thunar-dbus-client.c, thunar/thunar-dbus-service.c: Fix build
	  with latest dbus-glib. Bug #2263.

Bug #2263

Reported by:
Olivier Fourdan
Reported on: 2006-09-04
Last modified on: 2009-07-15

People

Assignee:
Brian J. Tarricone (not reading bugmail)
CC List:
1 user

Version

Attachments

Possible fix (834 bytes, patch)
2006-09-04 10:53 CEST , Benedikt Meurer
no flags

Additional information