From 89b44b73dca64634f7e77d0edc37fe49f648f025 Mon Sep 17 00:00:00 2001 From: Vishwas Udupa Date: Thu, 13 Nov 2025 16:57:12 +0530 Subject: [PATCH] chrony: remove buildtime installation of /var/lib/chrony Since commit 3200122d68 (chrony: create /var/lib/chrony by systemd-tmpfiles) tmpfiles.d mechanism already ensures populating /var/lib/chrony at runtime. Introduce volatiles mechanism to make sure the directory is created at runtime for sysvinit as well. Since /var/lib/chrony is populated at runtime, stop packaging at build time. this helps to align towards stateless system expectations or when updates are done via meta-updater. Signed-off-by: Vishwas Udupa Signed-off-by: Khem Raj --- .../recipes-support/chrony/chrony_4.8.bb | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/meta-networking/recipes-support/chrony/chrony_4.8.bb b/meta-networking/recipes-support/chrony/chrony_4.8.bb index 826bffc323..f50576c272 100644 --- a/meta-networking/recipes-support/chrony/chrony_4.8.bb +++ b/meta-networking/recipes-support/chrony/chrony_4.8.bb @@ -102,9 +102,6 @@ do_install() { install -d ${D}${systemd_unitdir}/system install -m 0644 ${S}/examples/chronyd.service ${D}${systemd_unitdir}/system/ - # Variable data (for drift and/or rtc file) - install -d ${D}${localstatedir}/lib/chrony - # Fix hard-coded paths in config files and init scripts sed -i -e 's!/var/!${localstatedir}/!g' -e 's!/etc/!${sysconfdir}/!g' \ -e 's!/usr/sbin/!${sbindir}/!g' -e 's!/usr/bin/!${bindir}/!g' \ @@ -114,12 +111,17 @@ do_install() { sed -i 's!^PATH=.*!PATH=${base_sbindir}:${base_bindir}:${sbindir}:${bindir}!' ${D}${sysconfdir}/init.d/chronyd sed -i 's!^EnvironmentFile=.*!EnvironmentFile=-${sysconfdir}/default/chronyd!' ${D}${systemd_unitdir}/system/chronyd.service - install -d ${D}${sysconfdir}/tmpfiles.d - echo "d /var/lib/chrony 0755 root root -" > ${D}${sysconfdir}/tmpfiles.d/chronyd.conf + if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then + install -d ${D}${sysconfdir}/tmpfiles.d + echo "d /var/lib/chrony 0755 root root -" > ${D}${sysconfdir}/tmpfiles.d/chronyd.conf + else + install -d ${D}${sysconfdir}/default/volatiles + echo "d root root 0755 /var/lib/chrony none" > "${D}${sysconfdir}/default/volatiles/00_runtime_chrony_dirs" + fi } -FILES:${PN} = "${sbindir}/chronyd ${sysconfdir} ${localstatedir}/lib/chrony ${localstatedir}" +FILES:${PN} = "${sbindir}/chronyd ${sysconfdir}" CONFFILES:${PN} = "${sysconfdir}/chrony.conf" INITSCRIPT_NAME = "chronyd" INITSCRIPT_PARAMS = "defaults"