Repository navigation
Releases: lazybrar/webos-terminal-emulator
Release list
v1.2.0: GPU-rendered terminal
The terminal now renders on the TV's GPU.
Install (on the TV, as root; needs the Homebrew Channel for the root exec service):
mkdir -p /media/developer/temp && cd /media/developer/temp
curl -sSfLO https://github.com/lazybrar/webos-terminal-emulator/releases/download/v1.2.0/org.tvwl.terminal_1.2.0_all.ipk
luna-send -i -f luna://com.webos.appInstallService/dev/install '{"id":"org.tvwl.terminal","ipkUrl":"/media/developer/temp/org.tvwl.terminal_1.2.0_all.ipk","subscribe":true}'Then open Terminal from the home screen. Verify the download against SHA256SUMS. Upgrades in place from 1.1.x.
What's new
- GPU renderer
wlterm-gl: GLES2 on the TV's PowerVR (glyph atlas + one quad per cell). 32-bit ARM, links the TV's own libraries. The CPU rendererwlterm2is still bundled. renderer = auto|gl|cpuin/media/developer/wlterm.conf.auto(default) uses the GPU build and falls back to the CPU one if it fails to start.- Faster floods on both renderers: the terminal now drains the shell's output for a few ms before redrawing (a 200,000-line scroll went from 3-6 s to about 1.5 s).
- Build tooling:
make gl-term,scripts/make-sysroot32.sh(checksum-pinned 32-bit glibc from Debian), fasterscripts/pull-sysroot.sh.
Measured on the TV (seq 1 200000): GPU ~1.47 s using ~1.0 s CPU; CPU renderer 1.4-2.5 s using 1.1-2.3 s CPU. The gain is lower, steadier CPU load, not a big wall-clock speedup.
Not yet verified on hardware: scrollback paging (Shift+PgUp/PgDn), full-screen apps such as vim/tmux/htop. Known gaps: no ligatures, no double-width (CJK) characters, no mouse or clipboard.
Modifies a TV's filesystem as root; use at your own risk (see README, Safety).
v1.1.0: self-contained ipk
First packaged release: a self-contained ipk for rooted LG webOS TVs (tested on webOS 7.5.8).
Install (on the TV, as root; needs the Homebrew Channel for the root exec service):
mkdir -p /media/developer/temp && cd /media/developer/temp
curl -sSfLO https://github.com/lazybrar/webos-terminal-emulator/releases/download/v1.1.0/org.tvwl.terminal_1.1.0_all.ipk
luna-send -i -f luna://com.webos.appInstallService/dev/install '{"id":"org.tvwl.terminal","ipkUrl":"/media/developer/temp/org.tvwl.terminal_1.1.0_all.ipk","subscribe":true}'Then open Terminal from the home screen. Verify the download against SHA256SUMS.
What's new
- The ipk now bundles
wlterm2(64-bit static) and its launcher; nothing to copy by hand. Fira Code is downloaded on first start (falls back to the TV's DroidSansMono offline). - Settings file
/media/developer/wlterm.conf: shell, home, start directory, PATH, font, size, env. Command-line flags override it. Default home is now/media/developer/home. - Fixed: clicking the icon while the terminal was running dropped to the home screen. It now restarts the terminal.
- Docs: getting fish, writing Wayland apps for webOS, GPU and system notes.
Known gaps: no ligatures, no double-width (CJK) characters, no mouse or clipboard. Scrollback, alternate-screen apps (vim/tmux/htop) are implemented but not yet verified on hardware.
Modifies a TV's filesystem as root; use at your own risk (see README, Safety).