Re: [PATCH v2] dbus: split -common and -tools out of main package

Luca Boccassi
2020-11-11T10:32:30Z

On Mon, 2020-11-02 at 19:18 +0000, luca.boccassi@gmail.com wrote:
> From: Luca Boccassi <luca.boccassi@microsoft.com>
>
> Certain config files and units are shared between dbus-daemon and
> dbus-broker (available in meta-openembedded), so split them out to
> allow installing dbus-broker without pulling in dbus-daemon and its
> dependencies.
> Stand-alone command line tools can also be used regardless of whether
> the buses are provided by dbus-daemon or dbus-broker, so split them
> out into dbus-tools.
> Finally, move the XML schema files out of the main package and into
> the development package.
>
> All these changes follow the same pattern used by Fedora, which was
> one of the first distro to switch to dbus-broker by default:
>
> https://src.fedoraproject.org/rpms/dbus/blob/master/f/dbus.spec
>
> Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
> ---
> v2: fix FILES_ regex to correctly include all units but the sockets
> in the main package
>
> meta/recipes-core/dbus/dbus_1.12.20.bb | 35 +++++++++++++++-----------
> 1 file changed, 21 insertions(+), 14 deletions(-)
>
> diff --git a/meta/recipes-core/dbus/dbus_1.12.20.bb b/meta/recipes-core/dbus/dbus_1.12.20.bb
> index cf6f7dc0ef..400c7a1401 100644
> --- a/meta/recipes-core/dbus/dbus_1.12.20.bb
> +++ b/meta/recipes-core/dbus/dbus_1.12.20.bb
> @@ -11,6 +11,7 @@ RDEPENDS_dbus_class-nativesdk = ""
> PACKAGES += "${@bb.utils.contains('DISTRO_FEATURES', 'ptest', '${PN}-ptest', '', d)}"
> ALLOW_EMPTY_dbus-ptest = "1"
> RDEPENDS_dbus-ptest_class-target = "dbus-test-ptest"
> +RDEPENDS_${PN} += "${PN}-common ${PN}-tools"
>
> inherit useradd update-rc.d
>
> @@ -31,7 +32,7 @@ CONFFILES_${PN} = "${sysconfdir}/dbus-1/system.conf ${sysconfdir}/dbus-1/session
>
> DEBIANNAME_${PN} = "dbus-1"
>
> -PACKAGES =+ "${PN}-lib"
> +PACKAGES =+ "${PN}-lib ${PN}-common ${PN}-tools"
>
> OLDPKGNAME = "dbus-x11"
> OLDPKGNAME_class-nativesdk = ""
> @@ -41,31 +42,37 @@ RPROVIDES_${PN} = "${OLDPKGNAME}"
> RREPLACES_${PN} += "${OLDPKGNAME}"
>
> FILES_${PN} = "${bindir}/dbus-daemon* \
> - ${bindir}/dbus-uuidgen \
> ${bindir}/dbus-cleanup-sockets \
> - ${bindir}/dbus-send \
> - ${bindir}/dbus-monitor \
> ${bindir}/dbus-launch \
> ${bindir}/dbus-run-session \
> - ${bindir}/dbus-update-activation-environment \
> ${libexecdir}/dbus* \
> ${sysconfdir} \
> ${localstatedir} \
> - ${datadir}/dbus-1/services \
> - ${datadir}/dbus-1/system-services \
> - ${datadir}/dbus-1/session.d \
> - ${datadir}/dbus-1/session.conf \
> - ${datadir}/dbus-1/system.d \
> - ${datadir}/dbus-1/system.conf \
> - ${datadir}/xml/dbus-1 \
> ${systemd_system_unitdir} \
> ${systemd_user_unitdir} \
> - ${nonarch_libdir}/sysusers.d/dbus.conf \
> ${nonarch_libdir}/tmpfiles.d/dbus.conf \
> "
> +FILES_${PN}-common = "${sysconfdir}/dbus-1 \
> + ${datadir}/dbus-1/services \
> + ${datadir}/dbus-1/system-services \
> + ${datadir}/dbus-1/session.d \
> + ${datadir}/dbus-1/session.conf \
> + ${datadir}/dbus-1/system.d \
> + ${datadir}/dbus-1/system.conf \
> + ${systemd_system_unitdir}/dbus.socket \
> + ${systemd_system_unitdir}/sockets.target.wants \
> + ${systemd_user_unitdir}/dbus.socket \
> + ${systemd_user_unitdir}/sockets.target.wants \
> + ${nonarch_libdir}/sysusers.d/dbus.conf \
> +"
> +FILES_${PN}-tools = "${bindir}/dbus-uuidgen \
> + ${bindir}/dbus-send \
> + ${bindir}/dbus-monitor \
> + ${bindir}/dbus-update-activation-environment \
> +"
> FILES_${PN}-lib = "${libdir}/lib*.so.*"
> RRECOMMENDS_${PN}-lib = "${PN}"
> -FILES_${PN}-dev += "${libdir}/dbus-1.0/include ${libdir}/cmake/DBus1 ${bindir}/dbus-test-tool"
> +FILES_${PN}-dev += "${libdir}/dbus-1.0/include ${libdir}/cmake/DBus1 ${bindir}/dbus-test-tool ${datadir}/xml/dbus-1"
>
> PACKAGE_WRITE_DEPS += "${@bb.utils.contains('DISTRO_FEATURES','systemd sysvinit','systemd-systemctl-native','',d)}"
> pkg_postinst_dbus() {

Ping. Any chance for a review? Thanks.

--
Kind regards,
Luca Boccassi