Files
hisense-root/skills/payload-deploy.md
T
2026-10-27 15:56:27 +01:00

28 lines
1.3 KiB
Markdown

# Skill: Payload-Deploy (Dateien auf den TV)
Kein Package Manager (kein apt/opkg/…). Binaries/Skripte kommen als
**statische ARM-Binaries** (ARMv7, glibc 2.18, Kernel 3.18) auf den TV.
## Wege
| Weg | Für | Beispiel |
|---|---|---|
| `File.download` | Binär (byte-exakt) | `HiBrowser.File.download("http://<host>:9000/pub/x","x",1)` |
| `File.write` | Text (Skripte/JSON) | `HiBrowser.File.write("x.sh","id\n",1)` |
| Root-Loop | als root ausführen | `root_cmd.sh` → `root_out.txt` |
| SSH + base64 | Binär | `base64 -w0 x \| ssh root@TV 'base64 -d > /3rd_rw/bin/x'` |
| SSH + tar | viele Dateien | `tar czf - d \| ssh root@TV 'tar xzf - -C /3rd_rw'` |
| USB | Dateien auf ext4-Stick | `/mnt/usb/<dev>` |
| scp/sftp | nach SFTP-Install | `scp f root@TV:/3rd_rw/...` |
## Regeln
- rw-Partitionen: `/3rd_rw`, `/data`, `/perm`. Rootfs & `/3rd` sind squashfs-**ro** →
ro-Dateien via `mount --bind` aus `/3rd_rw` ersetzen (kein overlayfs).
- `File.download`-Ziel muss in der Whitelist liegen oder Symlink-Bypass nutzen
(siehe `fileapi-permissions.md`).
- Builds reproduzierbar: `../root/scripts/host/build_dropbear.sh`,
`build_sftp_server.sh`, `build_payload.sh`; Checks `sha256sum -c SHA256SUMS`.
Siehe: `../modding/06-toolchain-deploy.md`, `../modding/01-system-linux.md`.