make link : /usr/lib/systemd/user/dbus.socket ==> /usr/lib/systemd/user/sockets.targe... 63/116063/1 accepted/tizen/common/20170227.042931 accepted/tizen/ivi/20170224.064811 accepted/tizen/mobile/20170224.064744 accepted/tizen/tv/20170224.064751 accepted/tizen/wearable/20170224.064806 submit/tizen/20170223.222428
authorINSUN PYO <insun.pyo@ubuntu1604.playinsun.pe.kr>
Wed, 22 Feb 2017 02:38:43 +0000 (11:38 +0900)
committerINSUN PYO <insun.pyo@samsung.com>
Wed, 22 Feb 2017 22:53:46 +0000 (14:53 -0800)
Until now, dbus.socket of user session  was not running in the sockets.target.
dbus.socket has been triggered by dbus.service's dependencies.
The dbus.service is included in basic.target.

Therefore, there are some dependency issues.
If a service runs before dbus.service, the service can not accesses dbus system.
(Since dbus.socket is not yet activated, so you can not make a dbus connection.)

I have modified dbus.service to be explicitly run in sockets.target.
On the session bus, sockets.target is guaranteed to run before all services.

Signed-off-by: INSUN PYO <insun.pyo@ubuntu1604.playinsun.pe.kr>
Change-Id: Ic46f1a46b458e2017b0025c6e564ac1204eb8cc8
(cherry picked from commit 1beb067e73478b3948980eb19e379a8986dc365a)

packaging/dbus.spec

index a468e26..431fa56 100644 (file)
@@ -149,6 +149,9 @@ install -m 0644 %{SOURCE6} %{buildroot}%{_unitdir_user}/dbus.socket
 mkdir -p %{buildroot}%{_unitdir_user}/basic.target.wants
 ln -sf ../dbus.service %{buildroot}%{_unitdir_user}/basic.target.wants/dbus.service
 
+mkdir -p %{buildroot}%{_unitdir_user}/sockets.target.wants
+ln -sf ../dbus.service %{buildroot}%{_unitdir_user}/sockets.target.wants/dbus.socket
+
 rm -rf %{buildroot}/%{_libdir}/*.la
 rm -rf %{buildroot}/%{_bindir}/dbus-launch
 
@@ -211,6 +214,8 @@ rm -fr %{buildroot}/usr/share/installed-tests/dbus
 %{_unitdir_user}/dbus.socket
 %dir %{_unitdir_user}/basic.target.wants
 %{_unitdir_user}/basic.target.wants/dbus.service
+%dir %{_unitdir_user}/sockets.target.wants
+%{_unitdir_user}/sockets.target.wants/dbus.socket
 %dir %{_unitdir}/dbus.target.wants
 %{_unitdir}/dbus.target.wants/dbus.socket
 %dir %{_unitdir}/multi-user.target.wants