From c953c777865238f76a1df2f13f3d14310115aa88 Mon Sep 17 00:00:00 2001 From: adrian Date: Tue, 9 Dec 2025 21:05:39 -0300 Subject: [PATCH] Initial. --- module.prop | 6 ++++++ service.sh | 6 ++++++ system/bin/termux_watchdog | 24 ++++++++++++++++++++++++ termux-watchdog.zip | Bin 0 -> 1025 bytes 4 files changed, 36 insertions(+) create mode 100644 module.prop create mode 100644 service.sh create mode 100644 system/bin/termux_watchdog create mode 100644 termux-watchdog.zip diff --git a/module.prop b/module.prop new file mode 100644 index 0000000..968b548 --- /dev/null +++ b/module.prop @@ -0,0 +1,6 @@ +id=termux-watchdog +name=Termux Watchdog +version=1.0 +versionCode=1 +author=tenkuma +description=Reboots the device when the Termux app disappears. diff --git a/service.sh b/service.sh new file mode 100644 index 0000000..01fb343 --- /dev/null +++ b/service.sh @@ -0,0 +1,6 @@ +#!/system/bin/sh +# ------------------------------------------------- +# Magisk service script – starts the watchdog daemon +# ------------------------------------------------- + +nohup /system/bin/termux_watchdog >/dev/null 2>&1 & diff --git a/system/bin/termux_watchdog b/system/bin/termux_watchdog new file mode 100644 index 0000000..3179737 --- /dev/null +++ b/system/bin/termux_watchdog @@ -0,0 +1,24 @@ +#!/system/bin/sh +LOG="/data/local/tmp/termux_watchdog.log" +echo "$(date): Watchdog launched (PID=$)" >> "$LOG" + +# ---------- Wait for Termux ---------- +while true; do + TERMUX_PID=$(pidof -s com.termux) + if [ -n "$TERMUX_PID" ]; then + echo "$(date): Detected Termux (PID=$TERMUX_PID)" >> "$LOG" + break + fi + sleep 5 +done + +# ---------- Monitor ---------- +while true; do + TERMUX_PID=$(pidof -s com.termux) + if [ -z "$TERMUX_PID" ]; then + echo "$(date): Termux no longer running -> reboot" >> "$LOG" + reboot + break + fi + sleep 5 +done diff --git a/termux-watchdog.zip b/termux-watchdog.zip new file mode 100644 index 0000000000000000000000000000000000000000..a2c7a41dcbdeea9e998eb123b8fa16234d2c4772 GIT binary patch literal 1025 zcmWIWW@Zs#0D%w7I-@}}46`#ZFceo7m!#(E<5t9tP?VIJ2Up0!@O)Wk^uOE3HgGU9 zFnBXDFi4>)EJ-cOEv<+zPb^8!NXbuM+kepeuz|$U_dm7mcFW#!o<3Rpc-5?q2LUOI z6pU^?%a-=}JoSrq@c*i0tGhCCA~n+m?wvmU+t)AU|1INfn=XWX>)o+yUxZ80(>dPG zsd*~f=cbgr{jllgvlz3kS2Gt{2}PK(Tr~L>>2vNuU3$|=_Gq&e3j21(=q>YPiF{VP z&q64P>E-l4!e;{}HkZDz-*9BxMYhJf4aET}2eNDHcJHdb(Q;|WW7@#-7L|NS4{=C@cIcqg2=_Tm8VwXA68S&fIAI_jNd=Ee){XNCnd2Ls!(&S=da zq1*)w3=9((7#KhSotvLhnv<$mP?TR_+Uv-7$UuPkeWk0NgRA@mVS5LUIn&p;Dox3m za(9c({-ul5Z!4cZC&RP1=Y6Vbcjwc$TB0q-8UKE6;ogMT7*c379l-RlvN6NpmJnn!j$sq#3hj&v%~|8dLdG zaw#jp=v}+^9WaCk8O|{AiSipkCA}^ qDejRqVv7xsCJC1H%y}5Dx&JreLW6 literal 0 HcmV?d00001