#!/bin/bash -efu
# SPDX-License-Identifier: GPL-3.0-or-later

compressed_fs=
KERNEL_MODULES=()
TOP_KERNEL_MODULES=()
root_size=0
image_size=0

list_kmodules()
{
	find "$1/lib/modules/$KERNEL" -type f \( -name '*.ko'  -o -name '*.ko.*' \) -printf '%f\n' 2>/dev/null |
		sed -e 's#\.ko\(\.[^\.]\+\)\?$##' |
		sort -u
}

if [ -n "${RUNTIME_COMPRESSED_FS-}" ] && [ -f "$WORKDIR/$RUNTIME_COMPRESSED_FS" ]; then
	read -r compressed_fs < "$WORKDIR/$RUNTIME_COMPRESSED_FS"

	readarray -t TOP_KERNEL_MODULES < <(list_kmodules "$ROOTDIR")
	readarray -t KERNEL_MODULES     < <(list_kmodules "$ROOTDIR.$RUNTIME_COMPRESSED_FS")
else
	readarray -t KERNEL_MODULES     < <(list_kmodules "$ROOTDIR")
fi

read -r root_size  _ < <(du -sh "$ROOTDIR") ||:
read -r image_size _ < <(du -sh "$1") ||:

msg-timestamp "Used features: $USED_FEATURES"
msg-timestamp "Packed modules${compressed_fs:+ inside $compressed_fs}: ${KERNEL_MODULES[*]}"
[ -z "$compressed_fs" ] ||
msg-timestamp "Top packed modules: ${TOP_KERNEL_MODULES[*]}"
msg-timestamp "Unpacked size: $root_size"
msg-timestamp "Image size: $image_size"
