Files
driver-manager/post-fs-data.sh
sssnake d0061b82bb Add boot timing and AVB/Play Integrity evasion
Boot timing system defers all modifications until after Play
Integrity first attestation completes. Monitors DroidGuard
(com.google.android.gms.unstable) CPU activity to detect
attestation window. PI watcher daemon auto-hides mods during
periodic re-checks — unmounts spoofs, removes non-stock props,
ensures boot state reads green/locked/enforcing, then re-applies
after check finishes. post-fs-data.sh cleaned to only set
stock-safe props during early boot. KernelSU version props
hidden. WebUI boot timing panel with hide/unhide controls.
2026-03-31 10:01:31 -07:00

38 lines
1.3 KiB
Bash
Executable File

#!/system/bin/sh
# Driver Manager - post-fs-data
# EARLY BOOT — runs before verification checks
#
# IMPORTANT: Keep this CLEAN. Only set props that already exist
# on stock or that won't trigger root/mod detection.
# All custom/non-stock props are deferred to service.sh (after PI).
MODDIR=${0%/*}
CONFDIR="$MODDIR/config"
# GPU — these are stock props, safe to set early
resetprop ro.hardware.egl powervr
resetprop ro.hardware.vulkan powervr
# Boot state — ensure these look locked/verified from the start
# These are checked by early-running verification services
BOOT_TIMING=$(cat "$CONFDIR/boot_timing" 2>/dev/null || echo "0")
if [ "$BOOT_TIMING" = "1" ]; then
resetprop ro.boot.verifiedbootstate green
resetprop ro.boot.flash.locked 1
resetprop ro.boot.vbmeta.device_state locked
resetprop ro.boot.veritymode enforcing
resetprop ro.build.selinux 1
# Hide KernelSU props if they exist
resetprop --delete ro.kernelsu.version 2>/dev/null
resetprop --delete ro.kernelsu.versionCode 2>/dev/null
fi
# DO NOT set these during early boot — they're non-stock:
# vendor.powervr.opencl.allowfp16
# vendor.powervr.opencl.profiling
# persist.sys.usb.otg
# input.gamepad.enabled
# bluetooth.le.no_location_permission_scan
# These are applied later by service.sh or boot_timing.sh