Use an Android tablet as a wireless extended monitor for your Linux desktop.
The tablet shows up as a real second screen. Drag windows onto it and use it with touch, a pen, a mouse or a keyboard; the computer's sound can play on it too. No cable needed.
Status: early releases. Streaming, input, sound and pairing work and are tested on real desktops; see docs/status.md for known issues.
| Desktop | How | Tested |
|---|---|---|
| GNOME 46+ | ScreenCast + RemoteDesktop portals, libei input | by hand on real hardware (Fedora 44, GNOME 50) |
| KDE Plasma 6.1+ | same portals; KDE's fixed-size screen is fitted with bars | automatically, headless KWin 6.7 |
| Sway | headless output, screencopy, virtual pointer and keyboard | automatically, on every push (Sway 1.11) |
| Hyprland | same as Sway | automatically, headless Hyprland 0.57 |
X11 is not supported. On Sway and Hyprland, touch drives the pointer (wlroots has no virtual touch device). tests/desktops runs each desktop in a container.
From Releases:
-
Tablet (Android 11+):
tabextend-<version>.apk. -
Computer, any distribution (GNOME, KDE): the Flatpak,
tabextend-<version>.flatpak:flatpak install --user tabextend-<version>.flatpak flatpak run io.github.st3inberg.TabExtend
-
Computer, native (also Sway and Hyprland): the
tabextend-app-<version>-linux-x86_64.tar.gzarchive withinstall.sh.
Step by step: Install a release.
Or build from source:
git clone https://github.com/St3inberg/TabExtend.git
cd TabExtend
cargo build --release
./target/release/tabextend doctor # check this computer
./target/release/tabextend-app # the desktop appThe setup tutorial covers GStreamer and video drivers on Fedora, Ubuntu and Arch.
- The desktop creates a virtual monitor for the tablet: through the ScreenCast portal on GNOME and KDE, as a headless output on Sway and Hyprland.
- TabExtend captures it and encodes it with your GPU's H.264 encoder, picked at runtime from whatever works on your machine (Intel, AMD, NVIDIA, or software as a fallback).
- The stream goes to the tablet over Wi-Fi, encrypted.
- Touch, pen, mouse and keyboard input come back and are injected into the virtual monitor only.
TabExtend is free and open source, made in spare time. If it is useful to you, you can buy me a coffee to keep it going. Thank you!
- How it works: diagrams of the whole program and its algorithms
- Status: what works, what does not and why
- Setup tutorial: install, build and check your machine
- Development guide: code layout, tests, tablet debugging
- Product requirements: goals, requirements, roadmap
- M0 spike notes: measurements on the reference hardware
- Video pipeline: how frames get to the tablet fast, and why
- Security design: threat model and controls; report issues via SECURITY.md
- Contributing
TabExtend is free software under the GNU General Public License v3.0 or later.