diff mbox series

[meta-oe,PATCHv2] fwupd: fix polkit rules.d permissions

Message ID 20230213092557.56760-1-f_l_k@t-online.de
State Under Review
Headers show
Series [meta-oe,PATCHv2] fwupd: fix polkit rules.d permissions | expand

Commit Message

Markus Volk Feb. 13, 2023, 9:25 a.m. UTC
This fixes:

Error: Transaction test error:
  file /usr/share/polkit-1/rules.d conflicts between attempted installs of fwupd-1.8.9-r0.intel_corei7_64 and polkit-122-r0.corei7_64
  file /usr/share/polkit-1/rules.d conflicts between attempted installs of flatpak-1.15.1-r0.corei7_64 and fwupd-1.8.9-r0.intel_corei7_64

Signed-off-by: Markus Volk <f_l_k@t-online.de>
---
 meta-oe/recipes-bsp/fwupd/fwupd_1.8.9.bb | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)
diff mbox series

Patch

diff --git a/meta-oe/recipes-bsp/fwupd/fwupd_1.8.9.bb b/meta-oe/recipes-bsp/fwupd/fwupd_1.8.9.bb
index 0f889ca8f..14d83ec52 100644
--- a/meta-oe/recipes-bsp/fwupd/fwupd_1.8.9.bb
+++ b/meta-oe/recipes-bsp/fwupd/fwupd_1.8.9.bb
@@ -13,7 +13,7 @@  UPSTREAM_CHECK_URI = "https://github.com/${BPN}/${BPN}/releases"
 # Machine-specific as we examine MACHINE_FEATURES to decide whether to build the UEFI plugins
 PACKAGE_ARCH = "${MACHINE_ARCH}"
 
-inherit meson vala gobject-introspection systemd bash-completion pkgconfig gi-docgen ptest manpages
+inherit meson vala gobject-introspection systemd bash-completion pkgconfig gi-docgen ptest manpages useradd
 
 GIDOCGEN_MESON_OPTION = 'docs'
 GIDOCGEN_MESON_ENABLE_FLAG = 'docgen'
@@ -115,6 +115,17 @@  DISABLE_NON_X86:x86 = ""
 DISABLE_NON_X86:x86-64 = ""
 PACKAGECONFIG:remove = "${DISABLE_NON_X86}"
 
+USERADD_PACKAGES = "${PN}"
+USERADD_PARAM:${PN} = "--system --no-create-home --user-group --home-dir ${sysconfdir}/polkit-1 --shell /bin/nologin polkitd"
+
+do_install:append() {
+    if ${@bb.utils.contains('PACKAGECONFIG', 'polkit', 'true', 'false', d)}; then
+        #Fix up permissions on polkit rules.d to work with rpm4 constraints
+        chmod 700 ${D}/${datadir}/polkit-1/rules.d
+        chown polkitd:root ${D}/${datadir}/polkit-1/rules.d
+    fi
+}
+
 FILES:${PN} += "${libdir}/fwupd-plugins-* \
                 ${libdir}/fwupd-${PV} \
                 ${systemd_unitdir} \