From 6df14a44b61c2039c749f8185cd4bbff2a51a623 Mon Sep 17 00:00:00 2001 From: MeowOS Date: Mon, 31 Aug 2026 00:31:06 +0800 Subject: [PATCH] =?UTF-8?q?build:=20=E9=80=9A=E7=94=A8=E6=89=93=E5=8C=85?= =?UTF-8?q?=E8=84=9A=E6=9C=AC=E4=BC=98=E5=8C=96=20=E2=80=94=20=E4=BA=A7?= =?UTF-8?q?=E7=89=A9=E5=BD=92=E6=A1=A3=20fw=5Fapps/out/(fw=5Fapps/build/?= =?UTF-8?q?=E5=88=86=E7=A6=BB=E9=98=B2=E4=BA=92=E6=B8=85)=20+=20fw=5Fconte?= =?UTF-8?q?nt.conf=20=E5=8D=87=E7=BA=A7=20M2.73=20=E6=9D=83=E5=A8=81?= =?UTF-8?q?=E6=B8=85=E5=8D=95(=E8=A1=A5svc=5Fpower/svc=5Fperf+=E5=88=B7?= =?UTF-8?q?=E6=96=B0md5)=20+=20=E5=88=A0=E8=BF=87=E6=97=B6=E7=8B=AC?= =?UTF-8?q?=E7=AB=8B=E8=84=9A=E6=9C=ACbuild=5Ffw=5Fapps=5Fm267.sh?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- scripts/build/build_fw_apps.sh | 22 +++- scripts/build/build_fw_apps_m267.sh | 180 ---------------------------- scripts/build/fw_content.conf | 13 +- 3 files changed, 24 insertions(+), 191 deletions(-) delete mode 100644 scripts/build/build_fw_apps_m267.sh diff --git a/scripts/build/build_fw_apps.sh b/scripts/build/build_fw_apps.sh index fbd8bd7..df3f6cc 100755 --- a/scripts/build/build_fw_apps.sh +++ b/scripts/build/build_fw_apps.sh @@ -9,12 +9,14 @@ # -c|--config 固件内容清单路径。默认 scripts/build/fw_content.conf。 # 传别的路径即可并存多套调试/场景配置(互不覆盖)。 # -v|--version 版本号,写入目标 /etc/meowos_version(如 0.7.62)。【必传】 -# -o|--out 输出 .upt 路径(如 fw_apps/r3proii_m2_67.upt)。【必传】 +# -o|--out 输出 .upt 路径(如 r3proii_m2_67.upt)。【必传】 +# 若指向仓库内 fw_apps/ 下(非 out/),自动并入 fw_apps/out/ 归档。 # -b|--base fw_ssh 基线目录。默认 fw_ssh/squashfs-root。 # -# 通用步骤(读清单之外的固定逻辑,参照 build_fw_apps_m267.sh 的权威流程): +# 通用步骤(读清单之外的固定逻辑): # 1) 解析参数 -# 2) 建树:rm -rf fw_apps && mkdir -p && cp -a $BASE fw_apps/squashfs-root +# 2) 建树:rm -rf fw_apps/build && mkdir -p && cp -a $BASE fw_apps/build/squashfs-root +# (组装区 fw_apps/build/ 每次清理重建;产物 fw_apps/out/ 不受影响) # 3) 校验基线:usr/bin/hiby_player 必须为 stock(a73f2c49…) # 4) 解析清单:逐条 md5 校验(若填) + cp -f + chmod 755,目录自动建 # 5) 写版本:echo $VERSION > $DST/etc/meowos_version @@ -24,6 +26,8 @@ # 8) S99ssh → S84ssh:改名(内容不变),校验一致后删除 S99ssh(清单不含 S84) # 9) repack:hiby_os_crack/scripts/repack.sh -i $DST -k unpacked_v14/xImage -o $OUT # 10) 体积核对(rootfs ≤ 45,088,768)+ unpack 回验 0 diff +# +# 约定:改固件内容只改 fw_content.conf(每行 |||),不改本脚本。 # ============================================================================ set -e @@ -35,6 +39,7 @@ CONFIG="$ROOT/scripts/build/fw_content.conf" BASE="$ROOT/fw_ssh/squashfs-root" VERSION="" OUT="" +OUT_DIR="$ROOT/fw_apps/out" # 产物归档目录(不受构建清理影响) usage() { echo "用法: $0 -c -v -o [-b ]" @@ -64,10 +69,15 @@ case "$BASE" in /*) ;; *) BASE="$ROOT/$BASE" ;; esac case "$OUT" in /*) ;; *) OUT="$ROOT/$OUT" ;; esac [ -f "$CONFIG" ] || { echo "!!! 清单不存在: $CONFIG"; exit 1; } [ -d "$BASE" ] || { echo "!!! 基线不存在: $BASE"; exit 1; } +# 产物统一归档到 $ROOT/fw_apps/out/(避免某次构建清理误删;仅当 -o 指向仓库内非 out/ 路径时并入) +case "$OUT" in + "$OUT_DIR/"*) ;; # 已在 out/ 下,保持 + "$ROOT/fw_apps/"*) OUT="$OUT_DIR/$(basename "$OUT")" ;; # 仓库内 fw_apps/ 下 → 并入 out/ +esac mkdir -p "$(dirname "$OUT")" SRC="$BASE" # 基线(拷贝源) -DST="$ROOT/fw_apps/squashfs-root" # 组装目标 +DST="$ROOT/fw_apps/build/squashfs-root" # 组装目标(工作区,每次构建清理重建;产物不受影响) LOGO_DIR="$ROOT/bootlogos" # 外围 CLI(自 rootfs /usr/bin 移除;已迁 TF 卡 MeowOS/opt/bin/) MIGRATE_TOOLS="curl socat tmux jq rsync nano htop ncdu file xxd" @@ -83,8 +93,8 @@ echo " OUT=$OUT" # ---- 2) 建树(复制基线) ---- echo "==> 建树(复制基线)" -rm -rf "$ROOT/fw_apps" -mkdir -p "$ROOT/fw_apps" +rm -rf "$ROOT/fw_apps/build" +mkdir -p "$ROOT/fw_apps/build" "$OUT_DIR" cp -a "$SRC" "$DST" # ---- 3) 校验基线 player 为 stock ---- diff --git a/scripts/build/build_fw_apps_m267.sh b/scripts/build/build_fw_apps_m267.sh deleted file mode 100644 index 439e1df..0000000 --- a/scripts/build/build_fw_apps_m267.sh +++ /dev/null @@ -1,180 +0,0 @@ -#!/bin/bash -# build_fw_apps_m260.sh — 组装并打包 fw_apps 固件(M2.67:meow_svcd status 美化 agent-117; -# launcher 含之前全部(字体索引/字重两级/全屏滑条)+ 按钮样式/滑条黑残快照 agent-118 侧(SDK/APP); -# bootmenu/watchdog/mdns 复用未变;SDK meow_ui.a 不入固件;版本 0.7.54 → 0.7.62) -# 基线: fw_ssh(stock v1.4 + SSH 工具集),相对 M2.59 r3proii_m2_59.upt: -# - usr/bin/meow_bootmenu (M2.56,md5 536434c9:右下角版本读 /etc/meowos_version = 单点) -# - usr/bin/meow_launcherd (最新,md5 a2b1c096:字体索引 index 写入 + 查列表降级+日志 + 字重两级 + 全屏滑条) -# - usr/bin/meow_watchdog (M2.24,md5 ed711cc1,未变) -# - usr/bin/meow_svcd (最新,md5 fb2d608b,status 配色美化 agent-117) -# - usr/bin/meow_mdns (自研 IPv4-only mDNS 应答器,md5 b23de7ce,未变;agent-116 拆入 bins/) -# - etc/init.d/S89meow_svcd <- 开机自启 svcd(-f 前台 + 重挂循环,失败不死);置于 S84ssh 后、S90 前。 -# - etc/meowos_version = 0.7.62 -# 注意:SDK 的全局状态栏 / 全局左缘返回 / 通知 IPC(meow_notify_ipc)在 meow_ui.a(patch_v2/sdk/)侧, -# 由 APP 链接;固件不含 SDK 库,只含框架(launcher/bootmenu/watchdog/svcd/mdns)。SDK 不入固件。 -# hello 等 SDK APP 走卡 MeowAPPs/ 热更新(build 惯例:不注入 usr/bin;搜索全部 m2xx 无 hello 拷贝)。 -# 内容(相对 fw_ssh): -# - usr/bin/meow_bootmenu <- 静态 MIPS 开机引导选单(M2.56,md5 536434c9…;链入 meow_touch.c) -# - usr/bin/meow_launcherd <- MeowOS 主屏(最新,md5 a2b1c096…;静态链接 meow_touch.c + meow_settings.c + meow_ui.a/libz.a) -# - usr/bin/meow_watchdog <- 应用看门狗(M2.24,md5 ed711cc1,全面按键接管,未变) -# - usr/bin/meow_svcd <- 服务管理器(最新,md5 fb2d608b,status 配色美化) -# - usr/bin/meow_mdns <- 自研 mDNS 应答器(md5 b23de7ce…) -# - etc/meowos_version <- 版本号同源(0.7.62) -# - etc/profile.d/meow_card_path.sh <- SSH 会话工具 PATH(M2.12 起) -# - etc/init.d/S89meow_svcd / S90meow_bootmenu / S84ssh / S92_03_start_music_player / S95shutdown_logo -# - etc/logo*.jpeg + etc/boot_animation/0.png + etc/shutdown_logo.jpeg(M2.1 补回) -# 字库(font.png+font.idx,1.22MiB):放 TF 卡 MeowOS/fonts/(不动 rootfs)。固件不含字库。 -# 明确: 无 S90meow_launcherd;S99ssh 已(改名 S84ssh);stock hiby_player 校验 a73f2c49。 -# 外围 CLI 已迁至卡 MeowOS/opt/bin/(本固件不含;卡不在时工具不可用,框架不受影响)。 -# 产物: fw_apps/r3proii_m2_67.upt -set -e -ROOT="$HOME/Project/R3ProII" -SRC="$ROOT/fw_ssh/squashfs-root" -DST="$ROOT/fw_apps/squashfs-root" -BOOTMENU="$ROOT/patch_v2/bootmenu/meow_bootmenu" -S90="$ROOT/patch_v2/bootmenu/S90meow_bootmenu" -S92="$ROOT/patch_v2/bootmenu/S92_03_start_music_player" -S95LOGO="$ROOT/patch_v2/bootmenu/S95shutdown_logo" -LOGO_DIR="$ROOT/bootlogos" -LAUNCHER="$ROOT/patch_v2/meow_launcherd/meow_launcherd" -WATCHDOG="$ROOT/patch_v2/meow_watchdog/meow_watchdog" -SVCD="$ROOT/patch_v2/meow_svcd/meow_svcd" -MDNS="$ROOT/mips-repo/bins/meow_mdns/bin/meow_mdns" -S89="$ROOT/patch_v2/meow_svcd/S89meow_svcd" -SYSUI="$ROOT/patch_v2/meow_sysui/meow_sysui" -NYAI="$ROOT/patch_v2/meowpkg/nyai" -S70="$ROOT/patch_v2/meow_sysui/S70meow_sysui" -CARD_PATH="$ROOT/patch_v2/meow_launcherd/meow_card_path.sh" -OUT="$ROOT/fw_apps/r3proii_m2_67.upt" -# 外围 CLI(自 rootfs /usr/bin 移除;已迁 TF 卡 MeowOS/opt/bin/) -MIGRATE_TOOLS="curl socat tmux jq rsync nano htop ncdu file xxd" - -echo "==> 建树(复制 fw_ssh)" -rm -rf "$ROOT/fw_apps" -mkdir -p "$ROOT/fw_apps" -cp -a "$SRC" "$DST" - -echo "==> 校验基线 player 为 stock" -BASE_MD5=$(md5sum "$DST/usr/bin/hiby_player" | cut -d' ' -f1) -[ "$BASE_MD5" = "a73f2c49a655659ef14db3bf6acecd78" ] || { - echo "!!! hiby_player 不是 stock(a73f2c49): $BASE_MD5"; exit 1; } - -echo "==> 校验 launcher / bootmenu / watchdog(当前最新) + svcd/mdns" -LM=$(md5sum "$LAUNCHER" | cut -d' ' -f1) -WM=$(md5sum "$WATCHDOG" | cut -d' ' -f1) -BM=$(md5sum "$BOOTMENU" | cut -d" " -f1) -SM=$(md5sum "$SVCD" | cut -d' ' -f1) -MM=$(md5sum "$MDNS" | cut -d' ' -f1) -[ "$LM" = "a2b1c0962be3848c76f418f906721c03" ] || { echo "!!! launcher 非最新(a2b1c096): $LM"; exit 1; } -[ "$WM" = "ed711cc192b9f770ed84b380b429afc6" ] || { echo "!!! watchdog 非 M2.24(ed711cc1): $WM"; exit 1; } -[ "$BM" = "536434c9faa89a697d7e3da1c3657605" ] || { echo "!!! bootmenu 非 M2.56(536434c9, 版本读/etc/meowos_version): $BM"; exit 1; } -[ "$SM" = "fb2d608b37b20fd000fddcac91e1c4a1" ] || { echo "!!! meow_svcd 非最新(fb2d608b, status 配色美化): $SM"; exit 1; } -[ "$MM" = "b23de7ce54873e926e7601a3b21b66a9" ] || { echo "!!! meow_mdns 非 b23de7ce(自研 IPv4-only): $MM"; exit 1; } -SS=$(md5sum "$SYSUI" | cut -d' ' -f1) -NY=$(md5sum "$NYAI" | cut -d' ' -f1) -[ "$SS" = "173013cc8f0899b3001d0b894ac0d9e6" ] || { echo "!!! meow_sysui 非 173013cc: $SS"; exit 1; } -[ "$NY" = "e55149299a9a2763b974b53b0c093160" ] || { echo "!!! nyai 非 e5514929: $NY"; exit 1; } -echo " launcher=$LM watchdog=$WM bootmenu=$BM svcd=$SM mdns=$MM sysui=$SS nyai=$NY ✓" - -echo "==> 新增/替换文件" -cp -f "$BOOTMENU" "$DST/usr/bin/meow_bootmenu"; chmod 755 "$DST/usr/bin/meow_bootmenu" -cp -f "$LAUNCHER" "$DST/usr/bin/meow_launcherd"; chmod 755 "$DST/usr/bin/meow_launcherd" -cp -f "$WATCHDOG" "$DST/usr/bin/meow_watchdog"; chmod 755 "$DST/usr/bin/meow_watchdog" -cp -f "$SVCD" "$DST/usr/bin/meow_svcd"; chmod 755 "$DST/usr/bin/meow_svcd" -cp -f "$MDNS" "$DST/usr/bin/meow_mdns"; chmod 755 "$DST/usr/bin/meow_mdns" -cp -f "$SYSUI" "$DST/usr/bin/meow_sysui"; chmod 755 "$DST/usr/bin/meow_sysui" -cp -f "$NYAI" "$DST/usr/bin/nyai"; chmod 755 "$DST/usr/bin/nyai" -echo "0.7.62" > "$DST/etc/meowos_version" -cp -f "$S70" "$DST/etc/init.d/S70meow_sysui"; chmod 755 "$DST/etc/init.d/S70meow_sysui" -cp -f "$S90" "$DST/etc/init.d/S90meow_bootmenu"; chmod 755 "$DST/etc/init.d/S90meow_bootmenu" -cp -f "$S92" "$DST/etc/init.d/S92_03_start_music_player"; chmod 755 "$DST/etc/init.d/S92_03_start_music_player" -cp -f "$S89" "$DST/etc/init.d/S89meow_svcd"; chmod 755 "$DST/etc/init.d/S89meow_svcd" -# S99ssh -> S84ssh(内容不变,仅改名) -cp -f "$SRC/etc/init.d/S99ssh" "$DST/etc/init.d/S84ssh"; chmod 755 "$DST/etc/init.d/S84ssh" -rm -f "$DST/etc/init.d/S99ssh" - -echo "==> SSH 工具 PATH(profile.d,新增)" -mkdir -p "$DST/etc/profile.d" -cp -f "$CARD_PATH" "$DST/etc/profile.d/meow_card_path.sh"; chmod 755 "$DST/etc/profile.d/meow_card_path.sh" -echo " meow_card_path.sh ✓" - -echo "==> rootfs 瘦身:移除外围 CLI(已迁卡)" -for t in $MIGRATE_TOOLS; do - if [ -e "$DST/usr/bin/$t" ]; then rm -f "$DST/usr/bin/$t"; echo " removed /usr/bin/$t"; fi -done - -echo "==> 校验 S84ssh 与 S99ssh 原内容一致" -diff -q "$SRC/etc/init.d/S99ssh" "$DST/etc/init.d/S84ssh" >/dev/null 2>&1 \ - && echo " S84ssh == 原 S99ssh ✓" || { echo " !!! S84ssh 与 S99ssh 不一致"; exit 1; } -[ ! -e "$DST/etc/init.d/S99ssh" ] && echo " S99ssh 已移除 ✓" || { echo " !!! S99ssh 仍存在"; exit 1; } - -echo "==> 启动图补回(M2.1):用户自定义 logo*.jpeg(覆盖 stock)+ boot_animation/0.png" -cp -f "$LOGO_DIR/logo_new.jpeg" "$DST/etc/logo.jpeg"; chmod 755 "$DST/etc/logo.jpeg" -cp -f "$LOGO_DIR/logo1_new.jpeg" "$DST/etc/logo1.jpeg"; chmod 755 "$DST/etc/logo1.jpeg" -cp -f "$LOGO_DIR/logo2_new.jpeg" "$DST/etc/logo2.jpeg"; chmod 755 "$DST/etc/logo2.jpeg" -mkdir -p "$DST/etc/boot_animation" -cp -f "$LOGO_DIR/boot_anim_0.png" "$DST/etc/boot_animation/0.png"; chmod 644 "$DST/etc/boot_animation/0.png" -echo " logo.jpeg/logo1.jpeg/logo2.jpeg + boot_animation/0.png ✓" - -echo "==> 关机 logo(M2.1):/etc/shutdown_logo.jpeg + S95shutdown_logo(rcK 停机制,待验证)" -cp -f "$LOGO_DIR/shutdown_logo.jpeg" "$DST/etc/shutdown_logo.jpeg"; chmod 755 "$DST/etc/shutdown_logo.jpeg" -cp -f "$S95LOGO" "$DST/etc/init.d/S95shutdown_logo"; chmod 755 "$DST/etc/init.d/S95shutdown_logo" -[ -f "$DST/etc/shutdown_logo.jpeg" ] && echo " shutdown_logo.jpeg ✓" - -echo "==> 校验(新增文件)" -md5sum "$DST/usr/bin/meow_bootmenu" "$DST/usr/bin/meow_launcherd" "$DST/usr/bin/meow_watchdog" \ - "$DST/usr/bin/meow_svcd" "$DST/usr/bin/meow_mdns" \ - "$DST/etc/meowos_version" "$DST/etc/init.d/S89meow_svcd" "$DST/etc/init.d/S90meow_bootmenu" \ - "$DST/etc/init.d/S92_03_start_music_player" "$DST/etc/init.d/S84ssh" \ - "$DST/etc/profile.d/meow_card_path.sh" \ - "$DST/etc/logo.jpeg" "$DST/etc/logo1.jpeg" "$DST/etc/logo2.jpeg" \ - "$DST/etc/boot_animation/0.png" "$DST/etc/shutdown_logo.jpeg" "$DST/etc/init.d/S95shutdown_logo" -file "$DST/usr/bin/meow_bootmenu" "$DST/usr/bin/meow_svcd" "$DST/usr/bin/meow_mdns" - -echo "==> 工具移除核对(应无迁移目标残留)" -for t in $MIGRATE_TOOLS; do - [ -e "$DST/usr/bin/$t" ] && { echo " !!! 残留 $t"; exit 1; } || true -done -echo " ✓ 全部移除" - -echo "==> 保留核对(SSH/调试三件套)" -for t in /usr/sbin/dropbear /usr/sbin/dropbearkey /usr/libexec/sftp-server /usr/bin/gdbserver /usr/bin/strace /usr/bin/sqlite3; do - [ -e "$DST$t" ] && echo " ✓ $t" || { echo " !!! 缺失 $t"; exit 1; } -done - -echo "==> init.d 启动链顺序 (S8/S9)" -ls "$DST/etc/init.d/" | grep -E '^S(8|9)' | sort - -echo "==> repack" -"$ROOT/hiby_os_crack/scripts/repack.sh" \ - -i "$DST" \ - -k "$ROOT/unpacked_v14/xImage" \ - -o "$OUT" < /dev/null - -echo "==> 体积核对(rootfs 分区, 上限 45,088,768)" -mkdir -p /tmp/fw_apps_chk && cd /tmp/fw_apps_chk -rm -rf ota_v0 ota_update.in rootfs.squashfs -7z x -y "$OUT" ota_v0/ota_update.in > /dev/null 2>&1 -RFSZ=$(grep -A1 'img_name=rootfs' ota_v0/ota_update.in | grep img_size | cut -d= -f2) -echo "rootfs.squashfs = $RFSZ bytes (M2.11 为 44343296)" -if [ "$RFSZ" -le 45088768 ]; then echo "OK <= 上限"; else echo "!!! 超上限"; exit 1; fi - -echo "==> rootfs.img md5" -grep -A3 'img_name=rootfs' ota_v0/ota_update.in | grep img_md5 | cut -d= -f2 - -echo "==> unpack 回验(0 diff)" -mkdir -p /tmp/fw_apps_rt && cd /tmp/fw_apps_rt -rm -rf ota_v0 ota_config.in squashfs-root rootfs.squashfs rootfs.squashfs.* -7z x -y "$OUT" > /dev/null 2>&1 -find . -name "rootfs.squashfs.*" | sort -V | xargs cat > rootfs.squashfs 2>/dev/null -unsquashfs -no-progress -d squashfs-root rootfs.squashfs > /dev/null 2>&1 || true -if diff -rq --no-dereference "$DST" squashfs-root > /tmp/fw_apps_rt_diff.log 2>&1; then - echo "0 diff ✓" -else - echo "!!! diff found:"; head -20 /tmp/fw_apps_rt_diff.log - exit 1 -fi - -echo "==> 最终固件 md5" -md5sum "$OUT" -ls -la "$OUT" diff --git a/scripts/build/fw_content.conf b/scripts/build/fw_content.conf index ff6273a..cf96a25 100644 --- a/scripts/build/fw_content.conf +++ b/scripts/build/fw_content.conf @@ -1,5 +1,5 @@ # ============================================================================ -# fw_content.conf — MeowOS 固件内容清单(默认 / 基线 = M2.67) +# fw_content.conf — MeowOS 固件内容清单(默认 / 基线 = M2.73 / 0.7.68) # # 格式(每行一条): # ||| @@ -22,23 +22,26 @@ # → 由通用步骤从 bootlogos/ 拷贝 # - /etc/init.d/S84ssh → 由通用步骤把基线 S99ssh 改名而来(清单不含 S84) # - usr/bin 外围 CLI 瘦身 → 由通用步骤按白名单移除 +# - /etc/init.d/S95shutdown_logo → 由通用步骤从 bootlogos/ 拷贝(S95 为 init 脚本,见下) # ============================================================================ # ---- 用户态/服务守护二进制(usr/bin,全部 chmod 755 静态 MIPS)---- patch_v2/bootmenu/meow_bootmenu|/usr/bin/meow_bootmenu|536434c9faa89a697d7e3da1c3657605|开机引导选单 M2.56(右下角版本读 /etc/meowos_version = 单点) -patch_v2/meow_launcherd/meow_launcherd|/usr/bin/meow_launcherd|a2b1c0962be3848c76f418f906721c03|主屏 launcher(字体索引/字重两级/全屏滑条/按钮样式) +patch_v2/meow_launcherd/meow_launcherd|/usr/bin/meow_launcherd|9ca4c5e8a919f59cb2cdd6326da23065|主屏 launcher M2.73(agent-162 点击重置息屏 消费 /tmp/meow_app_activity) patch_v2/meow_watchdog/meow_watchdog|/usr/bin/meow_watchdog|ed711cc192b9f770ed84b380b429afc6|应用看门狗 M2.24(全面按键接管) patch_v2/meow_svcd/meow_svcd|/usr/bin/meow_svcd|fb2d608b37b20fd000fddcac91e1c4a1|服务管理器(status 配色美化 agent-117) mips-repo/bins/meow_mdns/bin/meow_mdns|/usr/bin/meow_mdns|b23de7ce54873e926e7601a3b21b66a9|自研 IPv4-only mDNS 应答器 patch_v2/meow_sysui/meow_sysui|/usr/bin/meow_sysui|173013cc8f0899b3001d0b894ac0d9e6|系统 UI(sysui) patch_v2/meowpkg/nyai|/usr/bin/nyai|e55149299a9a2763b974b53b0c093160|nyai +patch_v2/meow_svc_power/meow_svc_power|/usr/bin/meow_svc_power|f3e653d58dd045b35ce67de8cf62b9c2|电源专项服务 M2.73(agent-163 升级写保护+dac 真实音量) +patch_v2/meow_svc_perf/meow_svc_perf|/usr/bin/meow_svc_perf|7b0f3b64c7a415fe2588dc4c1ddada08|性能专项服务(agent-155 一期) -# ---- 开机 init 脚本(etc/init.d,括号里的数字决定启动顺序,脚本按文件名自然序,无需额外处理)---- +# ---- 开机 init 脚本(etc/init.d,数字决定启动顺序,按文件名自然序)---- patch_v2/meow_sysui/S70meow_sysui|/etc/init.d/S70meow_sysui|8d243ee827de0e6b9588c785a3365ce8|sysui 自启(S70) -patch_v2/meow_svcd/S89meow_svcd|/etc/init.d/S89meow_svcd|7e646b01316189d864c6bd0ba45d2ba4|svcd 自启(-f 前台+重挂循环) +patch_v2/meow_svcd/S89meow_svcd|/etc/init.d/S89meow_svcd|15a88070276875e7588fe088cdc959fe|svcd 自启(-f 前台+重挂循环,预置专项服务 conf) patch_v2/bootmenu/S90meow_bootmenu|/etc/init.d/S90meow_bootmenu|fe061cfed7e91ec69c0a30b777e4b972|bootmenu 自启(--fork) patch_v2/bootmenu/S92_03_start_music_player|/etc/init.d/S92_03_start_music_player|c17257aa3d93f75da72903b57cbe1034|§4.3 兜底 patch(rcS 正常路径被 S90 阻塞不执行) patch_v2/bootmenu/S95shutdown_logo|/etc/init.d/S95shutdown_logo|96db7b844d7c26f44835d4681824f578|rcK 关机时显示 /etc/shutdown_logo.jpeg # ---- SSH 会话工具 PATH(etc/profile.d)---- -patch_v2/meow_launcherd/meow_card_path.sh|/etc/profile.d/meow_card_path.sh|2a5506da8a890650a11160812ed5f5da|SSH 会话 PATH(M2.12 起):指向 TF 卡 MeowOS/opt/bin +patch_v2/meow_launcherd/meow_card_path.sh|/etc/profile.d/meow_card_path.sh|ac1963c75190611f14a2d46d217e640a|SSH 会话 PATH(M2.12 起):指向 TF 卡 MeowOS/opt/bin