polkit: Add a separate package for polkit systemd service/dbus config

Creates a separate package for the polkit systemd
service, such that other implementations for polkit
could be used instead of polkit on systemd enabled
systems, while still keeping polkit available. This
is especially helpful for software that depends on
polkit or its libraries etc, e.g. udisks2.

Also package dbus configuration into an own package

Signed-off-by: Tillmann Severin <tillmann.severin@bmw.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
This commit is contained in:
Tillmann Severin
2026-09-11 07:08:00 -07:00
committed by Khem Raj
parent badc36c77a
commit 03420389ca
+18 -1
View File
@@ -35,9 +35,26 @@ PACKAGECONFIG[libs-only] = "-Dlibs-only=true,-Dlibs-only=false"
USERADD_PACKAGES = "${PN}"
USERADD_PARAM:${PN} = "--system --no-create-home --user-group --home-dir ${sysconfdir}/${BPN}-1 --shell /bin/nologin polkitd"
SYSTEMD_SERVICE:${PN} = "${BPN}.service"
# Package the systemd service into a separate package to be able
# to exclude the polkit service in favor of alternative implementations
SYSTEMD_PACKAGES += "${PN}-service"
SYSTEMD_SERVICE:${PN}-service = "${BPN}.service"
SYSTEMD_AUTO_ENABLE = "disable"
PACKAGES =+ "${PN}-service"
RDEPENDS:${PN}-service += "polkit"
FILES:${PN}-service += " \
${systemd_system_unitdir} \
${sysconfdir}/systemd/system/polkit-virtual-provider.service \
"
# Package also the dbus configuration into a separate package
PACKAGES =+ "${PN}-dbus"
RDEPENDS:${PN}-dbus += "polkit"
FILES:${PN}-dbus += "\
${datadir}/dbus-1 \
"
do_install:append() {
#Fix up permissions on polkit rules.d to work with rpm4 constraints
if ${@bb.utils.contains('PACKAGECONFIG', 'libs-only', 'false', 'true', d)}; then