68 lines
2.2 KiB
Shell
68 lines
2.2 KiB
Shell
#!/system/bin/sh
|
|
# RKNnoVPN — module removal entrypoint.
|
|
# Runtime cleanup is owned by scripts/rescue_reset.sh; this file only
|
|
# orchestrates uninstall-specific cleanup.
|
|
|
|
set +e
|
|
|
|
RKNNOVPN_DIR="${RKNNOVPN_DIR:-/data/adb/modules/rknnovpn}"
|
|
TAG="rknnovpn:uninstall"
|
|
|
|
if [ -f "${RKNNOVPN_DIR}/scripts/lib/rknnovpn_env.sh" ]; then
|
|
. "${RKNNOVPN_DIR}/scripts/lib/rknnovpn_env.sh"
|
|
fi
|
|
SCRIPTS_DIR="${SCRIPTS_DIR:-${RKNNOVPN_DIR}/scripts}"
|
|
RENDERED_CONFIG_DIR="${RENDERED_CONFIG_DIR:-${RKNNOVPN_DIR}/config/rendered}"
|
|
|
|
log_msg() {
|
|
/system/bin/log -t "$TAG" -p i "$1" 2>/dev/null
|
|
echo "[rknnovpn] $1"
|
|
}
|
|
|
|
log_err() {
|
|
/system/bin/log -t "$TAG" -p e "$1" 2>/dev/null
|
|
echo "[rknnovpn] ERROR: $1"
|
|
}
|
|
|
|
run_runtime_cleanup() {
|
|
if [ -x "${SCRIPTS_DIR}/rescue_reset.sh" ]; then
|
|
log_msg "Running canonical runtime cleanup"
|
|
RKNNOVPN_DIR="$RKNNOVPN_DIR" "${SCRIPTS_DIR}/rescue_reset.sh" uninstall-clean
|
|
return $?
|
|
fi
|
|
|
|
log_err "rescue_reset.sh missing; runtime cleanup is unavailable"
|
|
return 1
|
|
}
|
|
|
|
clean_runtime_files() {
|
|
log_msg "Cleaning generated rendered configs"
|
|
rm -f "${RENDERED_CONFIG_DIR}/"* 2>/dev/null
|
|
}
|
|
|
|
clean_obsolete_external_cleanup() {
|
|
obsolete_roll="roll""back"
|
|
obsolete_deferred="uninstall-clean""up"
|
|
|
|
log_msg "Removing obsolete rollback/deferred cleanup hooks"
|
|
rm -f \
|
|
"/data/adb/service.d/99-rknnovpn-${obsolete_roll}-guard.sh" \
|
|
"/data/adb/service.d/99-rknnovpn-${obsolete_deferred}.sh" 2>/dev/null || true
|
|
rm -rf \
|
|
"/data/adb/rknnovpn-${obsolete_roll}" \
|
|
"/data/adb/rknnovpn-${obsolete_deferred}" 2>/dev/null || true
|
|
}
|
|
|
|
log_msg "========================================="
|
|
log_msg "RKNnoVPN module removal starting"
|
|
log_msg "========================================="
|
|
|
|
clean_obsolete_external_cleanup
|
|
run_runtime_cleanup || log_err "Runtime cleanup reported leftovers"
|
|
clean_runtime_files
|
|
|
|
log_msg "========================================="
|
|
log_msg "RKNnoVPN module removal complete"
|
|
log_msg "Runtime data lives under the module directory: ${RKNNOVPN_DIR}/"
|
|
log_msg "Root manager removal may delete this directory with the module."
|
|
log_msg "========================================="
|