ldbus icon indicating copy to clipboard operation
ldbus copied to clipboard

Please tag a versioned release

Open hishamhm opened this issue 8 years ago • 12 comments

This rock is at the bottom of a dependency chain for the Awesome WM PulseAudio widget. :)

Also, for a more straightforward installation, wouldn't it be nicer to move the dbus-1.0/ part of the incdir to the #include calls? (And also testing for "dbus-1.0/dbus/dbus.h" in the rockspec instead). It would make luarocks install dbus work right out of the box once a release is made, and it would encode the desired API version in the source code, which I believe is a nice thing for compatibility.

hishamhm avatar Oct 02 '16 04:10 hishamhm

Also, for a more straightforward installation, wouldn't it be nicer to move the dbus-1.0/ part of the incdir to the #include calls? (And also testing for "dbus-1.0/dbus/dbus.h" in the rockspec instead). It would make luarocks install dbus work right out of the box once a release is made, and it would encode the desired API version in the source code, which I believe is a nice thing for compatibility.

Note that DBUS_ARCH_INCDIR is usually in /usr/lib not /usr/include.

daurnimator avatar Oct 03 '16 00:10 daurnimator

Note that DBUS_ARCH_INCDIR is usually in /usr/lib not /usr/include.

Oh, I clearly missed it. In any case, the versioned release helps. :)

As for the location of include dirs, the best way to improve this would be for LuaRocks to support pkgconfig on Unix.

hishamhm avatar Oct 03 '16 01:10 hishamhm

the best way to improve this would be for LuaRocks to support pkgconfig on Unix.

I'm not sure about pkgconfig support. But what about being able to provide some "default" search locations? e.g. in external_dependencies I could suggest searching in /usr/lib/dbus-1.0. This would help with several other projects too.

daurnimator avatar Oct 03 '16 01:10 daurnimator

But what about being able to provide some "default" search locations?

Ah, that could work too! I think both this approach and pkgconfig have complementary pros and cons. Perhaps we could add both.

hishamhm avatar Oct 03 '16 02:10 hishamhm

Reviewing my own code I found two significant bugs, one fixed in HEAD (4e95fff) and one now filed as #6. The latter will require a significant refactor; something I don't have time for.

Do you still want a release?

daurnimator avatar Oct 03 '16 14:10 daurnimator

Do you still want a release?

I ended up going through a different approach here, so I won't be using this immediately. I'll ping you again if it proves necessary again. But thanks in any case!

hishamhm avatar Oct 03 '16 20:10 hishamhm

Hi, I think @hishamhm is referring to my Awesome WM Widget that uses ldbus via a higher level api (also written by me).

I have not bothered you since I saw that development on ldbus had been still for a while, but it would actually be great if you managed to pin a release at your convenience so I can pin my dependencies too. No hurry though, and thank you for writing ldbus!

stefano-m avatar Oct 03 '16 22:10 stefano-m

@stefano-m That's right! For my use case, I ended up going with an ALSA widget for now but I plan to revisit yours in the future. :)

hishamhm avatar Oct 03 '16 23:10 hishamhm

FWIW I use pasystray. What does using an awesome widget do over that? (I can use mouse wheel to scroll over it to change volume; I have bindings from volume up/down keys to just run pactl)

daurnimator avatar Oct 04 '16 00:10 daurnimator

What does using an awesome widget do over that?

That's a bit OT, bu whatever :smile: So, I have started to use the Awesome WM and was unhappy with the widgets I found around: almost all of them use timers and parse text output from command line using io.popen or similar. I wanted to leverage DBus (asynchronous API, and Awesome has also good built-in support for signals) and also have nice icons and took the opportunity to learn some Lua in the meantime. I always thought I'd be the only user of my code.

Regarding this issue. As I said, it would be great if you could tag a version if/when you have time. Of course if my widgets gain any more traction, your library may get more attention as well!

BTW, thanks again for writing ldbus, I wouldn't have been able to write my widgets without it!

stefano-m avatar Oct 04 '16 19:10 stefano-m

https://github.com/daurnimator/ldbus/issues/5#issuecomment-251259000

@hishamhm FYI I have heavily refactored https://github.com/stefano-m/awesome-pulseaudio_widget and have replaced ldbus with lgi. The catch is that it will work on Awesome 4.x only though.

I still have one of my widgets that depend on ldbus, but I hope I will move it to lgi eventually.

ldbus was great to learn DBus and co, but I appreciate that daurnimator is not working actively on it. On the other hand, lgi is actively developed and is also a dependency of Awesome.

(sorry for the OT comment)

stefano-m avatar May 25 '17 14:05 stefano-m

@stefano-m Thanks for the heads up! :)

hishamhm avatar May 25 '17 15:05 hishamhm