#!/bin/bash # B8F cache candidate: exact recipe of b7/b7c/cache/mkfs-cache-b7c.sh (14fe453a); differs only in kernel file (B8D Image.gz-dtb: wifi kernel + B8B DTB), # fdt (B8B DTB), initrd (B8F initramfs), file names, extlinux label, fs label and UUIDs. Runs on 480s (mke2fs 1.47.2). Offline only. # The image contains the AP PSK (in the initramfs) - never publish it. set -e cd ~/doc/modem/jz08-aurora/b8/b8f/cache OUT=${1:-cache-extlinux-b8f.img}; B5=../../../b5b/components; F=../out echo "cc54d780cca61927b0b98d638f5ef304a0b65d688f4b2ae40f990a8e7a5d68e3 $B5/cmdline.txt" | sha256sum -c echo "50d63488e4d42669f5f042978d333c77d1bd34a97e7cc0a652dba1256788deb5 $F/Image.gz-dtb" | sha256sum -c echo "cc74b57deeda97b8ce2bacecf78f9300923d8e5d5d37beee1a87b4c0a32b9716 $F/aurora-b8f.dtb" | sha256sum -c echo "abb3bd6757e77eae90b3c9eb9d8b3f09e7a906256a53c80033853eb82b8e3f2f $F/initramfs-b8f.cpio.gz" | sha256sum -c ST=$(mktemp -d); mkdir -p $ST/extlinux cp $F/Image.gz-dtb $F/aurora-b8f.dtb $F/initramfs-b8f.cpio.gz $ST/ printf "default b8f\nlabel b8f\n\tlinux /Image.gz-dtb\n\tfdt /aurora-b8f.dtb\n\tinitrd /initramfs-b8f.cpio.gz\n\tappend %s\n" "$(cat $B5/cmdline.txt)" > $ST/extlinux/extlinux.conf cp $ST/extlinux/extlinux.conf extlinux-b8f.conf chmod 0644 $ST/*.* $ST/extlinux/extlinux.conf; chmod 0755 $ST $ST/extlinux find $ST -exec touch -h -d @1790726400 {} + rm -f $OUT; truncate -s 134217728 $OUT E2FSPROGS_FAKE_TIME=1790726400 /sbin/mke2fs -F -q -t ext2 -O none,filetype,sparse_super \ -b 4096 -I 128 -N 64 -m 0 -L aurora-b8f -U 4a5a3038-b6f0-4000-8000-00000000b8f0 \ -E root_owner=0:0,hash_seed=4a5a3038-b6f0-4000-8000-00000000b8f1 -d $ST $OUT 32768 rm -rf $ST for f in / /lost+found /extlinux /extlinux/extlinux.conf /Image.gz-dtb /aurora-b8f.dtb /initramfs-b8f.cpio.gz; do for t in atime ctime mtime; do echo "sif $f $t @1790726400"; done; done > /tmp/b8f-sif.$$ /sbin/debugfs -w -f /tmp/b8f-sif.$$ $OUT >/dev/null 2>&1; rm -f /tmp/b8f-sif.$$ /sbin/e2fsck -fn $OUT >/dev/null 2>&1 && echo "e2fsck -fn clean" stat -c "%n %s" $OUT; sha256sum $OUT