#!/bin/bash
# Test-only checker, invoked after the unmodified base boot transaction.
set -euo pipefail
exec >/dev/console 2>&1
trap 'printf "FDS_M4_FAIL: check failed at line %s\n" "$LINENO"; /usr/bin/poweroff' ERR
[[ $(findmnt -n -o FSTYPE /) == erofs ]]
[[ $(cat /proc/sys/kernel/osrelease) == 6.12.87-fds1* ]]
[[ $(getconf PAGESIZE) == 16384 ]]
[[ $(findmnt -n -o FSTYPE /dev) == devtmpfs ]]
[[ $(findmnt -n -o FSTYPE /proc) == proc ]]
[[ $(findmnt -n -o FSTYPE /sys) == sysfs ]]
[[ $(readlink /proc/1/exe) == /usr/bin/s6-svscan ]]
[[ $(pgrep -x dasungd | wc -l) == 1 ]]
! pgrep -fa '^/sbin/dasungd --config /etc/dasungd-early.toml daemon$'
[[ -s /FDS/CARTRIDGE.TOML ]]
fds --json info | grep -q 'aarch64 static-musl'
[[ $(cat /usr/share/fds/kernel-release) == "$(uname -r)" ]]
modprobe dummy numdummies=0
grep -q '^dummy ' /proc/modules
modprobe -r dummy
printf 'FDS_M4_PASS: Pi kernel/modules, static FDS CLI, 16K pages, EROFS, mount handoff, s6 PID1, single base Dasung owner\n'
