A terminal emulator for the reMarkable Paper Pro with pixel-wise partial e-ink updates.
Built on alacritty_terminal (alacritty's headless core: VTE parsing, PTY, grid,
damage tracking) with a custom e-ink renderer speaking the qtfb shared-memory
framebuffer protocol, packaged as an AppLoad (xovi) app.
shell (bash/ash)
│ pty
▼
alacritty_terminal::Term ← full xterm/VTE state machine + damage tracking
│ damaged cells only
▼
renderer (embedded PSF2 bitmap font, no AA)
│ pixel writes
▼
qtfb shared-memory framebuffer ← UPDATE_PARTIAL(x, y, w, h) per damage rect
│ unix SEQPACKET /tmp/qtfb.sock
▼
AppLoad/xochitl compositor → e-ink panel (only touched pixels refresh)
Input (touch / on-screen keyboard / physical keyboards) arrives over the same qtfb channel; the OSK is drawn by us and partial-updated so typing never flashes the screen.
PaperTerm requires a reMarkable Paper Pro with remagic installed. Open the remagic Store on the tablet and tap PaperTerm, or install it from a computer:
remagic install papertermThe app is installed at /home/root/xovi/exthome/appload/paperterm/. Open it
from AppLoad. Run exit or use AppLoad's top-center close gesture to leave.
Install an aarch64 GNU cross-toolchain, then build and stage the AppLoad bundle:
cargo build --release --target aarch64-unknown-linux-gnu
./make-bundle.shThe device uses glibc 2.39. The staged app is written to dist/paperterm/ and
can be installed locally with remagic install ./dist/paperterm.
Part of remagic — tools to make your reMarkable Paper Pro magical: