
On Tue, Dec 8, 2009 at 16:00, Will Thompson
However, I can't find a way to feed a bytestring to dbus-core and get back a ReceivedMessage. Is this deliberately not exposed? While it's obviously not useful in general, it would be very useful for Bustle. (The alternative is to construct a fake connection to myself and feed messages down it, I guess.)
It's not exposed at the moment, because I didn't want to commit to a public API until I knew it was going to work. When I get home tonight, I'll add it to the API. Aside from message marshal/unmarshal, are there any other bits of the protocol which would be helpful to expose?
Also, the Haskell bit of Bustle is licensed under the LGPL (v2.1 or later), but dbus-{core,client} are under the GPL v3. Could you be convinced to reconsider the licensing of your packages? D-Bus is often used to allow free and non-free applications to play nicely together, letting free software be used in situations where it would otherwise be passed over; while I for one don't plan to write any non-free D-Bus applications in Haskell any time soon, it'd be nice not to write Haskell off for such applications.
The following bit is just me being a free-software hippy, so take it with a grain of salt, but: There's already a DBus package for Haskell under the BSD 3-clause license at http://hackage.haskell.org/package/DBus. It's a bit awkward to use, because it's a binding to libdbus, but it exists. dbus-core and -client offer developers ease of use in exchange for the developers granting rights to their users. Additionally, as far as I know, the teams porting DBus to Windows and OS X haven't released anything stable / usable yet -- if somebody's using DBus, it's probably on Linux, FreeBSD, etc. If any developers want to develop proprietary software 1) for Linux/BSD 2) in Haskell 3) using D-Bus, I'm sure both of them will take a break from rolling that boulder uphill to ask about relicensing. If it really is an issue -- ie, you'd be willing to use a less-featured library to avoid the GPL -- then please reply and I'll re-license. I don't want to negatively impact anybody else working on free software. But I'd rather keep the license as strong as possible until somebody actually needs it to be weakened.