It should work because it has nothing to do with that particular passwd file. This is builds successfully on a ubuntu 16.04 host which has no polkitd user.
Also with the user add stanza in the patch it should be adding the user that is required when PACKAGECONFIG has the polkitd added to the psuedo passwd file. We have quite a few configurations building properly. Where I have seen transient failures before is when the -native sysroot does not get rebuilt but that is typically with other recipes. Is this still a problem? Jason. On 09/06/2017 01:35 PM, Martin Jansa wrote:
Does this work on hosts without polkitd user? Here it failed with: | chown: invalid user: ‘polkitd:root’ On Tue, Aug 15, 2017 at 8:55 PM, Jason Wessel <jason.wes...@windriver.com <mailto:jason.wes...@windriver.com>> wrote: The systemd 234 added some files to the polkit directory and the directory the files live in must be owned by the polkitd user, else you will receive the following error when the rootfs is being assembled: Error: Transaction check error: file /usr/share/polkit-1/rules.d conflicts between attempted installs of polkit-0.113-r0.15.core2_64 and systemd-1:234-r0.0.core2_64 The fix similar to other packages such as libvirt where the user must exist and the directory must be created with the proper attributes. Signed-off-by: Jason Wessel <jason.wes...@windriver.com <mailto:jason.wes...@windriver.com>> --- meta/recipes-core/systemd/systemd_234.bb <http://systemd_234.bb> | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/meta/recipes-core/systemd/systemd_234.bb <http://systemd_234.bb> b/meta/recipes-core/systemd/systemd_234.bb <http://systemd_234.bb> index ad7fc99b90..4560cf4175 100644 --- a/meta/recipes-core/systemd/systemd_234.bb <http://systemd_234.bb> +++ b/meta/recipes-core/systemd/systemd_234.bb <http://systemd_234.bb> @@ -245,6 +245,14 @@ do_install() { ln -s ../run/systemd/resolve/resolv.conf ${D}${sysconfdir}/resolv-conf.systemd fi install -Dm 0755 ${S}/src/systemctl/systemd-sysv-install.SKELETON ${D}${systemd_unitdir}/systemd-sysv-install + + # If polkit is setup fixup permissions and ownership + if [ "${@bb.utils.contains('PACKAGECONFIG', 'polkit', 'polkit', '', d)}" = "polkit" ] ; then + 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 + fi } do_install_ptest () { @@ -308,6 +316,7 @@ USERADD_PARAM_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'timesyncd', '--sy USERADD_PARAM_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'networkd', '--system -d / -M --shell /bin/nologin systemd-network;', '', d)}" USERADD_PARAM_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'coredump', '--system -d / -M --shell /bin/nologin systemd-coredump;', '', d)}" USERADD_PARAM_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'resolved', '--system -d / -M --shell /bin/nologin systemd-resolve;', '', d)}" +USERADD_PARAM_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'polkit', '--system --no-create-home --user-group --home-dir ${sysconfdir}/polkit-1 polkitd;', '', d)}" GROUPADD_PARAM_${PN} = "-r lock; -r systemd-journal" USERADD_PARAM_${PN}-extra-utils += "--system -d / -M --shell /bin/nologin systemd-bus-proxy;" -- 2.11.0 -- _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org <mailto:Openembedded-core@lists.openembedded.org> http://lists.openembedded.org/mailman/listinfo/openembedded-core <http://lists.openembedded.org/mailman/listinfo/openembedded-core>
-- _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core