Message ID | 88ca507a0d71bcd597761b24f1862c9dc01b6cd1.1757930833.git.jan.kiszka@siemens.com |
---|---|
State | New |
Headers | show |
Series | Several micro-optimizations | expand |
On Mon, 2025-09-15 at 12:07 +0200, Jan Kiszka wrote: > From: Jan Kiszka <jan.kiszka@siemens.com> > > We have no need for an initramfs while building packages. Therefore, > keep the update-initramfs stub inside the sbuild-chroots so that they > are working also while build dependencies are installed. Thanks! Acked-by: Felix Moessbauer <felix.moessbauer@siemens.com> > > Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> > --- > meta/classes/rootfs.bbclass | 14 ++++++++++---- > .../sbuild-chroot/sbuild-chroot.inc | 2 ++ > 2 files changed, 12 insertions(+), 4 deletions(-) > > diff --git a/meta/classes/rootfs.bbclass b/meta/classes/rootfs.bbclass > index d91fecb0..de8077e6 100644 > --- a/meta/classes/rootfs.bbclass > +++ b/meta/classes/rootfs.bbclass > @@ -187,6 +187,10 @@ rootfs_disable_initrd_generation() { > > mkdir -p "${ROOTFSDIR}${ROOTFS_STUBS_DIR}" > ln -s /usr/bin/true ${ROOTFSDIR}${ROOTFS_STUBS_DIR}/update-initramfs > + > + mkdir -p '${ROOTFSDIR}/etc/apt/apt.conf.d' > + echo 'DPkg::Path ${ROOTFS_STUBS_DIR}:/usr/sbin:/usr/bin:/sbin:/bin;' \ > + > '${ROOTFSDIR}/etc/apt/apt.conf.d/50isar-stubs' > EOSUDO > } > > @@ -251,15 +255,17 @@ rootfs_install_pkgs_install[progress] = "custom:rootfs_progress.PkgsInstallProgr > rootfs_install_pkgs_install[network] = "${TASK_USE_SUDO}" > rootfs_install_pkgs_install() { > sudo -E chroot "${ROOTFSDIR}" \ > - /usr/bin/apt-get ${ROOTFS_APT_ARGS} \ > - -o DPkg::Path='${ROOTFS_STUBS_DIR}:/usr/sbin:/usr/bin:/sbin:/bin' \ > - ${ROOTFS_PACKAGES} > + /usr/bin/apt-get ${ROOTFS_APT_ARGS} ${ROOTFS_PACKAGES} > } > > ROOTFS_INSTALL_COMMAND += "rootfs_restore_initrd_tooling" > rootfs_restore_initrd_tooling[weight] = "1" > rootfs_restore_initrd_tooling() { > - sudo rm -rf "${ROOTFSDIR}${ROOTFS_STUBS_DIR}" > + sudo -s <<'EOSUDO' > + set -e > + rm -f "${ROOTFSDIR}/etc/apt/apt.conf.d/50isar-stubs" > + rm -rf "${ROOTFSDIR}${ROOTFS_STUBS_DIR}" > +EOSUDO > } > > ROOTFS_INSTALL_COMMAND += "${@bb.utils.contains('ROOTFS_FEATURES', 'no-generate-initrd', 'rootfs_clear_initrd_symlinks', '', d)}" > diff --git a/meta/recipes-devtools/sbuild-chroot/sbuild-chroot.inc b/meta/recipes-devtools/sbuild-chroot/sbuild-chroot.inc > index 98e427e5..479aa91d 100644 > --- a/meta/recipes-devtools/sbuild-chroot/sbuild-chroot.inc > +++ b/meta/recipes-devtools/sbuild-chroot/sbuild-chroot.inc > @@ -57,6 +57,8 @@ ROOTFSDIR = "${SBUILD_CHROOT_DIR}" > ROOTFS_PACKAGES = "${SBUILD_CHROOT_PREINSTALL}" > ROOTFS_FEATURES += "no-generate-initrd" > > +ROOTFS_INSTALL_COMMAND:remove = "rootfs_restore_initrd_tooling" > + > ROOTFS_POSTPROCESS_COMMAND:remove = "rootfs_cleanup_isar_apt" > > # Do not cleanup base-apt > -- > 2.51.0
diff --git a/meta/classes/rootfs.bbclass b/meta/classes/rootfs.bbclass index d91fecb0..de8077e6 100644 --- a/meta/classes/rootfs.bbclass +++ b/meta/classes/rootfs.bbclass @@ -187,6 +187,10 @@ rootfs_disable_initrd_generation() { mkdir -p "${ROOTFSDIR}${ROOTFS_STUBS_DIR}" ln -s /usr/bin/true ${ROOTFSDIR}${ROOTFS_STUBS_DIR}/update-initramfs + + mkdir -p '${ROOTFSDIR}/etc/apt/apt.conf.d' + echo 'DPkg::Path ${ROOTFS_STUBS_DIR}:/usr/sbin:/usr/bin:/sbin:/bin;' \ + > '${ROOTFSDIR}/etc/apt/apt.conf.d/50isar-stubs' EOSUDO } @@ -251,15 +255,17 @@ rootfs_install_pkgs_install[progress] = "custom:rootfs_progress.PkgsInstallProgr rootfs_install_pkgs_install[network] = "${TASK_USE_SUDO}" rootfs_install_pkgs_install() { sudo -E chroot "${ROOTFSDIR}" \ - /usr/bin/apt-get ${ROOTFS_APT_ARGS} \ - -o DPkg::Path='${ROOTFS_STUBS_DIR}:/usr/sbin:/usr/bin:/sbin:/bin' \ - ${ROOTFS_PACKAGES} + /usr/bin/apt-get ${ROOTFS_APT_ARGS} ${ROOTFS_PACKAGES} } ROOTFS_INSTALL_COMMAND += "rootfs_restore_initrd_tooling" rootfs_restore_initrd_tooling[weight] = "1" rootfs_restore_initrd_tooling() { - sudo rm -rf "${ROOTFSDIR}${ROOTFS_STUBS_DIR}" + sudo -s <<'EOSUDO' + set -e + rm -f "${ROOTFSDIR}/etc/apt/apt.conf.d/50isar-stubs" + rm -rf "${ROOTFSDIR}${ROOTFS_STUBS_DIR}" +EOSUDO } ROOTFS_INSTALL_COMMAND += "${@bb.utils.contains('ROOTFS_FEATURES', 'no-generate-initrd', 'rootfs_clear_initrd_symlinks', '', d)}" diff --git a/meta/recipes-devtools/sbuild-chroot/sbuild-chroot.inc b/meta/recipes-devtools/sbuild-chroot/sbuild-chroot.inc index 98e427e5..479aa91d 100644 --- a/meta/recipes-devtools/sbuild-chroot/sbuild-chroot.inc +++ b/meta/recipes-devtools/sbuild-chroot/sbuild-chroot.inc @@ -57,6 +57,8 @@ ROOTFSDIR = "${SBUILD_CHROOT_DIR}" ROOTFS_PACKAGES = "${SBUILD_CHROOT_PREINSTALL}" ROOTFS_FEATURES += "no-generate-initrd" +ROOTFS_INSTALL_COMMAND:remove = "rootfs_restore_initrd_tooling" + ROOTFS_POSTPROCESS_COMMAND:remove = "rootfs_cleanup_isar_apt" # Do not cleanup base-apt