aboutsummaryrefslogtreecommitdiffstats
path: root/meta-networking/recipes-daemons
diff options
context:
space:
mode:
authorHongxu Jia <hongxu.jia@windriver.com>2019-10-22 14:18:25 +0800
committerKhem Raj <raj.khem@gmail.com>2019-10-25 10:29:51 -0700
commit89d86b96f80d8a136d38113baf69d8ccad5a5ff6 (patch)
tree17dd689c705e529f1d6193bbf259ee09f1f6b302 /meta-networking/recipes-daemons
parentf7ba23ac80217694c25b2de5ddd11e27146ced82 (diff)
downloadmeta-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.inc7
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"