diff options
author | Hongxu Jia <hongxu.jia@windriver.com> | 2019-10-22 14:18:25 +0800 |
---|---|---|
committer | Khem Raj <raj.khem@gmail.com> | 2019-10-25 10:29:51 -0700 |
commit | 89d86b96f80d8a136d38113baf69d8ccad5a5ff6 (patch) | |
tree | 17dd689c705e529f1d6193bbf259ee09f1f6b302 /meta-networking/recipes-daemons | |
parent | f7ba23ac80217694c25b2de5ddd11e27146ced82 (diff) | |
download | meta-openembedded-89d86b96f80d8a136d38113baf69d8ccad5a5ff6.tar.gz |
postfix: split /etc from ${PN} to ${PN}-cfg for ostree
In postinst of ${PN}, call newaliases on etc may fail at do_rootfs
due to host setup. If fail, the postinst will rerun at target first
boot which cause update-alternatives in postinst rerun.
For ostree system, /usr is readonly, /etc is writable, the
update-alternatives will be failed when run on target since it
needs write files in /usr. Split the postinst into two packages
can fix the problem:
* update-alternatives runs at do_rootfs
* newaliases runs at do_rootfs or first boot, it needs write files
in /etc when run at first boot, while /etc is writable for ostree.
For non-ostree, everything will be OK as normal
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta-networking/recipes-daemons')
-rw-r--r-- | meta-networking/recipes-daemons/postfix/postfix.inc | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/meta-networking/recipes-daemons/postfix/postfix.inc b/meta-networking/recipes-daemons/postfix/postfix.inc index 7781005336..de45e080d0 100644 --- a/meta-networking/recipes-daemons/postfix/postfix.inc +++ b/meta-networking/recipes-daemons/postfix/postfix.inc @@ -203,7 +203,7 @@ ALTERNATIVE_LINK_NAME[newaliases.1] = "${mandir}/man1/newaliases.1" ALTERNATIVE_LINK_NAME[sendmail.1] = "${mandir}/man1/sendmail.1" PACKAGE_WRITE_DEPS += "postfix-native" -pkg_postinst_${PN} () { +pkg_postinst_${PN}-cfg () { if [ "x$D" = "x" ]; then touch /etc/aliases newaliases @@ -224,7 +224,10 @@ pkg_postinst_${PN} () { fi } +PACKAGES =+ "${PN}-cfg" +RDEPENDS_${PN}_class-target += "${PN}-cfg" # Exclude .debug directories from the main package -FILES_${PN} = "${sysconfdir} ${localstatedir} ${bindir}/* ${sbindir}/* \ +FILES_${PN} = "${localstatedir} ${bindir}/* ${sbindir}/* \ ${libexecdir}/* ${systemd_unitdir}/*" +FILES_${PN}-cfg = "${sysconfdir}" FILES_${PN}-dbg += "${libexecdir}/postfix/.debug" |