[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH v2 4/7] Shrink the rootfs substantially
On Mon, Apr 14, 2025 at 11:18:40AM +0100, Andrew Cooper wrote: > bash, busybox, musl and zlib are all in the base container. > > python3 and ncurses are in principle used by bits of Xen, but not in anything > we test in CI. argp-standlone, curl, dbus, libfdt, libgcc and sudo aren't > used at all (for x86 at least). > > libbz2 and libuuid were pulled in transitively before, and need to be included > explicitly now. > > Use apk --no-cache to avoid keeping a ~2M package index on disk. > > Remove the modules scan on boot. We don't have or build any. This removes a > chunk of warnings on boot. Strictly speaking there is xen-argo.ko, but that's handled manually anyway, so probably not worth mentioning. > This shrinks the rootfs from ~30M down to ~8M. > > No practical change. This also adds some preparation (the case on `uname -m`) for ARM64 rootfs, would be nice to mention it too. Especially since libfdt removed here will be re-added for ARM. > Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx> > --- > CC: Anthony PERARD <anthony.perard@xxxxxxxxxx> > CC: Stefano Stabellini <sstabellini@xxxxxxxxxx> > CC: Michal Orzel <michal.orzel@xxxxxxx> > CC: Doug Goldstein <cardoe@xxxxxxxxxx> > CC: Marek Marczykowski-Górecki <marmarek@xxxxxxxxxxxxxxxxxxxxxx> > --- > scripts/alpine-rootfs.sh | 60 +++++++++++++++++++++++----------------- > 1 file changed, 34 insertions(+), 26 deletions(-) > > diff --git a/scripts/alpine-rootfs.sh b/scripts/alpine-rootfs.sh > index 75e2f8648ce5..72c29e0a0a13 100755 > --- a/scripts/alpine-rootfs.sh > +++ b/scripts/alpine-rootfs.sh > @@ -4,33 +4,42 @@ set -eu > > WORKDIR="${PWD}" > COPYDIR="${WORKDIR}/binaries" > +UNAME=$(uname -m) > > -apk update > +apk --no-cache update This is no-op, no? IIUC the only thing `apk update` does is updating the cache, which you disabled... > -# xen runtime deps > -apk add musl > -apk add libgcc > -apk add openrc > -apk add busybox > -apk add sudo > -apk add dbus > -apk add bash > -apk add python3 > -apk add zlib > -apk add lzo > -apk add ncurses > -apk add yajl > -apk add libaio > -apk add xz > -apk add util-linux > -apk add argp-standalone > -apk add libfdt > -apk add glib > -apk add pixman > -apk add curl > -apk add udev > -apk add pciutils > -apk add libelf > +PKGS=( > + # System > + openrc > + udev > + util-linux > + > + # Xen toolstack runtime deps > + libbz2 > + libuuid > + lzo > + xz > + yajl > + > + # QEMU > + glib > + libaio > + pixman > + ) > + > +case $UNAME in > + x86_64) > + PKGS+=( > + # System > + pciutils > + > + # QEMU > + libelf > + ) > + ;; > +esac > + > +apk add --no-cache "${PKGS[@]}" > > # Xen > cd / > @@ -45,7 +54,6 @@ rc-update add dmesg sysinit > rc-update add hostname boot > rc-update add hwclock boot > rc-update add hwdrivers sysinit > -rc-update add modules boot > rc-update add killprocs shutdown > rc-update add mount-ro shutdown > rc-update add savecache shutdown > -- > 2.39.5 > -- Best Regards, Marek Marczykowski-Górecki Invisible Things Lab Attachment:
signature.asc
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |