YahBible / code /yahbible_boot.py
OhBeOneKeyNoBe's picture
Taviel brain modules: scripture hands, TempTorus memory, LLM door, eval battery
e635475 verified
Raw History Blame Contribute Delete
1.07 kB
r"""YAHBIBLE_BOOT — bring the FULL desktop engine to life inside the phone.
Called from Java (YahBridge.startEngine) after YAHBIBLE_BASE / YAHBIBLE_NO_D /
YAHBIBLE_ANDROID are set. Imports the real O'Tav'iel server and serves it on
127.0.0.1:41537 in a daemon thread; returns True once the port answers.
"""
from __future__ import annotations
import os
import socket
import threading
import time
_STARTED = {"t": None}
def start():
os.environ.setdefault("YAHBIBLE_NO_D", "1")
os.environ.setdefault("YAHBIBLE_ANDROID", "1")
if _STARTED["t"] is None or not _STARTED["t"].is_alive():
import o_taviel_server as S
def run():
try:
S.main()
except Exception:
pass
t = threading.Thread(target=run, daemon=True, name="otaviel-server")
t.start()
_STARTED["t"] = t
for _ in range(240):
try:
socket.create_connection(("127.0.0.1", 41537), 1).close()
return True
except Exception:
time.sleep(0.5)
return False