feat: UI strict-error mode - ohMyLogo login intro, typewriter removed, fatal instrumentation
- desktop boot screen: typewriter effect removed, whole screen drawn in one pass - login: ohMyLogo (DEAICUP lotus, 288px embedded) intro screen before password card - strict error policy instrumentation (zero degradation): login LOGIN-E01..E05 (integrity/badctx/noconf/nouser/nohash) and desktop DSK-E01 now full-screen fatal with symbol + halt instead of silent skip - root-cause fixed: missing .build_tmp/mkfat32.ps1 silently left SATA sidecar stale (login.elf 'not found' degradation) - replaced with CODE/linux/make_sata_sidecar.sh (auto adaptive FAT32 rebuild each build) - recreated lost CODE/login/patch_login_hash.ps1 (.text SHA256 -> .hashseg) - dev config now full flow: show_logo=1, wizard+login enabled, dev shell off
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
#!/usr/bin/env bash
|
||||
# make_sata_sidecar.sh — 重建 .build_tmp/sata_fat32_dsk.img(AHCI 边车测试盘)
|
||||
# 用法: sudo bash make_sata_sidecar.sh <SYSTEM_DIR> <OUT_IMG>
|
||||
# 说明: 纯 FAT32(无 GPT),DSK 经 ahci0 provider 读 BPB。
|
||||
# 只拷贝 DSK 运行期需要的子树(排除 boot/ EFI/ limine/ 等仅 Limine
|
||||
# ESP 需要的大文件),大小按内容自适应。需要 mkfs.vfat + loop mount。
|
||||
set -euo pipefail
|
||||
|
||||
SRC="${1:?usage: $0 <SYSTEM_DIR> <OUT_IMG>}"
|
||||
IMG="${2:?usage: $0 <SYSTEM_DIR> <OUT_IMG>}"
|
||||
|
||||
command -v mkfs.vfat >/dev/null || { echo "mkfs.vfat missing" >&2; exit 1; }
|
||||
|
||||
STAGE=$(mktemp -d)
|
||||
trap 'rm -rf "$STAGE"' EXIT
|
||||
|
||||
# 仅运行期子树;boot/EFI/limine 是 Limine ESP 专属(rootfs 镜像 GB 级)
|
||||
for d in SYSTEM EFI limine; do
|
||||
[ -e "$SRC/$d" ] && cp -r "$SRC/$d" "$STAGE"/
|
||||
done
|
||||
|
||||
need_kb=$(du -sk "$STAGE" | cut -f1)
|
||||
size_mb=$(( need_kb / 1024 * 2 + 64 ))
|
||||
[ "$size_mb" -lt 64 ] && size_mb=64
|
||||
|
||||
rm -f "$IMG"
|
||||
truncate -s "${size_mb}M" "$IMG"
|
||||
mkfs.vfat -F 32 -n DESHAB "$IMG" >/dev/null
|
||||
|
||||
MNT=$(mktemp -d)
|
||||
mount -o loop "$IMG" "$MNT"
|
||||
cp -r "$STAGE"/. "$MNT"/
|
||||
sync
|
||||
umount "$MNT"
|
||||
rmdir "$MNT"
|
||||
echo "[sidecar] rebuilt: $IMG (${size_mb}MB FAT32)"
|
||||
Reference in New Issue
Block a user