dbus: remove /var/run from package as it is created on startup
PATCH 1/1 dbus: remove /var/run from package as it is created on startup
/var/run is a tmpfs that is created on startup.
For sysvinit, /var/run/dbus is created by populate-volatiles.sh. For systemd, /var/run/dbus is created implicitly by dbus.socket when creating a listen stream socket at /var/run/dbus/system_bus_socket.
--- meta/recipes-core/dbus/dbus.inc | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-)
meta/recipes-core/dbus/dbus.inc +5 -2
@@ -101,9 +101,9 @@ do_install() { > ${D}${sysconfdir}/default/volatiles/99_dbus - mkdir -p ${D}${localstatedir}/run/dbus ${D}${localstatedir}/lib/dbus + mkdir -p ${D}${localstatedir}/lib/dbus - chown messagebus:messagebus ${D}${localstatedir}/run/dbus ${D}${localstatedir}/lib/dbus + chown messagebus:messagebus ${D}${localstatedir}/lib/dbus chown root:messagebus ${D}${libexecdir}/dbus-daemon-launch-helper chmod 4755 ${D}${libexecdir}/dbus-daemon-launch-helper
@@ -113,6 +113,9 @@ do_install() { # Remove empty testexec directory as we don't build tests rm -rf ${D}${libdir}/dbus-1.0/test + + # Remove /var/run as it is created on startup + rm -rf ${D}${localstatedir}/run } do_install_class-native() {
Signature · 1 line
1.8.2.3
Quoted 15 lines · Jonathan Liu
/var/runis a tmpfs that is created on startup.
For sysvinit,/var/run/dbusis created bypopulate-volatiles.sh. For systemd,/var/run/dbusis created implicitly by dbus.socket when creating a listen stream socket at/var/run/dbus/system_bus_socket.Signed-off-by Jonathan Liu <[email protected]>--- meta/recipes-core/dbus/dbus.inc | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-)meta/recipes-core/dbus/dbus.inc +0
-0
meta/recipes-core/dbus/dbus.inc do_install() { · line 106
Quoted 8 lines
meta/recipes-core/dbus/dbus.inc +2
-2@@ -101,9 +101,9 @@ do_install() { > ${D}${sysconfdir}/default/volatiles/99_dbus - mkdir -p ${D}${localstatedir}/run/dbus ${D}${localstatedir}/lib/dbus + mkdir -p ${D}${localstatedir}/lib/dbus - chown messagebus:messagebus ${D}${localstatedir}/run/dbus ${D}${localstatedir}/lib/dbus + chown messagebus:messagebus ${D}${localstatedir}/lib/dbus
Is what populate-volatiles does truly equivalent? Does this directory need to be owned by messagebus (which is a user created by dbus) iirc?
Cheers,
Richard
Quoted 22 lines · Richard Purdie
Quoted 21 lines · Jonathan Liu
/var/runis a tmpfs that is created on startup.
For sysvinit,/var/run/dbusis created bypopulate-volatiles.sh. For systemd,/var/run/dbusis created implicitly by dbus.socket when creating a listen stream socket at/var/run/dbus/system_bus_socket.Signed-off-by Jonathan Liu <[email protected]>--- meta/recipes-core/dbus/dbus.inc | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-)meta/recipes-core/dbus/dbus.inc +1
-1@@ -101,9 +101,9 @@ do_install() { > ${D}${sysconfdir}/default/volatiles/99_dbus - mkdir -p ${D}${localstatedir}/run/dbus ${D}${localstatedir}/lib/dbus + mkdir -p ${D}${localstatedir}/lib/dbus
Quoted 8 lines
meta/recipes-core/dbus/dbus.inc do_install() { · line 106
Quoted 2 lines
meta/recipes-core/dbus/dbus.inc +1
-1- chown messagebus:messagebus ${D}${localstatedir}/run/dbus ${D}${localstatedir}/lib/dbus + chown messagebus:messagebus ${D}${localstatedir}/lib/dbusIs what populate-volatiles does truly equivalent? Does this directory need to be owned by messagebus (which is a user created by dbus) iirc?
Cheers,
Richard
The dbus recipe writes /etc/default/volatiles/99_dbus.
For sysvinit case, this will cause populate-volatiles.sh to create /var/run/dbus owned by messagebus:messagebus with 0755 permissions so it is the same. The systemd init doesn't use populate-volatiles.sh and it's created implicitly so it is owned by root:root with 0755 permissions.
For distributions using sysvinit (e.g. Debian), /var/run/dbus is typically owned by messagebus:messagebus. There is no dbus user/group in /etc/passwd or /etc/group.
For distributions using systemd (e.g. Arch Linux and Fedora), /var/run/dbus (actually /run/dbus) is typically owned by root:root. There is no messagebus user/group in /etc/passwd or /etc/group, but there is dbus.
Regards,
Jonathan
Quoted 28 lines · Jonathan Liu
Quoted 27 lines · Richard Purdie
Quoted 15 lines · Jonathan Liu
/var/runis a tmpfs that is created on startup.
For sysvinit,/var/run/dbusis created bypopulate-volatiles.sh. For systemd,/var/run/dbusis created implicitly by dbus.socket when creating a listen stream socket at/var/run/dbus/system_bus_socket.Signed-off-by Jonathan Liu <[email protected]>--- meta/recipes-core/dbus/dbus.inc | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-)meta/recipes-core/dbus/dbus.inc +0
-0meta/recipes-core/dbus/dbus.inc do_install() { · line 106
Quoted 8 lines
meta/recipes-core/dbus/dbus.inc +2
-2@@ -101,9 +101,9 @@ do_install() { > ${D}${sysconfdir}/default/volatiles/99_dbus - mkdir -p ${D}${localstatedir}/run/dbus ${D}${localstatedir}/lib/dbus + mkdir -p ${D}${localstatedir}/lib/dbus - chown messagebus:messagebus ${D}${localstatedir}/run/dbus ${D}${localstatedir}/lib/dbus + chown messagebus:messagebus ${D}${localstatedir}/lib/dbusIs what populate-volatiles does truly equivalent? Does this directory need to be owned by messagebus (which is a user created by dbus) iirc?
Quoted 4 lines
Quoted 3 lines
Cheers,
Richard
The dbus recipe writes
/etc/default/volatiles/99_dbus.
That is the piece I'd missed, thanks :).
Cheers,
Richard