Files
agnos-builder/scripts/analyze-agnos-rootfs.sh
Adeeb Shihadeh 13ab1819b7 Revert SquashFS (#449)
* Revert "switch to lzo, same size as gzip and boots faster"

This reverts commit 10fcd04ca5.

* Revert "Switch to gzip'd squash (#441)"

This reverts commit 2091362d56.

* Revert "Switch to squashfs for tiny rootfs! (#438)"

This reverts commit 1e16811f45.

* Revert "fix stats"

This reverts commit a590cefcde.
2025-01-28 16:36:59 -08:00

36 lines
1.2 KiB
Bash
Executable File

#!/bin/bash
set -e
DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." >/dev/null && pwd)"
cd $DIR
BUILD_DIR="$DIR/build"
ROOTFS_DIR="$BUILD_DIR/agnos-rootfs"
ROOTFS_IMAGE="$BUILD_DIR/system.img"
# Setup mount container for macOS and CI support (namespace.so)
docker build -f $DIR/Dockerfile.builder -t agnos-mount $DIR > /dev/null 2>&1
MOUNT_CONTAINER_ID=$(docker run -d --privileged -v $DIR:$DIR agnos-mount)
exec() {
docker exec $MOUNT_CONTAINER_ID "$@"
}
# Cleanup container on exit
trap "docker container rm -f $MOUNT_CONTAINER_ID > /dev/null" EXIT
# Mount filesystem
exec mount "$ROOTFS_IMAGE" "$ROOTFS_DIR"
# Stats
# echo "Total size:"
exec bash -c "du -sh \"$ROOTFS_DIR\" | sed 's|$ROOTFS_DIR|/|'"
# echo "Python env size:"
exec bash -c "du -sh -t 150M \"$ROOTFS_DIR\"/usr/local/* | sort -rh | sed 's|$ROOTFS_DIR||'"
# echo "Lib size:"
exec bash -c "du -sh -t 150M \"$ROOTFS_DIR\"/usr/lib/* | sort -rh | sed 's|$ROOTFS_DIR||'"
# echo "Others size:"
exec bash -c "find \"$ROOTFS_DIR/usr\" -mindepth 1 -maxdepth 1 -type d ! -path \"$ROOTFS_DIR/usr/local\" ! -path \"$ROOTFS_DIR/usr/lib\" -exec du -sh -t 150M {} + | sort -rh | sed 's|$ROOTFS_DIR||'"
# Unmount image
exec umount -l "$ROOTFS_DIR"