diff mbox series

[meta-oe,kirkstone,v3] fwupd: fix ${datadir}/polkit-1/rules.d permissions

Message ID 20221102095657.235279-1-mikko.rapeli@linaro.org
State New
Headers show
Series [meta-oe,kirkstone,v3] fwupd: fix ${datadir}/polkit-1/rules.d permissions | expand

Commit Message

Mikko Rapeli Nov. 2, 2022, 9:56 a.m. UTC
They need to be the same as systemd which creates the
directory or rpm/dnf will fail rootfs build with error:

Error: Transaction test error:
  file /usr/share/polkit-1/rules.d conflicts between attempted installs of fwupd-1.7.6-r0.qemuarm64 and systemd-1:250.5-r0.armv8a

"bitbake -c install systemd && bitbake -c devshell systemd"
shows that the permissons should be:

  2581167      1 drwx------   2 polkitd  root            3 Oct 28 11:22 ../image/usr/share/polkit-1/rules.d

but "bitbake -c install fwupd && bitbake -c devshell fwupd" shows
the permissions as:

  2554626      1 drwxr-xr-x   2 root     root            3 Oct 28 11:17 ../image/usr/share/polkit-1/rules.d

Now they are fixed to be the same and installing both systemd and fwupd
to rootfs works with rpm and dnf.

Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
---
 meta-oe/recipes-bsp/fwupd/fwupd_1.7.6.bb | 9 +++++++++
 1 file changed, 9 insertions(+)

v3: removed check for polkit in PACKAGECONFIG, using these permissions
for polkit-1/rules.d in all configurations

v2: oops, forgot to git commit --amend -s -v

v1: https://lists.openembedded.org/g/openembedded-devel/message/99334
diff mbox series

Patch

diff --git a/meta-oe/recipes-bsp/fwupd/fwupd_1.7.6.bb b/meta-oe/recipes-bsp/fwupd/fwupd_1.7.6.bb
index 53f1720b0..f297a08c5 100644
--- a/meta-oe/recipes-bsp/fwupd/fwupd_1.7.6.bb
+++ b/meta-oe/recipes-bsp/fwupd/fwupd_1.7.6.bb
@@ -125,3 +125,12 @@  FILES:${PN} += "${libdir}/fwupd-plugins-* \
 FILES:${PN}-ptest += "${libexecdir}/installed-tests/ \
                       ${datadir}/installed-tests/"
 RDEPENDS:${PN}-ptest += "gnome-desktop-testing"
+
+do_install:append() {
+        # do the same as systemd to avoid rpm/dnf errors when installing both
+        # If polkit is setup fixup permissions and ownership
+        if [ -d ${D}${datadir}/polkit-1/rules.d ]; then
+                chmod 700 ${D}${datadir}/polkit-1/rules.d
+                chown polkitd:root ${D}${datadir}/polkit-1/rules.d
+        fi
+}