GNOME Bugzilla – Bug 723867
Cannot find D-Bus machine-id file on FreeBSD
Last modified: 2017-04-10 08:58:24 UTC
GDBus hardcodes the D-Bus machine-id file path as /etc/machine-id and /var/lib/dbus/machine-id. However, FreeBSD uses /var/db/dbus/machine-id as the D-Bus machine-id file, so GLib cannot find it.
There's no hard-coding here as the file /var/lib/dbus/machine-id (now superseeded by /etc/machine-id) is part of the interface. I think the solution is for FreeBSD to either fix its dbus packages or make /etc/machine-id be a symlink pointing to /var/db/dbus/machine-id. This should probably be closed NOTABUG or NOTOURBUG.
David: I originally thought that this was the case as well ("part of the interface"). I was quite surprised to discover that there is no mention of machine-id in the D-Bus specification at all...
Yes, the D-Bus specification is very much half-finished, unfortunately. I think this is a case of "oops, this should have been in the spec but it isn't, doh!" instead of "this should not be in the spec".
So we should get it in the spec :) I have a hard time telling FreeBSD to change how they do something on the say-so of "we meant to put this in the spec, but just forgot".
D-Bus package in FreeBSD was updated to use /var/lib/dbus/machine-id: https://svnweb.freebsd.org/changeset/ports/431187 I think we can close this bug now.