build_library: Drop debug symbols and other noise from some sysexts

These were present in containerd, incus, and overlaybd.

Also restore SLSA to the podman sysext as we normally include this.

Signed-off-by: James Le Cuirot <jlecuirot@microsoft.com>
This commit is contained in:
James Le Cuirot 2025-11-11 13:23:46 +00:00
parent 2e94c9f2c7
commit b930444366
No known key found for this signature in database
GPG Key ID: 1226415D00DD3137
5 changed files with 19 additions and 9 deletions

View File

@ -3,17 +3,21 @@
set -euo pipefail
rootfs="${1}"
pushd "${rootfs}"
# No manpages on Flatcar, no need to ship "stress" tool
echo ">>> NOTICE: $0: removing 'gen-manpages', 'containerd-stress' from sysext"
rm -f "${rootfs}/usr/bin/gen-manpages" "${rootfs}/usr/bin/containerd-stress"
rm -rf ./usr/{bin/{containerd-stress,gen-manpages},lib/debug/}
script_root="$(cd "$(dirname "$0")/../"; pwd)"
files_dir="${script_root}/sdk_container/src/third_party/coreos-overlay/coreos/sysext/containerd"
dir=$(dirname "${BASH_SOURCE[0]}")
files_dir="${dir}/../sdk_container/src/third_party/coreos-overlay/coreos/sysext/containerd"
echo ">>> NOTICE $0: installing extra files from '${files_dir}'"
# ATTENTION: don't preserve ownership as repo is owned by sdk user
cp -vdR --preserve=mode,timestamps "${files_dir}/"* "${rootfs}"
cp -vdR --preserve=mode,timestamps "${files_dir}/"* ./
mkdir -p "${rootfs}/usr/lib/systemd/system/multi-user.target.d"
{ echo "[Unit]"; echo "Upholds=containerd.service"; } > "${rootfs}/usr/lib/systemd/system/multi-user.target.d/10-containerd-service.conf"
install -D -m0644 /dev/stdin ./usr/lib/systemd/system/multi-user.target.d/10-containerd-service.conf <<EOF
[Unit]
Upholds=containerd.service
EOF
popd

View File

@ -5,6 +5,8 @@ rootfs="${1}"
pushd "${rootfs}"
rm -rf ./usr/{lib/debug,lib64/pkgconfig,include}/
pushd ./usr/lib/systemd/system
mkdir -p "multi-user.target.d"
{ echo "[Unit]"; echo "Upholds=incus.service"; } > "multi-user.target.d/10-incus.conf"
@ -23,4 +25,3 @@ mkdir -p ./usr/lib/userdb/
echo " " > ./usr/lib/userdb/core:incus-admin.membership
popd

View File

@ -5,7 +5,11 @@ rootfs="${1}"
pushd "${rootfs}"
rm -rf ./usr/lib/debug/
pushd ./usr/lib/systemd/system
mkdir -p "multi-user.target.d"
{ echo "[Unit]"; echo "Upholds=overlaybd-tcmu.service overlaybd-snapshotter.service"; } > "multi-user.target.d/10-overlaybd.conf"
popd
popd

View File

@ -5,7 +5,7 @@ rootfs="${1}"
pushd "${rootfs}"
rm -rf ./usr/{lib/debug/,lib64/cmake/,lib64/pkgconfig,include/,share/fish,share/aclocal,share/SLSA}
rm -rf ./usr/{lib/debug,lib64/cmake,lib64/pkgconfig,include,share/aclocal,share/fish}/
mkdir -p ./usr/share/podman/etc
cp -a ./etc/{fuse.conf,containers} ./usr/share/podman/etc/

View File

@ -0,0 +1 @@
- Dropped debug symbols from containerd, incus, and overlaybd system extensions to reduce download size.