Re: [Rpm-maint] [rpm-software-management/rpm] Notify other programs when the rpmdb is changed via DBus (#1249)
Closed #1249 via #1255. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1249#event-5148416356___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Notify other programs when the rpmdb is changed via DBus (#1249)
Yes I realize DBUS API is an entirely different thing. The reason for bringing it up here is to think forward in terms of the names used etc - eg org.rpm.Transaction is something I could imagine wanting to use in such an API, rpm.org.announce probably not. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1249#issuecomment-638864076___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Notify other programs when the rpmdb is changed via DBus (#1249)
Well, DBus is not the same as DBus. There are two things you can do there: This thing here is just sending signals. They go to the bus and are then relayed to everyone subscribing to them. I don't know that much about DBus but I would hope sending a few thousands signals shouldn't hurt anyone. By design there is no way for 3rd party processes to talk back to rpm. They either listen or they don't. This also means we need to send everything we think anyone might need. Offering an RPM interface on DBus is a very different thing. This either needs some daemon or some bus-activated service - which is basically also a daemon. This allows users to basically do remote procedure calls to this daemon and get data back as a result. The DBus actually supports a tree like structure for making objects available and has some build in introspection interface. If we really want to add something like this we should probably talk to the DNF folks who are working on a daemon on their own. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1249#issuecomment-638800378___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Notify other programs when the rpmdb is changed via DBus (#1249)
On a side-note, this whole thing once again makes me think that we really should have a proper DBUS API for rpm. Yet another thing we should've had ten years ago already. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1249#issuecomment-638768874___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Notify other programs when the rpmdb is changed via DBus (#1249)
Yup, thinking this some more, we don't want to spam the bus with stuff that most likely nobody will care about. There probably are some things we can announce (beginning and end of transactions maybe) but IIRC/AIUI for most part dbus should be about subscriptions. My memories on this front are rusty and old, we better check out what's there nowadays. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1249#issuecomment-638752119___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
Re: [Rpm-maint] [rpm-software-management/rpm] Notify other programs when the rpmdb is changed via DBus (#1249)
Question here is what to actually send over the bus. For the initial use case just announcing the end of a transaction is enough. This allows long running processes to clue in on other tools changing the rpmdb. But there is obviously more that could be done: Announcing the start of a transaction may be used to signal in the UI that the rpmdb is currently blocked and the user has to wait before doing any transactions themselves. We could also send over the content of the transaction (may be as operation, NEVRA, hash, id tuples) or send each package that just finished. Otoh this may be seen as an invitation to do something like triggers outside of rpm. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1249#issuecomment-638158114___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint
[Rpm-maint] [rpm-software-management/rpm] Notify other programs when the rpmdb is changed via DBus (#1249)
See https://bugzilla.redhat.com/show_bug.cgi?id=1816123 for initial request. Using DBus would allow pushing even more information like what packages got installed/removed etc. This will be based on DBus signals as we (obviously) won't turn RPM into a daemon. During the transaction signals are going out onto the system bus but there will be no way to call into the RPM process or to query the rpmdb via DBus. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/issues/1249___ Rpm-maint mailing list Rpm-maint@lists.rpm.org http://lists.rpm.org/mailman/listinfo/rpm-maint