On May 18, 2011, at 4:13 PM, Mike Alexander wrote: > Although my main machine is a Mac running Snow Leopard, I normally use the > X11 version of GnuCash. However this week I decided to give the Quartz > version a try to see what it is like. I downloaded the app bundle from > sourceforge and gave it a try (as well as building it from source various > ways). The app bundle worked well, but I have a few suggestions. > > First, I noticed that the About dialog says it's version 2.4.5 built on > 2011-04-05 from r20417. However, r20417 is actually version 2.4.4 from about > 2011-03-13. I don't know which is wrong, the version number or the SVN > revision, but they are inconsistent. Version 2.4.5 was the first from the > new 2.4 branch, perhaps the code that gets the SVN revision doesn't work if > it's not on trunk. > > Second, and perhaps more importantly, I think you can easily fix up the dbus > mess if you upgrade dbus to a newer version. I don't know what version of > dbus you're packaging with the app (it would be useful if sources.txt > included version numbers to answer questions like this), but all versions > since 1.4.1 have included support to integrate dbus with launchd on MacOSX. > If you use this you can avoid starting dbus at all and let launchd do it for > you. > > I patched the script in the app bundle as indicated in the attached patch and > it seems to work fine using dbus 1.4.8 installed via MacPorts. I had to > replace libdbus-1.3.dylib in the app bundle, but otherwise everything is > unchanged. My patch assumes the path for the MacPorts dbus, you'll have to > change the ln command to point to the launchd plist wherever you put it in > the bundle.
Thanks. The reason for the dbus dance is to provide a drag-and-drop app bundle rather than an installer. I'm pretty sure that using launchd requires installing dbus somewhere permanent and setting up a launch daemon for it -- which would require using an Installer bundle (a .mpkg) instead. FWIW, direct use of dbus is now discouraged: One is supposed to use gdbus instead, and I've had to hold back the GConf version because recent releases do so and there's a race condition in gdbus that prevents it from connecting on OSX -- or there was in February when I last looked at it. That aside, though, gdbus also provides a hook for a platform-specific dbus replacement. I'd like to do one for OSX using NSUserDefaults and NSNotifications, which would eliminate the need for a dbus daemon entirely. Finding time to do that is a bit of a rub, though. Regards, John Ralls _______________________________________________ gnucash-devel mailing list [email protected] https://lists.gnucash.org/mailman/listinfo/gnucash-devel
