Hi, Now, I'm looking for a method to a service be activated on special DBus signal. If a process is running for waiting some of DBus signal this can be useful.
I already told with Simon in DBus mailing list. see this thread: http://lists.freedesktop.org/archives/dbus/2015-March/016607.html Simon said: "If it did, there are some nasty ordering constraints - I certainly wouldn't want to have to delay delivery of a broadcast until all interested services had started up! - so I don't think adding this feature would be a good idea." How about also support for DBus signal? My idea is... Add new configuration directory. (e.g. "/etc/systemd/active-by-signal") And service can install its configuration file on there with below format. (Please don't care of its detail. It just a example.) <signal> <listen dest="org.freedesktop.DBus"> <listen interface="org.freedesktop.DBus.Properties"> <listen object="/org/freedesktop/systemd1/unit/systemd_2dlogind_2eservice"> <listen member="PropertiesChanged"> </signal> (I thought more appropriate .xml format better than .ini to define multiple signal.) Then, make systemd to monitor DBus. And if a matched signal was sent, activate the service. Until here, looks not much difficult. But the origin signal was already sent. So if the service has its own bus then send a method call for missed signal. Of course, the activated service has to handle those method call. This method can be seemed does not make sense. But I think, this facility obviously useful. Thank you in advance for comment. WaLyong _______________________________________________ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel