* feat(docs): mirror every docs/ page in all 65 locales Extends the documentation mirrors from the 22-page core set (#13940) to every Markdown page under docs/: 152 sources x 65 locales = 9,880 mirrors (6,208 new), language bars rewritten for the full locale list, state adopted so the blocking drift gate now covers all 152 pages. run-translation.mjs: an oversized block made only of table rows or list items (PROVIDER_REFERENCE.md 244-row table, FREE_TIERS.md 71-item list) is cut at item boundaries and rejoined without a blank line — the single 16-40 KB request outlived the backend socket for verbose scripts. 48 older mirrors whose tables had lost rows were retranslated with --force. * docs(i18n): refresh mirrors for the sources the base changed since the branch cut Section-level retranslation of the 29 docs (and README.md) whose source or mirrors moved on release/v3.8.51 during the run, then state adoption; the drift gate is green again on the merged tree.
10 KiB
Termux Headless Setup (Filipino)
🌐 Languages: 🇺🇸 English · 🇪🇹 am · 🇸🇦 ar · 🇦🇿 az · 🇧🇬 bg · 🇧🇩 bn · 🇨🇿 cs · 🇩🇰 da · 🇩🇪 de · 🇬🇷 el · 🇪🇸 es · 🇪🇪 et · 🇮🇷 fa · 🇫🇮 fi · 🇫🇷 fr · 🇮🇪 ga · 🇮🇳 gu · 🇳🇬 ha · 🇮🇱 he · 🇮🇳 hi · 🇭🇷 hr · 🇭🇺 hu · 🇦🇲 hy · 🇮🇩 id · 🇳🇬 ig · 🇮🇹 it · 🇯🇵 ja · 🇬🇪 ka · 🇰🇭 km · 🇮🇳 kn · 🇰🇷 ko · 🇱🇹 lt · 🇱🇻 lv · 🇮🇳 ml · 🇮🇳 mr · 🇲🇾 ms · 🇲🇹 mt · 🇲🇲 my · 🇳🇵 ne · 🇳🇱 nl · 🇳🇴 no · 🇮🇳 or · 🇮🇳 pa · 🇵🇱 pl · 🇵🇹 pt · 🇧🇷 pt-BR · 🇷🇴 ro · 🇷🇺 ru · 🇱🇰 si · 🇸🇰 sk · 🇸🇮 sl · 🇷🇸 sr · 🇸🇪 sv · 🇰🇪 sw · 🇮🇳 ta · 🇮🇳 te · 🇹🇭 th · 🇹🇷 tr · 🇺🇦 uk-UA · 🇵🇰 ur · 🇺🇿 uz · 🇻🇳 vi · 🇳🇬 yo · 🇨🇳 zh-CN · 🇹🇼 zh-TW
Maaaring patakbuhin ang OmniRoute bilang headless server sa Android sa pamamagitan ng Termux. Hindi sinusuportahan sa Termux ang Electron desktop app, ngunit gumagana ang web dashboard at OpenAI-compatible API mula sa lokal na browser o sa iba pang device sa parehong network.
Mga Kinakailangan
I-install ang Termux mula sa F-Droid o sa mga release sa GitHub, pagkatapos ay i-update ang mga package at i-install ang mga build tool na kinakailangan ng mga native dependency gaya ng better-sqlite3.
pkg update
pkg upgrade
pkg install nodejs python build-essential git
Bersyon ng Node.js: Kinakailangan ng OmniRoute ang Node
>=22.22.2 <23 || >=24.0.0 <27(tumutugma saenginessapackage.json/SUPPORTED_NODE_RANGE). Karaniwang kasama sanodejs-ltsng Termux ang Node 20 LTS, na hindi na sinusuportahan — sa halip, i-install angpkg install nodejs(kasalukuyang bersyon) at tiyaking angnode --versionay nag-uulat ng linyang 22.x/24.x+.
Kung mabigo ang pag-compile ng native package, patakbuhin muli ang command na pkg install sa itaas at pagkatapos ay subukang muli ang pag-install ng OmniRoute.
Pag-install
Direktang patakbuhin ang pinakabagong na-publish na package:
npx -y omniroute@latest
Maaari mo rin itong i-install nang global:
npm install -g omniroute
omniroute
Pagpapatakbo
Simulan ang OmniRoute sa headless server mode:
omniroute
o:
npx omniroute
Makikita ang dashboard sa:
http://localhost:20128
Buksan ang URL na iyon sa Android browser. Kung nagpapatakbo ka ng mga client sa loob ng Termux, gamitin ang parehong host at port bilang OpenAI-compatible base URL.
Pagpapatakbo sa Background
Para sa isang simpleng proseso sa background:
nohup omniroute > omniroute.log 2>&1 &
Upang ihinto ito:
pkill -f omniroute
Para sa awtomatikong pagsisimula pagkatapos mag-boot ang device, i-install ang Termux:Boot add-on at gumawa ng boot script:
mkdir -p ~/.termux/boot
cat > ~/.termux/boot/omniroute.sh <<'EOF'
#!/data/data/com.termux/files/usr/bin/sh
cd "$HOME"
nohup omniroute > "$HOME/omniroute.log" 2>&1 &
EOF
chmod +x ~/.termux/boot/omniroute.sh
Maaaring ihinto ng Android battery optimization ang mga prosesong matagal na tumatakbo sa background. I-disable ang battery optimization para sa Termux kung inaasahang mananatiling online ang server.
Pag-access Mula sa Ibang Mga Device
Hanapin ang IP address ng telepono sa WiFi network:
ip addr show wlan0
Pagkatapos, buksan ang dashboard mula sa ibang device:
http://PHONE_IP:20128
Halimbawa:
http://192.168.1.50:20128
Panatilihin ang telepono at client sa parehong pinagkakatiwalaang network. Kung ilalantad mo ang OmniRoute sa labas ng telepono, i-enable ang mga API key at authentication ng dashboard.
Direktoryo ng Data
Bilang default, iniimbak ng OmniRoute ang data sa ilalim ng home directory ng Termux, alinsunod sa parehong gawi ng server-side data path na ginagamit sa Linux. Upang ilagay ang database sa isang tahasang lokasyon:
export DATA_DIR="$HOME/.omniroute"
omniroute
Mga Limitasyon
- Hindi tumatakbo ang Electron sa Termux.
- Walang system tray o desktop integration.
- Para lamang sa server ang setup na ito: gamitin ang browser dashboard.
- Maaaring kailanganin ng mga native dependency ang lokal na pag-compile.
- Maaaring kailanganin ng mga Android device na may kaunting memory ang mas kaunting sabay-sabay na request.
- Maaaring mangailangan ang mga feature ng MITM/system certificate ng pagbabago sa trust store sa antas ng Android sa labas ng Termux.
Pag-troubleshoot
Hindi sinusuportahang platform: android (bawat request ay nagbabalik ng HTTP 500)
Sintomas: Nagpi-print ang omniroute / omniroute serve ng ✔ OmniRoute is running!, ngunit ang bawat request sa dashboard o API ay nagbabalik ng simpleng 500 Internal Server Error. Nananatiling walang laman ang ~/.omniroute/logs/application/app.log, walang kapaki-pakinabang na napi-print ang APP_LOG_LEVEL=debug, at plain text (Internal Server Error) ang response body nang walang detalye sa JSON.
Sanhi: Iniuulat ng ilang Termux/Node build ang process.platform === "android". Hindi pinangangasiwaan ng getCacheDirectory() ng Next.js ang platform na iyon: kinakailangan nitong umiiral na ang ~/.cache (o isang generic na tmp directory), kung hindi ay mabibigo ito habang nilo-load ang instrumentation hook na may:
Error: An error occurred while loading instrumentation hook: Unsupported platform: android
Dahil hindi kailanman nalo-load ang hook, hindi kailanman nagsisimula ang logging — kaya tila ganap na imposibleng masuri ang 500. Ginagawa ng OmniRoute ang ~/.cache (at itinatakda ang XDG_CACHE_HOME kapag hindi pa ito nakatakda) sa CLI entrypoint bago magsimula ang Next.js upang magtagumpay ang probe na ito sa Android/Termux.
Sinusuportahang solusyon (walang pag-patch ng package):
mkdir -p ~/.cache
omniroute serve
Sa mga kasalukuyang build ng OmniRoute, awtomatikong ginagawa ito ng CLI sa Android/Termux — hindi dapat kailanganin ng bagong npx -y omniroute@latest / global install ang manu-manong hakbang. Kung nakikita mo pa rin ang error pagkatapos mag-upgrade, gawin ang ~/.cache nang isang beses gaya ng nasa itaas at i-restart.
Huwag i-patch ang dist/server.js upang piliting maging process.platform = "linux". Ang ganitong uri ng package patch ay nao-overwrite sa bawat muling pag-install/pag-upgrade at hindi na kailangan kapag umiiral na ang cache directory.
Mga Error sa Pag-build ng better-sqlite3
I-install ang build toolchain ng Termux:
pkg install nodejs python build-essential
Pagkatapos ay patakbuhin muli:
npx -y omniroute@latest
Ginagamit Na ang Port
Suriin kung ano ang nakikinig sa default na port:
ss -ltnp | grep 20128
Ihinto ang lumang proseso:
pkill -f omniroute
Hindi Ma-access ang Dashboard Mula sa Ibang Device
Tiyaking nasa parehong WiFi network ang dalawang device, pagkatapos ay subukan mula sa Termux:
curl http://localhost:20128
Kung gumagana ang lokal na access ngunit hindi ang LAN access, suriin ang Android hotspot/WiFi isolation at anumang firewall o VPN profile sa telepono.